java 如何在 SOAP Web 服务中添加多个参数
How to add Multiple Arguments In SOAP Webservice in java
Web 服务方法示例
public String getMsg(String arg1,String arg2)
{
System.out.println("arg1--->"+arg1);
System.out.println("arg2--->"+arg2);
return "response";
}
客户代码
private static SOAPMessage createSOAPRequest() throws Exception
{
System.out.println("createSOAPRequest---->");
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage soapMessage = messageFactory.createMessage();
SOAPPart soapPart = soapMessage.getSOAPPart();
String serverURI = "http://webservice.jaipal.econnectsolution.com";
// SOAP Envelope
SOAPEnvelope envelope = soapPart.getEnvelope();
envelope.addNamespaceDeclaration("MineralWebService", serverURI);
//SOAP Body
SOAPBody soapBody = envelope.getBody();
System.out.println("soapBody----->"+soapBody);
SOAPElement soapBodyElem = soapBody.addChildElement("getMsg", "MineralWebService",serverURI);
SOAPElement value = soapBodyElem.addChildElement("getMsg","MineralWebService");
value.setTextContent("Arguments One");
MimeHeaders headers = soapMessage.getMimeHeaders();
headers.addHeader("SOAPAction", serverURI + "add");
System.out.println("headers----->"+headers.toString());
soapMessage.saveChanges();
/* Print the request message */
System.out.print("Request SOAP Message = ");
soapMessage.writeTo(System.out);
System.out.println();
return soapMessage;
}
我想添加 wwo 参数来调用我的网络服务方法。使用上面的代码,我只能发送一个参数。
请帮我实现这个。
您是否尝试过 creating/adding 新元素,就像您为第一个参数所做的那样?
SOAPElement soapBodyElem2 = soapBody.addChildElement("getMsg", "MineralWebService",serverURI);
SOAPElement value2 = soapBodyElem2.addChildElement("getMsg","MineralWebService");
value2.setTextContent("Arguments Two");
Web 服务方法示例
public String getMsg(String arg1,String arg2)
{
System.out.println("arg1--->"+arg1);
System.out.println("arg2--->"+arg2);
return "response";
}
客户代码
private static SOAPMessage createSOAPRequest() throws Exception
{
System.out.println("createSOAPRequest---->");
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage soapMessage = messageFactory.createMessage();
SOAPPart soapPart = soapMessage.getSOAPPart();
String serverURI = "http://webservice.jaipal.econnectsolution.com";
// SOAP Envelope
SOAPEnvelope envelope = soapPart.getEnvelope();
envelope.addNamespaceDeclaration("MineralWebService", serverURI);
//SOAP Body
SOAPBody soapBody = envelope.getBody();
System.out.println("soapBody----->"+soapBody);
SOAPElement soapBodyElem = soapBody.addChildElement("getMsg", "MineralWebService",serverURI);
SOAPElement value = soapBodyElem.addChildElement("getMsg","MineralWebService");
value.setTextContent("Arguments One");
MimeHeaders headers = soapMessage.getMimeHeaders();
headers.addHeader("SOAPAction", serverURI + "add");
System.out.println("headers----->"+headers.toString());
soapMessage.saveChanges();
/* Print the request message */
System.out.print("Request SOAP Message = ");
soapMessage.writeTo(System.out);
System.out.println();
return soapMessage;
}
我想添加 wwo 参数来调用我的网络服务方法。使用上面的代码,我只能发送一个参数。
请帮我实现这个。
您是否尝试过 creating/adding 新元素,就像您为第一个参数所做的那样?
SOAPElement soapBodyElem2 = soapBody.addChildElement("getMsg", "MineralWebService",serverURI);
SOAPElement value2 = soapBodyElem2.addChildElement("getMsg","MineralWebService");
value2.setTextContent("Arguments Two");