cxf之helloword
public final static QName SERVICE = new QName("http://server.bjz.com/", "HelloWorldImpl");
public final static QName HelloWorldImplPort = new QName("http://server.bjz.com/", "HelloWorldImplPort");
public static void main(String[] args) throws MalformedURLException {
URL url=new URL("http://localhost:9000/helloWorld?wsdl");
Service service=Service.create(url,SERVICE);
HelloWorld hw=service.getPort(HelloWorldImplPort,HelloWorld.class);
System.out.println(hw.sayHi("bjz"));
}
客户端代码, 不知道为什么我开始用的例子里的源码,但是不对,只好用wsdl2java生成代码,参考生成的客户端,写出来的。
下面是wsdl2java的使用方法,
配置环境变量%CXF_HOME%=E:/WebService/CXF/apache-cxf-2.1.1/apache-cxf-2.1.1(以我的目录为例),并在PATH后加上;%CXF_HOME%/bin
在cmd命令行中输入wsdl2java如果显示其用法表示配置好了。
输入:wsdl2java -d src - client http://localhost:9000/helloWorld?wsdl
wsdl2java -p com -d src -all aa.wsdl
-p 指定其wsdl的命名空间,也就是要生成代码的包名:
-d 指定要产生代码所在目录
-client 生成客户端测试web service的代码
-server 生成服务器启动web service的代码
-impl 生成web service的实现代码
-ant 生成build.xml文件
-all 生成所有开始端点代码:types,service proxy,,service interface, server mainline, client mainline, implementation object, and an Ant build.xml file.
详细用法见:http://cwiki.apache.org/CXF20DOC/wsdl-to-java.html