如何在现有的 Web 项目中集成 Web 服务? [英] How to integrate Web-service in existing Web project?
问题描述
我是 Web 服务的新手,我想将 Web 服务集成到我现有的 Web 项目中,但我很困惑如何去做.谁能告诉我怎么做?
对于我正在使用的项目:
- Spring 框架
- 休眠
- 基于 Pojo(不使用 ant builder,hibernate.cfg.xml)
- 日蚀
假设我有包含 getTenderTitleForSecurityDeposit() 函数的 SecurityDepositServiceImpl 类,那么我如何为此做网络服务?
实现 Web 服务的快速方法如下:
确保以下 jars 可用于您的 web 应用程序:jaxws-rt.jar;jaxb-impl.jar;流缓冲.jar;政策.jar;jaxws-api.jar;stax-ex.jar;gmbal-api-only.jar;管理api.jar
在您的 WEB-INF 文件夹中创建一个sun-jaxws.xml"文件,并填写以下内容:
- 在您的 web.xml 中添加以下代码段:
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class></监听器><小服务程序><servlet-name>WebServices</servlet-name><servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class><启动时加载>1</启动时加载><servlet-mapping><servlet-name>WebServices</servlet-name><url-pattern>/ws/*</url-pattern></servlet-mapping>
- 创建您的类 com.foo.ws.MyWebServiceClass 并注释您喜欢提供的内容:
@WebService(serviceName="MyServices")公共类 MyWebServiceClass 扩展 SpringBeanAutowiringSupport {@WebMethod公共列表<字符串>myMethodExposed(字符串用户名){列表<字符串>toret = new ArrayList();toret.add("你好世界");toret.add("美丽人生");返回 toret;}}
等等:您的网络服务已准备就绪.
I am new to Web-Services, I want to integrate Web-service in my existing web project, but I am confused how to do it. Can any one tell me how to do it?
For my project I am using:
- Spring Framework
- Hibernate
- Pojo based (not using ant builder, hibernate.cfg.xml)
- Eclipse
Suppose I have SecurityDepositServiceImpl class that contain getTenderTitleForSecurityDeposit() function, then how I do web-service for that?
A quick way to implement a web service is the following one:
Be sure that the following jars will be available to your webapp: jaxws-rt.jar; jaxb-impl.jar; streambuffer.jar; policy.jar; jaxws-api.jar; stax-ex.jar; gmbal-api-only.jar; management-api.jar
Create a "sun-jaxws.xml" file on your WEB-INF folder and fill it with the following:
<?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>
- Add in your web.xml the following snippet:
<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>
- Create your class com.foo.ws.MyWebServiceClass and annotate what you like to provide:
@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: your web service is ready.
这篇关于如何在现有的 Web 项目中集成 Web 服务?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!