Exception in thread "main" org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested exception is org.codehaus.xfire.fault.XFireFault: Fault: java.lang.NullPointerException
org.codehaus.xfire.fault.XFireFault: Fault: java.lang.NullPointerException
at org.codehaus.xfire.fault.XFireFault.createFault(XFireFault.java:89)
at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:83)
at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:114)
at org.codehaus.xfire.client.Client.invoke(Client.java:336)
at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:77)
at org.codehaus.xfire.client.XFireProxy.invoke(XFireProxy.java:57)
at $Proxy7.recvSms(Unknown Source)
at cd.toc.Test.main(Test.java:435)
Caused by: java.lang.NullPointerException
at org.codehaus.xfire.aegis.type.basic.LongType.writeObject(LongType.java:27)
at org.codehaus.xfire.aegis.type.java5.HolderType.writeObject(HolderType.java:38)
at org.codehaus.xfire.aegis.AegisBindingProvider.writeParameter(AegisBindingProvider.java:229)
at org.codehaus.xfire.service.binding.AbstractBinding.writeParameter(AbstractBinding.java:273)
at org.codehaus.xfire.service.binding.WrappedBinding.writeMessage(WrappedBinding.java:90)
at org.codehaus.xfire.soap.SoapSerializer.writeMessage(SoapSerializer.java:80)
at org.codehaus.xfire.transport.http.HttpChannel.writeWithoutAttachments(HttpChannel.java:56)
at org.codehaus.xfire.transport.http.CommonsHttpMessageSender.getByteArrayRequestEntity(CommonsHttpMessageSender.java:422)
at org.codehaus.xfire.transport.http.CommonsHttpMessageSender.send(CommonsHttpMessageSender.java:360)
at org.codehaus.xfire.transport.http.HttpChannel.sendViaClient(HttpChannel.java:123)
at org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:48)
at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)
at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:79)
... 6 more

解决方案 »

  1.   

    Caused by: java.lang.NullPointerException是不是services.xml没配service?
      

  2.   

    cd.toc.Test.main(Test.java:435)
    cd.toc.Test类中435行出现空指针异常,你应该用到转发器了吧,就是把客户端请求转发到服务端,转发器取到值了吗?
      

  3.   

    谢谢 我是个新人 
      刚刚接手 webservice 
      

  4.   

    你请求服务端的地址可以请求到吗?
    http://请求ip/工程名/web.xml中配置的名称/webservice配置文件中配置的名称?wsdl如果在地址栏中写这个可以请求到,那说明是你客户端请求不对。
    下边是客户端写法
    String endpoint = "http://localhost:8090/FAP/service/UserService";
    org.apache.axis.client.Service service = new org.apache.axis.client.Service();
    org.apache.axis.client.Call call = (org.apache.axis.client.Call) service.createCall();
    call.addParameter("name", org.apache.axis.encoding.XMLType.XSD_STRING,
    javax.xml.rpc.ParameterMode.IN);
    ---这句是要指定你传的参数名要跟他那边需要的参数名称一样
    call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
    ---------这句是指定你参数的类型
    call.setTargetEndpointAddress(new java.net.URL(endpoint));
    call.setOperationName("方法名");
    String res=(String)call.invoke(new Object[]{"参数","参数"});call.setUseSOAPAction(true);
    System.out.print(res);