Я создал JAR клиента веб-службы и установил следующую переменную в классе EJB.
@WebServiceRef(.....WSDL Location)
static ABCService service;
...
ABCPortType port = service.getABCPort();
port.hello()
Для этой статической конфигурации вызов веб-службы SOAP прошел успешно.
Однако, когда я пытался настроить расположение WSDL во время выполнения, используя следующий код
String wsdlLocation = "a wsdl location";
BindingProvider bindingProvider = (BindingProvider)port;
bindingProvider.getRequestContext()
.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, wsdlLocation);
Это вызвало ошибку:
WSWS7263E: Следующеевозникла исключительная ситуация: java.net.ConnectException: HTTP (404) Not Found адрес: WSDL Местоположение
Обратите внимание, что расположение wsdl в журнале ошибок такое же, как в аннотации WebServiceRef, которую я использовалв сценарии статической конфигурации.
В качестве дополнительной информации я использую Websphere 8.5.
Хотелось бы посмотреть, если я что-то здесь упускаю.Благодарю.