关闭

webservice接口简单实例及调用

标签: web service实例mavenjarCXF
84人阅读 评论(0) 收藏 举报

1.相关jar包。我用的maven

<dependency>
  <groupId>org.apache.cxf</groupId>
  <artifactId>cxf-api</artifactId>
  <version>2.5.0</version>
 </dependency>
 <dependency>
  <groupId>org.apache.cxf</groupId>
  <artifactId>cxf-rt-frontend-jaxws</artifactId>
  <version>2.5.0</version>
</dependency>
<dependency>
  <groupId>org.apache.cxf</groupId>
  <artifactId>cxf-rt-bindings-soap</artifactId>
  <version>2.5.0</version>
</dependency>
<dependency>
  <groupId>org.apache.cxf</groupId>
  <artifactId>cxf-rt-transports-http</artifactId>
  <version>2.5.0</version>
</dependency>
<dependency>
  <groupId>org.apache.cxf</groupId>
  <artifactId>cxf-rt-ws-security</artifactId>
  <version>2.5.0</version>
  </dependency>
  <dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
<version>2.5.0</version>
</dependency>


2.接口及实现类

@WebService
public interface Hello {


@WebMethod
public String sayHello(String name);
}


@WebService(endpointInterface="testcxf.Hello",serviceName="sayhello")
public class HelloImpl implements Hello {


@WebMethod
public String sayHello(String name) {

return "hello "+name;
}

}


3.发布webservice

public static void main(String[] args) {
           HelloImpl implementor= new HelloImpl();
           String address="http://localhost:8080/sayhello";
           Endpoint.publish(address, implementor);
}

OK,这样就完了了一个接口。下面来调用


4.首先要生成一个webservice客户端。

使用JDK1.6的wsimport.exe产生客户端代码(之前要将JDK的bin添加到环境变量Path中)




这样可以在d盘的ws文件夹里面生成调用类。复制java文件到工程里面去。


调用接口

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;


import ws.Hello;


public class TextCxf {

public static void main(String[] args) {
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
// 注册WebService接口
factory.setServiceClass(Hello .class);
// 设置WebService地址
factory.setAddress("http://localhost:8080/sayhello");
Hello  service = (Hello ) factory.create();
String str=service.sayHello("测试");
System.out.println(str);
}
}



1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:109次
    • 积分:21
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档