CXF版本:apache-cxf-2.5.2.zip
新建一个web工程cxf,把用到的lib包导入,参考图:lib包.jpg
web.xml配置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:**/spring.xml</param-value>
</context-param>
<servlet>
<servlet-name>cxf</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>cxf</servlet-name>
<url-pattern>/ws/*</url-pattern>
</servlet-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
src目录下创建spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd">
添加完这个文件后,还需要在这个文件中导入这么几个文件。文件内容如下:
<import resource="classpath:META-INF/cxf/cxf.xml"/>
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/>
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
这几个文件在cxf-2.5.2.jar中
下面开始写服务器端代码,首先定易做图务器端的接口,代码如下:
package cxf.demo;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
@WebService
public inte易做图ce HelloWorld {
@WebMethod
@WebResult
public String sayHi(@WebParam String text);
}
下面编写WebService的实现类,服务器端实现代码如下:
package cxf.demo;
import javax.jws.WebService;
@WebService(endpointInte易做图ce="cxf.demo.HelloWorld")
public class HelloWorldImpl implements HelloWorld {
public String sayHi(String name) {
String msg = "Hello " + name + "!";
return msg;
}
}
在spring.xml文件中添加如下配置:www.zzzyk.com
<jaxws:endpoint id="helloworld" implementor="cxf.demo.HelloWorldImpl"address="/HelloWorld" />
在WebRoot/META-INF/MANIFEST.MF文件中添加:DisableIBMJAXWSEngine:true
然后把工程打成war包部署到Websphere7.0上。部署步骤就不在详细说了,不会可在网上找。
部署成功后点击工程名cxf_war,参考图:工程名.jpg
最后进入到下图中,参考图:工程配置.jpg
然后“类装入器顺序”下拉选择第二项,如图:选项图.jpg
确定后重启服务,一定要重启服务,重启应用貌似不管用。
服务启动后再启动应用,然后在地址栏输入下面地址:
http://localhost:9080/cxf/ws/HelloWorld?wsdl
如果你能看到wsdl的xml文件的内容,就说明你成功了。客户端代码就不写了,如有什么问题可留言。
图可在http://www.bianchengke.com/forum.php?mod=viewthread&tid=314&page=1#pid614中看到,懒得再弄过来了,需要注册。