использование аннотаций с пружиной для доступа к веб-сервису - PullRequest
0 голосов
/ 21 апреля 2011

Мне нужно получить доступ к webservice с помощью пружины JaxWsPortProxyFactoryBean. я могу подключить его в контексте XML и использовать его. Есть ли способ использовать этот «веб-сервис» только с использованием аннотаций? Я использую Apache CXF и Spring MVC 3.

базовый уровень: мне нужен доступ к веб-сервису без использования конфигураций xml. Это возможно? я видел некоторые аннотации, такие как @WebMethod и @WebMethod, но я не знаю, как правильно их использовать.

может кто-нибудь указал мне на пример. ценю твою помощь.

URL моего WS - http://localhost:8080/test.asmx/HelloWorld

1 Ответ

1 голос
/ 05 мая 2011

Я нашел решение. пожалуйста, обратитесь ниже.

JaxWsPortProxyFactoryBean jaxWsPortProxyFactoryBean = new JaxWsPortProxyFactoryBean();
String URI = "http://localhost:8080/service";
try {

    jaxWsPortProxyFactoryBean.setWsdlDocumentUrl(new URL(URI+"?wsdl"));
    jaxWsPortProxyFactoryBean.setServiceInterface(myIService.class);
    jaxWsPortProxyFactoryBean.setPortName(PORT);
    jaxWsPortProxyFactoryBean.setNamespaceUri(URI);
    jaxWsPortProxyFactoryBean.setServiceName(SERVICE_NAME);
    logger.debug("WSDL - "+jaxWsPortProxyFactoryBean.getWsdlDocumentUrl());
    jaxWsPortProxyFactoryBean.afterPropertiesSet();

} catch (Exception e) {
    logger.error("Error occured while connecting to the TW web service -",e);
}

Пожалуйста, обратитесь Доступ к веб-сервисам с использованием JAX-WS для получения дополнительной информации о порте и URI.

Сервисный интерфейс -

     public interface testService {
@WebMethod(operationName = "myOperations",  action = "")
@WebResult(name = "errorCode",targetNamespace = "")

public String testWebService(
    @WebParam(name = "studentId", targetNamespace = "", mode = Mode.IN) Integer studentId,
    @WebParam(name = "studenName", targetNamespace = "", mode = Mode.IN) String studenName);
    }

myOperations - это операция, к которой вам необходимо обратиться в веб-сервисе

errorCode - это возвращаемое значение из веб-сервиса

studentId, studentName - это параметры, которые необходимо отправить в веб-сервис.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...