Клиент Spring Webservice не возвращает данных - PullRequest
0 голосов
/ 08 июня 2018

Чтобы использовать веб-сервис в нашем веб-приложении Spring, я следую этим инструкциям: Вызов веб-сервиса с JaxWsPortProxyFactoryBean

Я создал клиентские классы с помощью wsimport, и я могу использовать эти классы в команделиния клиента.Все работает отлично.

public static void main(String[] args) {
    OrderServiceRequest req = new OrderServiceRequest()
    // set fields 
    req.setLoginId('test');
    ProfileService profileService = new ProfileService();
    ProfileSoap port = profileService.getProfileSoap12();
    OrderServiceResponse response = port.orderServiceRequest(req);
    System.out.println("ErrorCode=" + response.getErrorCode());
}

Я реализую службу в Spring с созданными классами.Я настраиваю службу как Spring Bean:

<bean id="myService" class="org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean">
             <property name="serviceInterface" value="my.package.name.ProfileSoap" />           
             <property name="wsdlDocumentUrl" value="http://localhost:9999/connector/MyWebService?wsdl" />            
             <property name="namespaceUri" value="http://url.to.namespace" />
            <property name="serviceName" value="ProfileService" />
            <property name="endpointAddress" value="http://localhost:9999/connector/MyWebService" />
    </bean>

В другой Службе я внедряю Службу и вызываю веб-службу:

@Autowired
@Qualifier("myService")
ProfileSoap myService;

OrderServiceRequest req = new OrderServiceRequest();
req.setLoginId("12345");
req.setPassword("test");
req.setEAN("9783864905254");
// Request
OrderServiceResponse response = myService.orderServiceRequest(req);
// all fields of the response are null!
System.out.println(response.getErrorCode());

С помощью TCP-монитора в Eclipse я вижу, чтоответ возвращает правильные данные, но мой объект ответа в службе не содержит данных.

Какой подход я должен использовать для устранения этой проблемы?Любая помощь приветствуется

...