cxf如何创建webservice客户端

用cxf开发的webService,现在我想调用webService... 用cxf开发的webService,现在我想调用webService 展开
 我来答
百度网友c89dd9f984
推荐于2016-01-13 · TA获得超过4563个赞
知道大有可为答主
回答量:5241
采纳率:95%
帮助的人:1541万
展开全部
public static void main(String[] args) throws Exception {
//这个是用cxf 客户端访问cxf部署的webservice服务
//千万记住,访问cxf的webservice必须加上namespace ,否则通不过
//现在又另外一个问题,传递过去的参数服务端接收不到
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
org.apache.cxf.endpoint.Client client = dcf.createClient("http://localhost:8080/facelook/services/facelookWebService?wsdl");
//url为调用webService的wsdl地址
QName name=new QName("http://server.webservice.facelook.com/","getAlbumList");
//namespace是命名空间,methodName是方法名
String xmlStr = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ " <facelook>"
+ " <condition>"
+ " <name>家</name>"
+ " <description></description>"
+ " <pageno></pageno>"
+ " <pagesize></pagesize>"
+ " </condition>"
+ " </facelook>";
//paramvalue为参数值
Object[] objects=client.invoke(name,xmlStr);
//调用web Service//输出调用结果
System.out.println(objects[0].toString());
}
百度网友3accd87
2011-07-27 · 超过39用户采纳过TA的回答
知道小有建树答主
回答量:274
采纳率:0%
帮助的人:94.4万
展开全部
cxf是webservice的一种实现 ,你创建一个cxf工程(服务端),然后生成一个客户端,就可以调用webservice了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wu1g
2011-07-20 · 超过28用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:64.8万
展开全部
用工具生成代理类,myeclipse就可以 ,然后调用的就是楼上方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
跆魔
推荐于2018-03-07 · 超过15用户采纳过TA的回答
知道答主
回答量:64
采纳率:0%
帮助的人:27万
展开全部
// 创建WebService客户端代理工厂
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
// 注册WebService接口
factory.setServiceClass(IHelloWorld.class);
// 设置WebService地址
factory.setAddress("http://localhost:9001/HelloWorld");
IHelloWorld iHelloWorld = (IHelloWorld) factory.create();
System.out.println("invoke webservice...");
System.out.println("message context is:" + iHelloWorld.sayHi("Josen"));
System.exit(0);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-07-20
展开全部
如何编写WebService客户端
CXF框架提供了调用WebService的客户端API,使用起来也比较方便。下面是CXF客户端的写法:
ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
factory.setServiceClass(IWebService.class);
factory.setAddress(
"http://localhost:8080/vo/services/SampleWebService");
IWebService client = (IWebService)factory.create();
System.out.println("Invoke execute()....");
System.out.println(client.execute("Hello World"));
在启动服务端后,运行这段代码,客户端终端窗口上会显示“Hello World”,服务端的信息窗口也会显示一个“Hello World”。这表示WebService能成功运行了。
CXF框架提供的客户端API封装了WebService的内幕,虽然它很好用,但使用者却不能理解WebService的运行机制。

参考资料: 深入浅出WebService.doc

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式