0
我使用SOAPUI並使用JAX-WS導入生成java類。SOAPBinding.ParameterStyle.BARE vs SOAPBinding.ParameterStyle.WRAPPED:根據請求生成的參數較少
我有這樣
@WebService(name = "test", targetNamespace = "http://lang.java")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
@XmlSeeAlso({
ObjectFactory.class
})
public interface Test{
@WebMethod(action = "https://...action")
@WebResult(name = "getBean", targetNamespace = "http://...getBean", partName = "getBean")
public Bean test(
@WebParam(name = "parameter1", targetNamespace = "http://lang.java", partName = "parameter1")
String parameter1,
@WebParam(name = "parameter2", targetNamespace = "http://lang.java", partName = "parameter2")
String parameter2,
@WebParam(name = "parameter3", targetNamespace = "http://lang.java", partName = "parameter3")
String parameter3,
@WebParam(name = "parameter4", targetNamespace = "http://lang.java", partName = "parameter4")
long parameter4);
}
接口如果我使用SOAPBinding.ParameterStyle.WRAPPED產生的身體信息是
<S:Body>
<ns2:test xmlns:ns2="http://lang.java" xmlns:ns3="http://...getBean">
<ns2:parameter1>1</ns2:parameter1>
<ns2:parameter2>2</ns2:parameter2>
<ns2:parameter3>a</ns2:parameter3>
<ns2:parameter4>1</ns2:parameter4>
</ns2:test>
</S:Body>
如果我使用SOAPBinding.ParameterStyle.BARE產生的身體信息是
<S:Body>
<ns2:parameter1 xmlns:ns2="http://lang.java" xmlns:ns3="http://...getBean">1</ns2:parameter1>
</S:Body>
爲什麼不同?爲什麼在Bare選項中它只生成第一個參數?我需要裸選項創建所有參數