Создан новый стандартный проект Java 7 в Eclipse и успешно удалось получить экземпляр javax.xml.ws.Service
, например, так:
String wsdlURL = "http://example.com:3000/v1_0/foo/bar/SomeService?wsdl";
String namespace = "http://foo.bar.com/webservice";
String serviceName = "SomeService";
QName serviceQN = new QName(namespace, serviceName);
Service service = Service.create(new URL(wsdlURL), serviceQN);
Это нормально работает в основном методе, так что, насколько я вижу, эта часть работает. Но я не могу понять, как на самом деле использовать его. В SoapUI я вызываю этот же сервис с запросом, который выглядит следующим образом:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://foo.bar.com/webservice">
<soapenv:Header/>
<soapenv:Body>
<web:SomeWebServiceRequest acAccountName="name" acAccountPassword="password">
<SomeRequest>
<id>012345678901234</id>
<action>Fix</action>
</SomeRequest>
</web:SomeWebServiceRequest>
</soapenv:Body>
</soapenv:Envelope>
Как я могу сделать тот же запрос в Java? Моя цель состоит в том, чтобы у меня был длинный список этих id
, и мне нужно выполнить такой запрос для каждого из них. Делать это вручную в SoapUI немного раздражает, поэтому я хотел бы автоматизировать его с помощью простого консольного приложения Java.