代码片段
client=new Client(new URL(url));
Object[] obj =client.invoke("getResult", new Object[]{userName,pwd,sourcecode,xmlParameter.toString().getBytes()});
代码执行到这个Invoke的时候报错:
Exception in thread "main" org.codehaus.xfire.fault.XFireFault: [B cannot be cast to javax.activation.DataHandler
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.Client.invoke(Client.java:368)
at com.hirisun.webService.WebServiceUtil.getResult(WebServiceUtil.java:56)
at com.hirisun.webService.Test2.main(Test2.java:45)
Caused by: java.lang.ClassCastException: [B cannot be cast to javax.activation.DataHandler
at org.codehaus.xfire.aegis.type.mtom.DataHandlerType.createAttachment(DataHandlerType.java:18)
at org.codehaus.xfire.aegis.type.mtom.AbstractXOPType.writeObject(AbstractXOPType.java:89)
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)
求高手帮忙看看是为什么,我传入BYTE数组的时候就会出现这个错误