? 当然这只是WebService的其中一种实现方式,还有用Xfire的
? 也可以不用main方法发布,把它和Spring集成会更好一些
开发工具 Eclipse4.2
CXF2.7.5下载地址 http://cxf.apache.org/download.html
开始了:
1:服务端(一共是3个类,一个接口,一个实现类,一个WebService发布类)
----------------------------------------------------------
package com.service;
import javax.jws.WebService;
@WebService
public interface IHelloService {
? int add(int a,int b);
}
---------------------------------------------------------
package com.service;
import javax.jws.WebService;
@WebService
public class IHelloServiceImpl implements IHelloService {
? ?@Override
? ?public int add(int a,int b) {
? ? ? ?return a + b;
? ?}
}
---------------------------------------------------------
package com.service;
import javax.xml.ws.Endpoint;
public class SoapServer {
?public static void main(String[] args) {
? ?Endpoint.publish("http://本机ip:8080/helloService",new IHelloServiceImpl());
?}
}
----------------------------------------------------------
2:main方法运行第三个类
3:浏览器访问http://本机ip:8080/helloService?wsdl会看到一个xml文件(发布成功)
4:接下来是客户端调用了,需要CXF2.7.5解压就行
5:调用之前先用CXF的wsdl2java.bat工具(在%CXF_HOME%bin目录下---为了使用方便也可以配置环境变量)生成客户端代码
6:进入%CXF_HOME%bin目录下
7:wsdl2java -p com.test.service -d F:ooo -all http://本机ip:8080/helloService?wsdl
8:在F:ooo下会生成客户端代码,拷到项目中去
生成客户端的目录结构

9:再写一个类用main方法调用
--------------------------------------------------------------------------------
package com;
import com.test.service.IHelloServiceImplService;
public class DoAction {
? ?public static void main(String[] args) {
? ? ? ?IHelloServiceImplService isis = new IHelloServiceImplService();
? ? ? ?com.test.service.IHelloServiceImpl isi = ?isis.getIHelloServiceImplPort();
? ? ? ?System.out.println(isi.add(1,2));
? ?}
}
输了结果是3
----------------------------------------------------------------------------------
10:没了,整理网上的资源测试成功