写了一个webservice 方法都没错,
public List<Category> getAllCategory(String areaCode, String channelId) {
//具体逻辑省略了
return catlist;
}
调式的时候 代码都没错 就是到 return catlist;这一句就报异常了 java.lang.IllegalStateException
这个是哪的问题?
public List<Category> getAllCategory(String areaCode, String channelId) {
//具体逻辑省略了
return catlist;
}
调式的时候 代码都没错 就是到 return catlist;这一句就报异常了 java.lang.IllegalStateException
这个是哪的问题?
解决方案 »
- freemarker导出word时报出异常求帮助!
- Write operations are not allowed in read-only mode (FlushMode.MANUAL): Turn your
- 问个servlet里方法封装成util工具类的方法
- 新手问题在eclipse中启动了tomcat本地服务器后无法用浏览执行jsp文件
- 使用Jquery的图片展示插件,如果是静态页面效果很好,但是当从服务器上读取图片时(jsp),图片就显示不出来
- 加了一个Filter 为什么跳到登陆页面后,验证码不能正常显示了?
- spring singleton 你这个骗子!!!
- 在JSP页面上如何显示摄氏度字符?
- 提个STRUTS的初级问题!!!
- 请问怎样得到表单里面RADIO和SELECT的值
- java web 怎么实现新订单提醒?
- js如何往struts2 <s:checkboxlist value=""/>中的value里设置选中值方法
@WebService(endpointInterface = "com.xy.dcp.ws.IWSDataService")
public class WSDataServiceImpl implements IWSDataService { private DcpDataService dcpDataService;
//@WebMethod
@Override
public List<Category> getAllCategory(String areaCode, String channelId) {
// TODO Auto-generated method stub
//Category cat =new Category();
//cat.setAreaId(2222l);
System.out.println("wwww");
// return dcpDataService.getAllCategory("ALL", "1");
Map map =new HashMap<String,Category>();
List<Category> catlist=new ArrayList<Category>();
Category cat=new Category();
cat.setAreaId(2333l);
cat.setCatCode("1");
return catlist;
} 客户端调用时 报一个这样的错
[code=Java]Exception in thread "Thread-11" javax.xml.ws.WebServiceException: java.lang.NullPointerException
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:142)
at $Proxy111.getAllCategory(Unknown Source)
at com.xy.dcp.cache.impl.ClientDataManagerImpl.getAllCategory(ClientDataManagerImpl.java:18)
at com.xy.dcp.cache.impl.CacheManagerImpl.categoryTask(CacheManagerImpl.java:36)
at com.xy.dcp.cache.StartClientServer.initData(StartClientServer.java:47)
at com.xy.dcp.cache.StartClientServer.run(StartClientServer.java:18)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:110)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:420)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:299)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:251)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
... 6 more
wwww
2010-12-2 16:45:08 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
信息: Interceptor has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: argument type mismatch
at org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor.handleMessage(WrapperClassOutInterceptor.java:116)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:74)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:78)
at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:92)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:285)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:168)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:175)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:153)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.cxf.interceptor.Fault: argument type mismatch
at org.apache.cxf.jaxws.interceptors.WrapperHelper$ReflectWrapperHelper.createWrapperObject(WrapperHelper.java:312)
at org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor.handleMessage(WrapperClassOutInterceptor.java:102)
... 23 more
Caused by: java.lang.IllegalArgumentException: argument type mismatch
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.cxf.jaxws.interceptors.WrapperHelper$ReflectWrapperHelper.createWrapperObject(WrapperHelper.java:296)
... 24 more
2010-12-2 16:45:08 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
信息: Interceptor has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not send Message.
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:260)
at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:74)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:78)
at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:92)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:285)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:168)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:175)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:153)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:595)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
... 12 more
wwww
2010-12-2 16:45:13 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
信息: Interceptor has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: argument type mismatch
at com.xy.dcp.cache.impl.CacheManagerImpl.categoryTask(CacheManagerImpl.java:36)
这写的挺清楚啊,空指针,
看看你的的代码 是如何对空做判断的
在去数据库里看看 该行该字段的 类型 是否为空 是“” 还是null
public List<Category> getAllCategory(String areaCode, String channelId) ()[ 服务端的这个方法调试是有值的 但是返回到客户端就没值了 所以才有那些异常 。但是我不知道为什么 客户端拿不到值
public List<Category> getAllCategory(String areaCode, String channelId) {
List<Category> catlist=new ArrayList<Category>();
Category cat=new Category();
cat.setAreaId(2333l);
cat.setCatCode("1");
catlist.add(cat);
return catlist;
}这是最原始的 ,上面的是我调试时 写了些忘记去了
public class ClientDataManagerImpl implements IClientDataManager{
private IWSDataService wsClient;
private String areaCode;
private String channelId; public List<Category> getAllCategory() {
System.out.print(wsClient);
List<Category> cat = wsClient.getAllCategory(areaCode, channelId);
return cat;
}
这个是客户端的
public class ClientDataManagerImpl implements IClientDataManager{
private IWSDataService wsClient;
private String areaCode;
private String channelId; public List<Category> getAllCategory() {
System.out.print(wsClient);
List<Category> cat = wsClient.getAllCategory(areaCode, channelId);
return cat;
}
这个是客户端的