Java 仅在CXF web服务消息中发送所需的名称空间
我正在将CXF用于web服务服务器。Java 仅在CXF web服务消息中发送所需的名称空间,java,web-services,cxf,Java,Web Services,Cxf,我正在将CXF用于web服务服务器。 我在服务器上有大量名称空间。 每次处理请求时,都会将所有服务器的名称空间转储到soap应答中,而不是只放入应答中使用的相关名称空间,即使应答数据中不需要这些名称空间。 例如: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns61:Response xmlns:ns125="http://www.exa
我在服务器上有大量名称空间。
每次处理请求时,都会将所有服务器的名称空间转储到soap应答中,而不是只放入应答中使用的相关名称空间,即使应答数据中不需要这些名称空间。 例如:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns61:Response
xmlns:ns125="http://www.example.com/example125/Example125"
xmlns:ns124="http://www.example.com/example124/Example124"
xmlns:ns123="http://www.example.com/example123/Example123"
xmlns:ns122="http://www.example.com/example122/Example122"
xmlns:ns121="http://www.example.com/example121/Example121"
...
xmlns:ns1="http://www.example.com/example1/Example1"
由于CXF使用JAXB进行XML序列化,并且根据上面链接中的信息,似乎没有一种简单的方法可以在不编写代价高昂的拦截器的情况下完成这项工作,拦截器需要读取整个文档并删除冗余的名称空间