Компания, с которой мы работаем по электронной почте, получила схему wsdl и xsd.Доступ к веб-сервисам, с которыми мы взаимодействуем, осуществляется через туннель IPsec.В опубликованном WSDL есть локальные ссылки (на их конце), что означает, что мы не можем его использовать.
1-й вопрос: это обычная установка?Я думал, что смысл наличия WSDL заключается не только в том, чтобы определить контракт, но и в том, чтобы предоставить услугу потребителям.
Я могу легко сгенерировать клиент-серверный код из предоставленного WSDL, используя wsimport, wsconsume и т. Д.Я знаю, когда мой сгенерированный клиент звонит моему сгенерированному сервису, он выдает правильное сообщение, которое мне нужно.
2-й вопрос: есть ли простой способ направить это на другой мыльный адрес?
Я просто хочу иметь возможность сделать что-то вроде:
SalesTaxService svc = new SalesTaxService();
SalesTax tax = svc.getSalesTaxPort()
tax.getRate("NY");
Но не использовать мыльный адрес, определенный в WSDL.Я бы не хотел писать кучу клиентов для каждого метода.
Я что-то упустил?
* В ответ на skaffman: Это то, что было сгенерировано.По умолчанию это wsdlLocation как имя пожимание плечами
@WebServiceClient(name = "SomeService")
public class SomeService_Service extends Service {
public SomeService_Service(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}
public SomeService_Service(URL wsdlLocation) {
super(wsdlLocation, new QName("urn:some_service", "SomeService"));
}
}