Pessoal, bom dia!
Estou com um problema que já tentei de tudo ao meu alcance para tentar resolvê-lo e não achei nenhuma dica tanto na web quanto aqui no fórum. Pois bem, Desenvolvi um WebService AXIS2 em java. Desenvolvimento tranquilo e com o cliente em java ele funciona perfeitamente todos os métodos.
Só que este WebServices será consumido por um aplicativo feito e C# e ai é que começou a dar problema. Vou tentar descrever o problema e colocar aqui o stacktrace do WebServices…
Este WebServices tem dois métodos, um para consultar cliente, que recebe um string CPF e retorna um objeto cliente, este serviço funciona perfeitamente. E outro serviço que é cadastrarCliente que recebe um cobjeto cliente e retorna 1 se deu sucesso ou 0 se deu erro. Quando chamo o método cadastrarCliente do C# dá o erro abaixo…
O stacktrace do Tomcat:
[ERROR] Exception occurred while trying to invoke service method cadastrarCliente
org.apache.axis2.AxisFault: InvocationTargetException : java.lang.reflect.InvocationTargetException
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:477)
at org.apache.axis2.databinding.utils.BeanUtil.processObject(BeanUtil.java:818)
at org.apache.axis2.databinding.utils.BeanUtil.ProcessElement(BeanUtil.java:737)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:646)
at org.apache.axis2.rpc.receivers.RPCUtil.processRequest(RPCUtil.java:153)
at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:206)
at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
A wsdll do webServices está aqui http://fenixws.no-ip.org:8080/CassolWS/services/Servicos?wsdl
O interessante é o seguinte, no cliente em C# se crio o objeto cliente e depois seto os atributos dele, dá este erro. Caso eu faça uma consulta, que retorna um objeto cliente e chame o método cadastrarCliente passando este mesmo cliente o método funciona perfeitamente…
Alguém já se deparou com este problema? Infelizmente o cliente tem que ser em C# não pode ser em Java…
Obrigado,
Hugo