JFinal整合JAX-WS发布WebService

1.下载JAX-WS需要的依赖


<dependency>
      <groupId>com.sun.xml.ws</groupId>
      <artifactId>jaxws-rt</artifactId>
      <version>2.2.8</version>
</dependency>

  • 大部分依赖都会用的到。也可以先导入主要的包,等classNotFound再找导入需要的jar包。

2.配置web.xml文件


<listener>
    <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
  </listener>
 
  <servlet>
    <servlet-name>CmccService</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>CmccService</servlet-name>
    <url-pattern>/services/*</url-pattern>
  </servlet-mapping>

3.web.xml相同目录添加sun-jaxws.xml文件

sun-jaxws.xml:


<?xml version="1.0" encoding="UTF-8"?>
<endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime">
    <endpoint implementation="service.CmccService" name="MsgCmcc" url-pattern="/services/CmccService"/>
</endpoints>

4.修改JFinal启动文件


public void configHandler(Handlers me) {
	    me.add(new UrlSkipHandler(".*/services.*",false));
	}

5.添加一个实现Webservice的类CmccService

CmccService.java:


package service;

import javax.jws.WebParam;
import javax.jws.WebService;

@WebService
public class CmccService{

	public String sendMsg(@WebParam(name = "Name") String name) {
		return "send msg to " + name ;

	}
}


6.访问

http://localhost:8088/sms/services/CmccService?wsdl,看是否能查看到正常的WSDL文件。

posted @ 2022-04-01 16:02  可爱的黑精灵  阅读(263)  评论(0)    收藏  举报