关于CXF在servlet下调用服务的问题咨询。

myepoch 2015-12-16 12:57:36
CXF编写了服务端和客户端,
服务端和客户端分别写在main函数下,然后开通服务,再开通客户端,没有任何问题。

但是,如果我将客户端写在servlet中,那么在处理类WebServicesImpl 接到的dto为空

客户端:
MyDTO dto = new MyDTO();   
dto.setUserId("A1001");
dto.setUserName("张三");

ClientProxyFactoryBean clientProxyFactoryBean = new ClientProxyFactoryBean();
//获取服务器端
clientProxyFactoryBean.setAddress("http://localhost:8087/helloServiceLGM?wsdl");
//通过客户端的接口获取服务器端的接口
clientProxyFactoryBean.setServiceClass(WebServices.class);
WebServices service =(WebServices) clientProxyFactoryBean.create();

String str = service.query(dto);





@WebService  
public interface WebServices {

public String query(MyDTO dto);
}



@WebService  
public class WebServicesImpl implements WebServices {

public String query(MyDTO dto){
//如果客户端写在SERVLET中,那么此时接到的dto为null

}
}

...全文
98 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dracularking 2015-12-18
  • 打赏
  • 举报
回复
原本是自己构造的 MyDTO dto = new MyDTO(); dto.setUserId("A1001"); dto.setUserName("张三"); 现在换成servlet,dto只是一个方法参数了,肯定要通过另外一种形式来完成构造
naturemickey 2015-12-17
  • 打赏
  • 举报
回复
在servlet容器中不能仅仅是配置一个普通的servlet,需要用org.apache.cxf.transport.servlet.CXFServlet或其它的类来配置。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧