论坛首页 Java企业应用论坛

详解.net调用java ws

浏览 1872 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (9) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-01-10   最后修改:2010-01-10
SOA
java采用cxf发布ws.
下载cxf,新建一个工程。
定义接口
public interface Hello {
	String hello(String name);
}

定义实现类
public class HelloImpl implements Hello {
	@Override
	public String hello(String name) {
		return "Hello " + name;
	}
}

发布该service.
		// Create our service implementation
		HelloImpl helloWorldImpl = new HelloImpl();

		// Create our Server
		ServerFactoryBean svrFactory = new ServerFactoryBean();
		svrFactory.setServiceClass(Hello.class);
		svrFactory.setAddress("http://localhost:9000/Hello");
		svrFactory.setServiceBean(helloWorldImpl);
		svrFactory.create();

note,有可能有classnotfoundexception,这是因为没有设置好使用的jar包,在cxf的lib里面能找到所需的jar,设置好。
用浏览器浏览http://localhost:9000/Hello?wsdl,如果可以看到wsdl文件,发布成功。

新建一个.net的工程。用add service reference添加对service的引用。这会生成一些stub class。
这里ws的地址为http://localhost:9000/Hello?wsdl
            HelloPortTypeClient client = new HelloPortTypeClient();
            String helloString=client.hello("allen");
            Console.Out.WriteLine(helloString);
            Console.ReadLine();

用以上代码就可以访问java的ws了。




论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics