在Java编组和解组中可以创建多少XML树(父子)

时间:2015-08-04 12:08:48

标签: java xml jax-rs marshalling unmarshalling

我想使用java编组和解组来创建XML文件。如何开发Java类获取以下类型XML。

<?xml version="1.0" encoding="UTF-8"?> 
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xsi:schemaLocation="http://www.w3.org/2001/vxml 
 http://www.w3.org/TR/voicexml20/vxml.xsd">
  <form>
    <grammar src="cityandstate.grxml" type="application/srgs+xml"/>
    <block>
      <prompt bargein="false">
        <audio src="http://localhost.com/obl.wav"/>
      </prompt>
    </block>
  </from>
</vxml>

我想在Jax-Rs Web服务中使用Hibernate,Spring和Maven这样的XML。这个类想要运行Jax-Rx Web服务。

1 个答案:

答案 0 :(得分:1)

由于您有可用的XSD,您可以使用JAXB2 Maven Plugin为您生成适当的类型。

您可以通过在pom.xml中添加以下内容来实现:

<project ...>
...
<build>
    <plugins>
        <plugin>
            <groupId>org.jvnet.jaxb2.maven2</groupId>
            <artifactId>maven-jaxb2-plugin</artifactId>
            <version>0.12.3</version>
            <executions>
                <execution>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
...

它将尝试在src/main/resources中找到您的XSD文件和可选的绑定配置。如果您的XSD引用其他XSD文件(如问题中所述),则这些引用的文件也需要存在于同一目录中。