需要在运行时为XML解组构造java实体

时间:2012-04-19 13:21:24

标签: java xml web-services maven jaxb

条件:简单的Web服务从某个Java客户端接收带有某个实体的XML文件。

任务:使用没有实体类的JAXB来管理这个XML:应该在客户端的编译时加载类。

示例:

marshaller.marshall(new Shape(), someShape.xml);

客户端应用包中没有类“Shape”。它应该在编译时加载。

如何执行上传?项目在Maven下。

1 个答案:

答案 0 :(得分:2)

如果你正在使用maven,请查看maven-jaxb2-plugin。

Documentation here.

您只需将这样的内容添加到您的pom中:

        <plugin>
            <groupId>org.jvnet.jaxb2.maven2</groupId>
            <artifactId>maven-jaxb2-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <generatePackage>com.psed.project.entities</generatePackage>
            </configuration>
            <version>0.8.1</version>
        </plugin>

这将在编译时生成模式文件中的所有实体。