Как интегрировать веб-сервис в существующий веб-проект?

Я новичок в веб-сервисах, я хочу интегрировать веб-сервис в свой существующий веб-проект, но я смущен, как это сделать. Может ли кто-нибудь сказать мне, как это сделать?

Для моего проекта я использую:

  • Spring Framework
  • Hibernate
  • Основанный на Pojo (не используя ant builder, hibernate.cfg.xml)
  • Eclipse,

Предположим, у меня есть класс SecurityDepositServiceImpl, который содержит функцию getTenderTitleForSecurityDeposit(), а затем как я делаю для этого веб-сервис?

Ответы

Ответ 1

Быстрый способ реализации веб-службы следующий:

  • Убедитесь, что для вашего веб-сервера доступны следующие банки: JAXWS-rt.jar; JAXB-impl.jar; streambuffer.jar; policy.jar; JAXWS-api.jar; StAX-ex.jar; gmbal-апи-only.jar; управление-api.jar

  • Создайте файл "sun-jaxws.xml" в папке WEB-INF и заполните его следующим образом:

<?xml version="1.0" encoding="UTF-8"?>
<endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime">
  <endpoint 
      implementation="com.foo.ws.MyWebServiceClass"

      name="MyServices" 
      url-pattern="/ws/theUrlILikeTheMost"
      />
</endpoints>
  • Добавьте в свой web.xml следующий фрагмент:
    <listener>
      <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>WebServices</servlet-name>
        <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>WebServices</servlet-name>
        <url-pattern>/ws/*</url-pattern>
    </servlet-mapping>
  • Создайте класс com.foo.ws.MyWebServiceClass и отметьте, что вам нравится:
@WebService(serviceName="MyServices")
public class MyWebServiceClass extends SpringBeanAutowiringSupport {
    @WebMethod
    public List<String> myMethodExposed(String username) {
      List<String> toret = new ArrayList<String>();
      toret.add("Hello world");
      toret.add("Life id beautiful");
      return toret;
    }
}

et voila: ваш веб-сервис готов.