本篇介绍下JAXB进阶使用,命名空间处理使用package-info.java添加默认命名空间在需要添加命名空间的包下面添加package-info.java文件,然后添加@XmlSchema注解,这样整个包序列化时就都会自动加上命名空间了@XmlSchema(namespace = "http://www.lzrabbit.cn")
package cn.lzrabbit;import javax.xml.bind.annotation.XmlSchema; 命名空间前缀处理相信大名鼎鼎的ns2,nsXX让很多人非常头疼类似下面这样的<?xml version="1.0" encodi...
Java JAXB示例 在本文中,我们将向您展示如何使用JAXB API在Java对象与XML之间进行转换。 JAXB 用于XML绑定的Java体系结构(JAXB)提供了一种快速便捷的方法来绑定XML模式和Java表示,从而使Java开发人员可以轻松地将XML数据和处理功能合并到Java应用程序中。作为此过程的一部分,JAXB提供了以下方法:将XML实例文档解组(读取)到Java内容树中,然后将Java内容树编组(写入)到XML实例文档中。JAXB还提供了一种从Java对象生成XML模...
目录
将 XML 文件(以.xml结尾)转化为 Schema 文件(以.xsd结尾)
将 Schema 转换为 Java bean
XML和Java Bean之间的转换
Testing 将 XML 文件(以.xml结尾)转化为 Schema 文件(以.xsd结尾)
下载 Trang.jar
java -jar trang.jar sample.xml sample.xsd
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceRequest xmlns="http://com.csdn.uc"><ucAmount>100</ucAmount><ucCurrency>CNY</ucCurrency>
</Servi...
我正在使用JAXB2在Spring-WS中执行OXM.我指定的XSD需要在肥皂消息上附加一个较大的XML文件,因此我正在使用MTOM传输文件,并在JAXB2Marshaller上启用了MTOM.
当JAXB2封送一个具有预期的mime类型的text / xml的MTOM附件时,它将将该元素作为javax.xml.transform.Source对象传递.经过一些搜索,我能够找到如何将Source对象发送到文件中.final Source source = request.getSource();
StreamSource streamSource = (StreamSource) source;
...
我正在开发一个公开JAX-WS Web服务的Spring应用程序. Web服务实现依赖于我的服务层中某些受弹簧管理的对象,看起来像这样@WebService
public class BlahService {...public void setFooService(FooService f) {...}
}其中FooService在应用程序上下文中定义,并在Webapp启动期间注入到BlahService中. FooService本身依赖于在应用程序上下文中再次定义并在启动时注入的BarService,因此上述BlahService可传递地依赖于BarService.
他棘手...
嗨,我有xsd模式与base64Binary.当这个插件产生时,这个元素看起来像@XmlElement(name = "element")protected byte[] element;但是我怎么能告诉这个插件使用@XmlJavaTypeAdapter(HexBinaryAdapter.class)所以我需要这样的东西@XmlJavaTypeAdapter(HexBinaryAdapter.class)@XmlElement(name = "element")protected byte[] element;我希望这可能会有所帮助
PS:我无法修改这些插件生成的类,因为它们总是被重写解决方法:您应该创建一个J...
使用JAXB,我们直接生成Java Bean.在XSD中,我们有一个枚举类型(例如):<xs:simpleType name="ColorType"><xs:restriction base="xs:string"><xs:enumeration value="Red"/><xs:enumeration value="Blue"/><xs:enumeration value="Green"/>
</xs:restriction> </xs:simpleType>在数据库中,我们可能有红色,黑色和绿色的标志,例如R,B和G.从某种意义上说,我们的标志只有一个字母词.我想枚举,例如… ColorType.Red.toString()等于R …或类...
是否可以将现有的xml模式映射到现有的java类?
我有几种xml模式,我需要将它们全部映射到一个java类. Xml文件在存储数据的方式上有些不同.例如.public class DataStorage {public String data1;public String data2;public String data3;
}和一组不同的xml文件<?xml ...?>
<dataCase1>
<data1>...</data1>
<data2>...</data2>
<data3>...</data3>
</dataCase1><?xml ...?>
<dataCase2>
<data data1="..." data2="..." data3="..." /...
我有一个JAXB模式,其中一个类包含另一个类的列表.该架构如下所示.
但是,每当我从该模式创建Java类时,该方法就不会使用泛型,因此我必须像Java 5之前一样使用强制类型转换.<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"xmlns:common="glodas.research"><xs:import namespace="glodas.research" schemaLocation="../common.xsd" /><!-- Dashboard Level --> <xs:complexType n...
我必须处理一些“难看的” XML片段,并希望使用JAXB来节省一些时间.
假设我的文档结构如下:<root a="1" b="2" c="3">
<header a="1" b="2" c="3">
<info/>
<more info/>
</header>
<body>lots of nested elements in here</body>
</root>我想处理来自根元素和子元素的几个属性,并将它们带入具有不同结构的新文档中.问题是:我需要在新文档中保持正文内容不变.
是否有任何方式(在解组/编组时)“按原样”获取元素的内容?解决方法:可...
我正在尝试从第三方URL解析xml流.在我的控制台中看起来像.
`<?xml version="1.0" encoding="utf-8"?><ArrayOfString xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/"><string>CMSDocs</string><string>CRMIncomingDocs</string><string>CRMOutgoingDocs</string><string>Customized Reports</string><string>scripts</string><string>Site Asse...
假设我已经在Eclipse中创建了JAXB类. (使用@ XmlRootElement,@ XmlAttribute等)
有没有一个插件可以从我的JAXB注释类生成示例XML预览?解决方法:有XML编辑器,可以从XSD创建示例XML,例如,我们使用Altova XMLSpy.
我正在尝试使用JAXB输出以下XML:<ScreenData step="1" description="My descriotion"><element name="name1" type="type1" value="value1"/><element name="name2" type="type2" value="value2"/>
</ScreenData>为此,我使用以下代码:screenData.getElement().add(element);element.setName("name1");element.setType("type1");element.setValueAttribute("value1");screenData.getElement().add(element);element.setName("name2...
我有一个Web服务,通??过编写其WSDL并在XSD底下进行定义,并且Java服务器代码类/ java绑定是使用JAXB / xjc生成的.
一切看起来都很好,服务可以正常运行…但是对于每个请求(在查看日志输出时在接收后看起来格式正确)在通过我的Java代码访问时,嵌套元素似乎始终为null.
有人可以弄清楚为什么customerId.getCustomer()总是返回null吗?
我的XSD(部分):<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns:tip="http://example.org/t...
我要序列化的数据包含xml 1.0版中不允许的字符:<value>this is not good for 1.0</value>当RESTEasy通过JAXB序列化它时,它会产生以下结果:<?xml version="1.0" encoding="UTF-8"?>
<value>this is not good for 1.0</value>如果我将xml版本设置为1.1,那么哪个XML解析器将不会解析为1.0不允许该字符,所以解析器很高兴.
我可以通过以下方式做到这一点:transformer.setOutputProperty(OutputKeys.VERSION, "1.1");因此,我想知道的...