在Soap Response中自定义/删除名称空间 - JAX-WS

时间:2015-05-26 18:19:16

标签: java web-services weblogic jax-ws jax-ws-customization

我们使用JAX-WS实现了一个Web服务,我们希望从Web服务响应中完全删除名称空间前缀。 仅供参考,这是在Oracle WebLogic Server上运行的。我想更改生成的Webservice响应。我不确定我们是否有权编辑提供的XSLT。

我们是否可以通过任何方式强制执行以下响应,而不是使用任何命名空间值作为前缀(例如: - S,ns2)。 类似于: - 在Web Services Handler中实现handleResponse(MessageContext messageContext)方法,然后删除命名空间并将没有命名空间的新Message设置为MessageContext。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> 
<S:Body> 
    <ns2:HelloWorld xmlns:ns2="http://abc.xxx.com/pqr/Helloworld" xmlns="http://abc.xxx.com/commonheader/v"> 
        <WSResponseHeader> 
            <WSContext> 
                <WSNameValue> 
                    <Name>APP Name</Name> 
                    <Value>ABCD</Value> 
                </WSNameValue> 
            </WSContext> 
            <WSMessageData> 
                <Timestamp>2015-05-26T11:10:16.875</Timestamp> 
            </WSMessageData> 
        </WSResponseHeader> 
        <ns2:ResponseHeader> 
            <ns2:RequestID>TEST12</ns2:RequestID> 
            <ns2:ResponseStatus>SUCCESS</ns2:ResponseStatus> 
        </ns2:ResponseHeader> 
        <ns2:HelloResponse> 
            <ns2:HelloAddressList numberOfCandidate="1"> 
                <ns2:HelloAddress> 
                    <ns2:Address countryCode="COUNTRY"> 
                        <ns2:StreetAddress> 
                            <ns2:Street>0000 Street Name</ns2:Street> 
                        </ns2:StreetAddress> 
                        <ns2:City>CITY</ns2:City> 
                        <ns2:State>STATE</ns2:State> 
                        <ns2:PostalCode>ZIP</ns2:PostalCode> 
                    </ns2:Address> 
                    <ns2:Services> 
                        <ns2:Code>HK</ns2:Code> 
                        <ns2:Description>House Keeping</ns2:Description> 
                        <ns2:Available>Y</ns2:Available> 
                    </ns2:Services> 
                </ns2:HelloAddress> 
            </ns2:HelloAddressList> 
        </ns2:HelloResponse> 
    </ns2:HelloWorld> 
</S:Body> 

0 个答案:

没有答案