Caros,
Tá difícil lidar com isso! 
Fiz um cliente de um Web Service que funciona em um teste com o main(), porém no servidor ele lança uma exceção que nem um trycatch capturando exception captura!
O cliente e o método que o consome foram criados pela própria IDE!
Alguma idéia de solução?? Vejam o erro e os códigos:
[code]02/09/2011 14:58:37 com.sun.faces.lifecycle.InvokeApplicationPhase execute
AVISO: #{uploadController.submeterArquivo}: java.lang.Error: Undefined operation name beaInvoke
javax.faces.FacesException: #{uploadController.submeterArquivo}: java.lang.Error: Undefined operation name beaInvoke
<02/09/2011 14h58min37s BRT> <[ServletContext@8483338[app:AlephCarregaXML module:web path:/AlephCarregaXML spec-version:2.5], request: weblogic.servlet.internal.ServletRequestImpl@e76fcc[
POST /AlephCarregaXML/faces/index.xhtml HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:6.0.1) Gecko/20100101 Firefox/6.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Referer: http://192.168.56.1:7001/AlephCarregaXML/faces/index.xhtml
Cookie: JSESSIONID=BBygThYXCd4RpP1n8QjpMNjt16GDpG4QMmRhwxNQJMSnYvnG68wl!-579124966
Content-Type: application/x-www-form-urlencoded
Content-Length: 115
]] Root cause of ServletException.
javax.faces.el.EvaluationException: java.lang.Error: Undefined operation name beaInvoke
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at javax.faces.component.UICommand.broadcast(UICommand.java:315)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
Truncated. see log file for complete stacktrace
Caused By: java.lang.Error: Undefined operation name beaInvoke
at com.sun.xml.ws.model.JavaMethodImpl.freeze(JavaMethodImpl.java:327)
at com.sun.xml.ws.model.AbstractSEIModelImpl.freeze(AbstractSEIModelImpl.java:104)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:289)
at com.sun.xml.ws.client.WSServiceDelegate.buildRuntimeModel(WSServiceDelegate.java:762)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.buildRuntimeModel(WLSProvider.java:982)
Truncated. see log file for complete stacktrace
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
at javax.faces.component.UICommand.broadcast(UICommand.java:315)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:79)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.utils.FastSwapFilter.doFilter(FastSwapFilter.java:66)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
Caused by: javax.faces.el.EvaluationException: java.lang.Error: Undefined operation name beaInvoke
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
… 27 more
Caused by: java.lang.Error: Undefined operation name beaInvoke
at com.sun.xml.ws.model.JavaMethodImpl.freeze(JavaMethodImpl.java:327)
at com.sun.xml.ws.model.AbstractSEIModelImpl.freeze(AbstractSEIModelImpl.java:104)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:289)
at com.sun.xml.ws.client.WSServiceDelegate.buildRuntimeModel(WSServiceDelegate.java:762)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.buildRuntimeModel(WLSProvider.java:982)
at com.sun.xml.ws.client.WSServiceDelegate.createSEIPortInfo(WSServiceDelegate.java:746)
at com.sun.xml.ws.client.WSServiceDelegate.addSEI(WSServiceDelegate.java:737)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:361)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.internalGetPort(WLSProvider.java:934)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate$PortClientInstanceFactory.createClientInstance(WLSProvider.java:1039)
at weblogic.wsee.jaxws.spi.ClientInstancePool.takeSimpleClientInstance(ClientInstancePool.java:376)
at weblogic.wsee.jaxws.spi.ClientInstancePool.take(ClientInstancePool.java:232)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.getPort(WLSProvider.java:852)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:344)
at weblogic.wsee.jaxws.spi.WLSProvider$ServiceDelegate.getPort(WLSProvider.java:792)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:326)
at javax.xml.ws.Service.getPort(Service.java:92)
at br.gov.ana.integracao.webservice.DadoHidrologicoServiceImplService.beaInvokeSuper(DadoHidrologicoServiceImplService.java)
at br.gov.ana.integracao.webservice.DadoHidrologicoServiceImplService$beaVersion0_18.getDadoHidrologicoServiceImplPort(DadoHidrologicoServiceImplService.java:56)
at br.gov.ana.integracao.webservice.DadoHidrologicoServiceImplService.getDadoHidrologicoServiceImplPort(DadoHidrologicoServiceImplService.java)
at br.gov.ana.carregaXML.model.services.UploadXMLSessionEJBimpl$beaVersion0_11.inserirMedicao(UploadXMLSessionEJBimpl.java:291)
at br.gov.ana.carregaXML.model.services.UploadXMLSessionEJBimpl.inserirMedicao(UploadXMLSessionEJBimpl.java)
at br.gov.ana.carregaXML.model.services.UploadXMLSessionEJBimpl$beaVersion0_11.submeterWebService(UploadXMLSessionEJBimpl.java:261)
at br.gov.ana.carregaXML.model.services.UploadXMLSessionEJBimpl.submeterWebService(UploadXMLSessionEJBimpl.java)
at br.gov.ana.carregaXML.controller.UploadController$beaVersion0_6.submeterArquivo(UploadController.java:75)
at br.gov.ana.carregaXML.controller.UploadController.submeterArquivo(UploadController.java)
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 com.sun.el.parser.AstValue.invoke(Unknown Source)
at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
… 28 more[/code]
Service:
[code] @Override
public Map submeterWebService(EstacaoMedicaoXMLEntity entidade) {
try {
List<EstacaoTO> estacoes = new ArrayList<EstacaoTO>();
String senha = entidade.getSenha();
String login = entidade.getLogin();
for (Estacao e : entidade.getEstacoes()) {
EstacaoTO to = new EstacaoTO();
to.setCodigoFlu(e.getCodigoFlu());
to.setCodigoPlu(e.getCodigoPlu());
for (Medicao m : e.getMedicoes()) {
MedicaoTO mTO = new MedicaoTO();
if (m.getChuva() != null) {
mTO.setChuva(Double.parseDouble(m.getChuva()));
}
if (m.getNivel() != null) {
mTO.setNivel(Double.parseDouble(m.getNivel()));
}
if (m.getVazao() != null) {
mTO.setVazao(Double.parseDouble(m.getVazao()));
}
mTO.setDataMedicao(m.getDataMedicao());
to.getMedicao().add(mTO);
}
estacoes.add(to);
}
System.out.println("\n\n\n Cheguei aqui!!! 123 \n\n\n");
RetornoService retorno = inserirMedicao(login, senha, estacoes);
String mensagem = retorno.getMensagem();
Integer qtd = retorno.getQuantidadeInserida();
Map mapa = new HashMap();
mapa.put("mensagem", mensagem);
mapa.put("quantidade", qtd);
return mapa;
} catch (Exception e) {
System.out.println("Erro de conexão com o Web Service!!!");
e.printStackTrace();
String mensagem = ("Erro de Conexão com o Web Service! Erro: " + e.getMessage());
Integer qtd = 0;
Map mapa = new HashMap();
mapa.put("mensagem", mensagem);
mapa.put("quantidade", qtd);
return mapa;
}
}
private static RetornoService inserirMedicao(String login, String senha, List<EstacaoTO> estacao) {
DadoHidrologicoServiceImplService service = new DadoHidrologicoServiceImplService();
DadoHidrologicoService port = service.getDadoHidrologicoServiceImplPort();
return port.inserirMedicao(login, senha, estacao);
}[/code]
Classe que testa o cliente:
[code]package br.gov.ana.carregaXML.model.services;
public class TestaClient {
public static void main(String[] args) {
List<EstacaoTO> estacoes = new ArrayList<EstacaoTO>();
String senha = "#####";
String login = "#####";
DadoHidrologicoServiceImplService dadoHidrologicoServiceImplService = new DadoHidrologicoServiceImplService();
DadoHidrologicoService clientWebService =
dadoHidrologicoServiceImplService.getDadoHidrologicoServiceImplPort();
EstacaoTO to = new EstacaoTO();
to.setCodigoFlu("12345678");
to.setCodigoPlu("87654321");
MedicaoTO mTO = new MedicaoTO();
mTO.setChuva(new Double(15));
mTO.setNivel(new Double(16));
mTO.setVazao(new Double(17));
mTO.setDataMedicao("16/01/1984");
to.getMedicao().add(mTO);
estacoes.add(to);
System.out.println("\n\n\n Cheguei aqui!!! 123 \n\n\n");
RetornoService retorno = clientWebService.inserirMedicao(login, senha, estacoes);
String mensagem = retorno.getMensagem();
Integer qtd = retorno.getQuantidadeInserida();
System.out.println("Resposta do Servidor: " + mensagem + " quantidade inserida: " + qtd);
DadoHidrologicoServiceImplService service = new DadoHidrologicoServiceImplService();
DadoHidrologicoService port = service.getDadoHidrologicoServiceImplPort();
RetornoService retorno2 = port.inserirMedicao(login, senha, estacoes);
mensagem = retorno2.getMensagem();
qtd = retorno2.getQuantidadeInserida();
System.out.println("Resposta do Servidor2: " + mensagem + " quantidade inserida: " + qtd);
}
}
[/code]
Thx,
PH

