0

こんにちは、JIBX を使い始めたばかりで、バインディングの概念を理解するのに苦労しています。Windowsを使用しているXSDファイルからJAVAクラスを生成しました。これが私のフォルダーの構造です

d:\Libraries\ このフォルダにはダウンロードされた jibx フォルダが含まれているため、jibx-tools.jar などの rar ライブラリは d:\Libraries\jibx\lib..... にあります。

Libraries フォルダには dwcode2 というフォルダも含まれています。 D:\Libraries\jibx\dwcode2\ に starter.xsd という XSD ファイルがあります。

DOS D:\Libraries\jibx\dwcode2>java -cp ..\lib\jibx-tools.jar org.jibx.schema.codegen.CodeGen -t gen\src -w starter のコマンドを使用して JAVA ファイルを生成しました。 xsd

その結果、JAVA ファイルが D:\Libraries\jibx\dwcode2\gen\src\org\jibx\ に生成されました

binding.xml は D:\Libraries\jibx\dwcode2\gen\src に生成されました

今、私はファイルをコンパイルしてバインドしたいです(XMLをコンパイルしてバインドする必要がある理由を誰か教えてもらえますか)それで、次のようにしました D:\Libraries\jibx\dwcode2\gen\src>java -jar "D: \Java Libraries"\jibx\lib\jibx-bind.jar binding.xml

Error: Unable to find type org.jibx.starter.Shipping; on format element at (line 3, col 66, in binding.xml)Error: Cannot find information for class org.jibx.starter.Item; on mapping element at (line 4, col 79, in binding.xml)Error: Cannot find information for class org.jibx.starter.Address; on mapping element at (line 9, col 85, in binding.xml) Error: Cannot find information for class org.jibx.starter.Customer; on mapping element at (line 17, col 87, in binding.xml)Error: Cannot find information for class org.jibx.starter.Order; on mapping element at (line 22, col 81, in binding.xml) Error: Cannot find information for class org.jibx.starter.Order; on mapping element at (line 35, col 56, in binding.xml) Error running binding compiler org.jibx.runtime.JiBXException: Binding binding.xml is unusable because of validation errors at org.jibx.binding.Utility.loadBinding(Utility.java:358)   at org.jibx.binding.Utility.loadFileBinding(Utility.java:420)
                    at org.jibx.binding.Compile.compile(Compile.java:217)
                    at org.jibx.binding.Compile.main(Compile.java:384)

誰が私が間違っているのか教えてください?? この問題を解決するにはどうすればよいですか? そして、なぜバインドする必要があるのですか??

4

2 に答える 2

3

ラジェッシュ、

JiBX コード ジェネレーターを使用する場合、次の 3 つの手順を実行する必要があります。
1. コード ジェネレーターを使用して XML スキーマから Java コードとバインディング ファイルを生成する
2. Java コードをコンパイルする
3. バインディング コンパイラを使用して Java クラス ファイルを変更するXML スキーマを生成できるようにします。
スキーマが表示されないので、テストを行って、問題がスキーマにあるのかコマンド ラインにあるのかを確認してください。
- スキーマを空のディレクトリに配置して、これらのコマンドを実行します。

java -cp ../lib/jibx-tools.jar org.jibx.schema.codegen.CodeGen starter.xsd
javac -cp ../lib/jibx-run.jar:. org/jibx/starter/Shipping.java
java -cp ../lib/jibx-bind.jar:. org.jibx.binding.Compile binding.xml

もちろん、lib ディレクトリへのパスを自分のパス (つまり、c:\Library) に置き換えます。

これが機能する場合は、プロジェクトをフォルダーに整理できます。

www.jibx.orgのサイトで完全なドキュメントを見つけることができます。

生活を本当に簡素化するには、maven プラグインを使用することをお勧めします。構成ははるかに簡単です。

これが役立つことを願っています。

ドン

于 2012-05-06T21:24:35.417 に答える