0 0

客户端请求web service 服务报错了20

客户段测试代码: public static void main(String[] args) { UserManageImpService us = new UserManageImpService();
UserManageImpDelegate ud =us.getUserManageImpPort();
System.out.println(ud.queryUsers());
}
报错信息:
Caused by: java.lang.NullPointerException
at cn.dmc.service.imp.UserManageImp.queryUsers(UserManageImp.java:30)
at cn.dmc.service.imp.UserManageImpDelegate.queryUsers(UserManageImpDelegate.java:27)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
问题说明:在web service 服务中有个UserManageImp类,该类中的queryUsers()方法调用dao层方法操作数据库。在web service段测试是可以查询到的,但是用jdk1.6的jax-ws以UserManageImp类做接口bean,在客户端调用查询方法却失败了。(刚接触web service不太懂,这是一个测试,请各位指点)
2013年4月10日 12:17

7个答案 按时间排序 按投票排序

0 0

如果UserManageImp bean 加载时通过spring beanFactory ,尝试将该实例的加载方式改为 及时加载

2013年4月12日 11:39
0 0

给楼主的建议:
   1.空指针问题一般都是自己代码失误所致,大部分如没有注入、没有传参、没有判断是否为空等等一系列;
   2.既然选择在问答平台提问,那就要把错误贴的详细点,越详细越能吸引大家,帮你解决,回答的人越多,学到的也就越多;


关于你的问题:
   既然服务端调用正常,客户端调用却报空,再从你贴出的代码来看,首先创建了一个serveiceimp的管理实例,通过委托的形式好像也拿到了实例,但是执行报空应该是服务启动时没有把service相关的注入进来

2013年4月11日 10:11
0 0

注入的时候 有没有对注入的对象用封装set方法啊

2013年4月10日 21:51
0 0

这个错误与webservice没有关系吧

2013年4月10日 21:40
0 0


UserManageImp第30行 抛了一个空指针,看一下怎么回事。

引用
at cn.dmc.service.imp.UserManageImp.queryUsers(UserManageImp.java:30)

2013年4月10日 17:31
0 0

错误很明显了啊,空指针错误,位置是UserManageImp类的30行

Caused by: java.lang.NullPointerException 
at cn.dmc.service.imp.UserManageImp.queryUsers(UserManageImp.java:30) 

这种错误与webservice无关,一般都是疏忽导致的,比如说你的dao没有初始化,或者某个po没有new……

2013年4月10日 17:30
0 0

jax-ws你可以参考http://www.mkyong.com/tutorials/jax-ws-tutorials/
这里有详细的说明

2013年4月10日 12:30

相关推荐

Global site tag (gtag.js) - Google Analytics