禁用JAXB NameSpace ns1

时间:2014-12-20 16:23:46

标签: java xml jaxb namespaces

我已经公开了一个网络服务并在接收来自客户端的请求并在没有代码更改的情况下发送到另一个网络服务时低于输出。源系统不接受子级别命名空间,它只接受父级别。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Travel111 xmlns="http://travel" xmlns:ns2="http://mycompany/train" xmlns:ns3="http://mycompany/passenger">
    <train>
        <ns2:Passengers>
            <ns2:Passenger>
                <ns3:TicketNumber>10000</ns3:TicketNumber>
            </ns2:Passenger>
            <ns2:Passenger>
                <ns3:TicketNumber>20000</ns3:TicketNumber>
            </ns2:Passenger>
        </ns2:Passengers>
    </train>
</Travel111>

我不想要像ns2,ns3这样的Namespace属性。我想要低于输出。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Travel111 xmlns="http://travel">
    <train xmlns="http://mycompany/train">
        <Passengers xmlns="http://mycompany/passenger" >
            <Passenger>
                <TicketNumber>10000<TicketNumber>
            </Passenger>
            <Passenger>
                <TicketNumber>20000</TicketNumber>
            </Passenger>
        </Passengers>
    </train>
</Travel111>

我必须在packe-info.java中更改以获得以上输出。

默认情况下,我没有做marshelling,它是在收到请求时由spring Web服务完成的。 提前谢谢

0 个答案:

没有答案