使用axis2和java2wdsl在所有节点中重复命名空间

使用axis2和java2wdsl在所有节点中重复命名空间,java,web-services,axis2,wsdl2java,Java,Web Services,Axis2,Wsdl2java,我正在使用eclipse和axis2 1.4.1方面来生成Web服务。 我的问题是,在生成过程中,名称空间在所有节点中重复。正如您在下面看到的,ns4是重复的,而不是在中声明的 NewOperationResponse节点 如何使java2wdsl(或eclipse)自动生成(仅在父节点或顶级节点中)? 我是否必须更改wsdl或xsd上的任何内容 谢谢 WS-Response 0 0 12 WSDL simple.xsd 在wsdl模式声明中,切换到使用elementFormDefa

我正在使用eclipse和axis2 1.4.1方面来生成Web服务。 我的问题是,在生成过程中,名称空间在所有节点中重复。正如您在下面看到的,ns4是重复的,而不是在中声明的 NewOperationResponse节点

如何使java2wdsl(或eclipse)自动生成(仅在父节点或顶级节点中)? 我是否必须更改wsdl或xsd上的任何内容

谢谢

WS-Response

0
0
12
WSDL


simple.xsd
在wsdl模式声明中,切换到使用
elementFormDefault=“uqualified”
而不是使用elementFormDefault=“qualified”

添加

<schema elementFormDefaultQualified="false"/> 

里面

<service>

在您的services.xml中

至少这对我是有效的,正如您从SOAP响应中看到的:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><ns:getTelalertByEscalationResponse xmlns:ns="http://ofrick.com"><return xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax237:TelalertEntry"><alertDefName xsi:nil="true" /><alertId>1234</alertId><client>cwp1088</client><timeStamp>201405202254</timeStamp><tts>and this is a test tts</tts></return></ns:getTelalertByEscalationResponse></soapenv:Body></soapenv:Envelope>
1234CWP1088201405202254这是一个测试tts

谢谢你的回答。不幸的是,这并不能解决问题。所需的响应需要使用上面的xmlns:ns4=“”,而不是在每个元素中。有什么建议吗?示例:0 0 12
<schema elementFormDefaultQualified="false"/> 
<service>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><ns:getTelalertByEscalationResponse xmlns:ns="http://ofrick.com"><return xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ax237:TelalertEntry"><alertDefName xsi:nil="true" /><alertId>1234</alertId><client>cwp1088</client><timeStamp>201405202254</timeStamp><tts>and this is a test tts</tts></return></ns:getTelalertByEscalationResponse></soapenv:Body></soapenv:Envelope>