首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JIBX中的绑定

JIBX中的绑定
EN

Stack Overflow用户
提问于 2012-05-06 11:03:42
回答 2查看 8.9K关注 0票数 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.xsd中的命令生成了JAVA文件

因此,在D:\Libraries\jibx\dwcode2\gen\src\org\jibx\中生成了JAVA文件

生成的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

代码语言:javascript
复制
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)

有人能告诉我我哪里做错了吗?我如何解决这个问题?为什么我们要绑定??

EN

回答 2

Stack Overflow用户

发布于 2012-05-07 05:24:35

拉杰什

使用JiBX代码生成器时,需要执行三个步骤:

  1. 使用代码生成器从XML schema生成java代码和绑定文件
  2. 编译您的java代码
  3. 使用绑定编译器修改您的java类文件,以便它们可以生成XML schema。

我看不到您的模式,所以您为什么不做个测试,看看是您的模式还是您的命令在空目录中lines:

  • Place您的模式,然后运行这些命令。

代码语言:javascript
复制
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插件。配置要容易得多。

我希望这能帮到你。

完成

票数 3
EN

Stack Overflow用户

发布于 2013-09-11 16:43:09

您可能在build.xml上有一个错误。您的类路径位置正确吗?打开buid.xml,进入第一行所在的场地。看看这条线下面。

如果是"bin",则必须在"bin“中包含binding.xml和包含.class文件的包。如果它位于bin/classes或其他路径中,则会出现此错误,因为它将找不到类,因此请将build.xml更改为编写bin/ binding.xml。

如果使用eclipse,则必须生成类、编译、刷新,然后执行绑定选项,否则将出现此错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10467779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档