草庐IT

JAXB_FORMATTED_OUTPUT

全部标签

java - JAXB XML输出格式问题

我有具有以下结构的Java类(类名没有任何暗示,我只是编造它们)。packagetest;importjava.util.ArrayList;importjava.util.List;importjavax.xml.bind.JAXBContext;importjavax.xml.bind.JAXBException;importjavax.xml.bind.Marshaller;importjavax.xml.bind.annotation.XmlAccessType;importjavax.xml.bind.annotation.XmlAccessorType;importjava

java - 在 Java 中生成 JAXB 类时添加 toString、hashCode、equals

我正在尝试使用Java以编程方式从XSD文件生成JAXB类。我使用以下代码片段来实现这一点:....importjava.io.File;importjava.io.IOException;importorg.xml.sax.InputSource;importcom.sun.codemodel.JCodeModel;importcom.sun.tools.xjc.api.S2JJAXBModel;importcom.sun.tools.xjc.api.SchemaCompiler;importcom.sun.tools.xjc.api.XJC;........publicstatic

Java JAXB 的优点/缺点和文档

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭4年前。Improvethisquestion我已经有一段时间没有使用Java了,所以如果这很愚蠢,请原谅我。我刚刚开始一个Java项目,我们在该项目中使用JAXB对传入的XML字符串(来自Jetty服务器)进行反序列化。该项目仅针对这种情况使用JAXB。JAXB的替代品有哪些?JAXB相对于这些替代方案的优缺点是什么我进行了一些谷歌搜索并找到了很多引用资料,但是是否有一个明确的来源可以作为JAXB问题的转到位置

java - JAXB 列表标签创建内部类

所以我们有一个XSD类型的形式:表示XML:xjc产生几乎正确的结果。唯一烦人的是,“Bars”被创建为一个内部类,它存储一个Bars列表。有没有办法让Bars成为Foo中的一个列表,同时仍然保留上面的XML? 最佳答案 当您将Bars定义为复杂类型时,Bars将生成为单独的类。像这样我发现模式也更容易阅读。除非您将maxOccurs更改为大于1的值,否则条形图不会在Foo中列出-您不能在xs:all上执行此操作,但可以使用xs:sequence。......运行xjc后:Foo.java:...@XmlAccessorType(X

java - JAXB 对象 - 哈希码和等于

我们有一个完全基于JAXB序列化的巨大Java应用程序。中间件服务器执行所有数据库访问并发送JAXB对象中的所有数据对象并序列化为XML并将数据发送到UI(C#.Net)。大多数时候,在数据从数据库访问填充到JAXBjava对象后,我将不得不进行一些处理,例如“根据属性对对象集合进行排序”,找到平均值,对列表进行一些计算集合中的对象等。我的主要问题是,JAXB对象没有equals和hashcode。所以我正在做的是将所有数据移动到一些用户定义的数据对象,我在其中定义了哈希码、等于、compareTo,这样我就可以在集合中执行所有操作,然后复制到JAXB对象。我认为这是额外的开销。问题:

maven - 使用 Maven 包含 JAXB

在我的1.6.0_16JDK上工作,我使用ApacheCXF2.5.2从WSDL生成了我的stub类,它使用最新的jaxb-api2.2。我知道可以让它使用jaxb-api2.1,但为了避免兼容性问题,我宁愿让它使用当前版本。由于我的JDK具有jaxb2.1,构建失败并显示以下消息:errorat@XmlElementRef(name="protocol",namespace="urn:ch.beo.emc",type=JAXBElement.class,required=false)因此,我尝试使用以下依赖项使maven包含最新的jaxbapi和impl。javax.xml.bind

java - 为什么 ConsoleAppender 抛出 "no output stream or file set for the appender named [null]"?

我在使用log4jConsoleAppender时遇到问题:如果我这样初始化它:ConsoleAppenderca=newConsoleAppender();ca.setLayout(newPatternLayout(PatternLayout.TTCC_CONVERSION_PATTERN));它给出错误并中断日志记录。错误输出:log4j:ERRORNooutputstreamorfilesetfortheappendernamed[null].如果我这样初始化它,它工作正常:ConsoleAppenderca=newConsoleAppender(newPatternLayout

java - JAXB 编码 Java 以输出 XML 文件

问题是如何生成XML文件输出而不是system.out?packagejaxbintroduction;importjava.io.FileOutputStream;importjava.io.OutputStream;publicclassMain{/***@paramargsthecommandlinearguments*/publicstaticvoidmain(String[]args){//TODOcodeapplicationlogichereitemorder.BookquickXML=newitemorder.Book();quickXML.setAuthor("Sil

java - 将 JAXB 生成的类用于需要具有模式的整数的元素

我的XML架构中有一个元素定义如下:NumberCodeValueType在哪里:也就是说,我的号码可以以前导0开头。我无法修改此架构。我正在使用JAXB生成我的Java类。不幸的是,Code元素的访问器采用整数列表作为参数,这意味着所有前导0都被剥离(因为据我所知,在Java中没有办法保持前导0时使用整数类型)!有什么办法可以解决这个问题吗?感谢您的帮助! 最佳答案 您可以执行以下操作:数字格式器您可以通过编写自己的格式化程序来做到这一点:packageforum7182533;publicclassNumberFormatter

java - XML 序列的 JAXB 处理

我正在尝试使用Java7中附带的JAXB实现来处理一些XML文件。我正在使用这些版本:501~%xjc-versionxjc2.2.4502~%java-versionjavaversion"1.7.0_01"Java(TM)SERuntimeEnvironment(build1.7.0_01-b08)JavaHotSpot(TM)ServerVM(build21.1-b02,mixedmode)XML模式中有问题的声明如下:如您所见,在类型中有两次显式出现se:Value。但是,它不会停止使用xjc进行编译。如果我看一下为此类型生成的Java类,我可以看到理论上可以检索的元素使用以下