Framework para webservices

Olá

Qual framework vocês recomendam para desenvolver um webservices? Axis2? xFire?

Obrigado

Eu recomendo o Axis2 porque ele tem utilitários que transforam o arquivo WSDL nas classes JAVA que você precisa para fazer um cliente ou o contrário. Além de ser o mais usado.

Há grandes diferenças entre o Axis2 e o CXF (antigo xFire).
O primeiro é útil para Web Services que utilizam o protocolo SOAP. Já o segundo utiliza a abordagem REST.
Qual o melhor? Depende da sua necessidade. Se precisar controlar transação, por exemplo, melhor utilizar um Web Service conversando por SOAP. Mas se precisar de um Web Service que pode ser acessado por uma requisição HTTP/GET, melhor utilizar um REST.
Estude o conceito REST (no site do CXF tem material disso). Vai te ajudar bastante. Me tirou muitas dúvidas.

Olá

[quote=Apache CXF Overview]
Apache CXF is an open source services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI.

CXF includes a broad feature set, but it is primarily focused on the following areas:

* Web Services Standards Support: CXF supports a variety of web service standards including SOAP, the Basic Profile, WSDL, WS-Addressing, WS-Policy, WS-ReliableMessaging, and WS-Security.
* Frontends: CXF supports a variety of "frontend" programming models. CXF implements the JAX-WS APIs (version 2.0 will be TCK compliant). It also includes a "simple frontend" which allows creation of clients and endpoints without annotations. CXF supports both contract first development with WSDL and code first development starting from Java.
* Ease of use: CXF is designed to be intuitive and easy to use. There are simple APIs to quickly build code-first services, Maven plug-ins to make tooling integration easy, JAX-WS API support, Spring 2.0 XML support to make configuration a snap, and much more.
* Binary and Legacy Protocol Support: CXF has been designed to provide a pluggable architecture that supports not only XML but also non-XML type bindings, such as JSON and CORBA, in combination with any type of transport.[/quote]

Não é muito correto afirmar que o AXIS 2 é útil para Web Services que utilizam o protocolo SOAP e que o Apache CXF utiliza a abordagem REST porque fica a impressão de que o Apache CXF só sirva para REST. Pelo menos foi assim que eu entendi sua recomendação.

Em termos de recomendação me sinto absolutamente confuso para recomendar porque acredito que a melhor escolha dependerá do seu problema. Se as aplicações que serão ligadas pelos web services já existem e não podem ser mudadas, nenhum dos frameworks servirá 100%.

Entrando na área de WS, prepare-se para quebrar a cabeça. É de bom alvitre que conheça as tecnologias para as quais o framework serve, como por exemplo SOAP, SOAP with Attachments, WSDL, XLST, JAXB, JAX-WS, JAXR, REST, WS-*, BP-1, etc.

Não fosse pela saída do Dan Diephole (pai da criança) para o Mule, eu recomendaria o Apache CXF. Ele afirma que ainda tocará o CXF mas isto só o futuro dirá.

O AXIS tem o defeito de carregar o nome de um framework que era uma bela droga (AXIS 1). A versão 2 está muito melhor mas não espere grandes facilidades.

Como o Apache CXF trabalha com o JAX-WS, eu ainda começaria por ele mas sem paixão clubística.

[]s
Luca

Me expressei mal mesmo, Luca. Você tem razão. É que eu estudei e testei algumas coisas quando ainda existia o XFire. E não me lembro se a versão que eu baixei trabalhava com JAX-WS, JAX-WSA, JSR-181, SAAJ, SOAP, WSDL, MTOM e “o escambau”. Por tudo o que li na época, assimilei que WS SOAP era mais produto com Axis e WS REST com XFire.
Já na página principal do CXF ele anuncia:

[quote]Support for Standards

  • JAX-WS, JAX-WSA, JSR-181, and SAAJ
  • SOAP 1.1, 1.2, WS-I BasicProfile, WS-Security, WS-Addressing, WS-RM and WS-Policy
  • WSDL 1.1 and 2.0
  • MTOM
    [/quote]

Valeu pela correção!

Olá

Nossa! quantas letrinhas!!! :shock:

Pelo que eu entendi o xFire foi adotado pelo Apache e virou Apache CFX. Ele ainda esta na incubadora, mesmo assim é recomendavel o uso em produção?

No meu caso é simples, apenas preciso fornecer dados conforme parametros de entrada. Não há necessidades de transação.

Obrigado pelos esclarecimentos!

Olá

Não, o XFire se uniu com o Celtix e deu origem a um novo projeto chamado CFX. Ele foi hospedado na Fundação Apache onde todo projeto novo entra como incubator. Mas pode usar sem susto porque já saiu a versão final. Já está na versão 2.0.1

No meu caso é simples, apenas preciso fornecer dados conforme parametros de entrada. Não há necessidades de transação.[/quote]

Acho que o Adolfo estava pensando se precisa de WSDL ou não, se é possível usar REST ou não e coisas assim. O uso de transação éum complicador que vai bem mais além.

Se você pode usar REST, então use e será muito mais feliz. Mas infelizmente nem sempre a gente pode usar REST e então o trabalho de integrar aplicações por web services pode ser muito mais trabalhoso.

Atente para o fato de que o uso de REST exige que você cuide do formato das mensagens.

[]s
Luca

Como o Debbuger e o Luca disseram, depende do seu problema e de seu gosto.

Na época, para o que precisei o Axis 1.4 foi suficiente, mas logo depois vi o XFire e me interessei, um pouco depois vi o JAX-WS e achei interessante a facilidade de trabalhar com ele integrado no Netbeans.

Faça pequenos exemplos de cada um e decida o que agregaria mais produtividade a seu projeto.

Abraços.

Obs.: Aqui no GUJ e na JAVA MAGAZINE tem muitas referências a eles (artigos).

Olá

Faz manualmente para ter certeza de que o erro está no Eclipse e principalmente para saber exatamente quais os passos precisam ser feitos.

[]s
Luca

Ou The Java API for RESTfull Web Services JSR 311

http://developers.sun.com/docs/web/swdp/r1/rest-impl/docs/getting-started.html

http://developers.sun.com/docs/web/swdp/r1/rest-impl/docs/api/index.html

http://weblogs.java.net/blog/mhadley/archive/2007/02/jsr_311_java_ap.html

[ ] 's

Estou migrando um projeto de Axis1 1.4 para Axis2 1.3. Estou utilizando o Eclipse WTP 2.0 para gerar os arquivos necessários. Contudo, estou com um problema e ainda não encontrei nenhuma referência para ele. Me basei no tutorial http://www.eclipse.org/webtools/community/tutorials/BottomUpAxis2WebService/bu_tutorial.html. Em uma primeira tentativa, o deploy funcionou, depois começou a aparecer o seguinte exception: :frowning:

This Web axisService has deployment faults
Error: org.apache.axis2.deployment.DeploymentException: The following error occurred during schema generation: 1 at org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:389) at org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:95) at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:172) at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:78) at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:137) at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:571) at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:141) at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:318) at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:220) at org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:118) at org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices(WarBasedAxisConfigurator.java:272) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:78) at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:500) at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:420) at org.apache.axis2.transport.http.AxisAdminServlet.init(AxisAdminServlet.java:54) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) at org.apache.catalina.core.StandardHost.start(StandardHost.java:736) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:448) at org.apache.catalina.core.StandardServer.start(StandardServer.java:700) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) 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:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) Caused by: org.apache.axis2.deployment.DeploymentException: The following error occurred during schema generation: 1 at org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:354) … 31 more Caused by: java.lang.ArrayIndexOutOfBoundsException: 1 at org.apache.axis2.description.java2wsdl.DefaultSchemaGenerator.processMethods(DefaultSchemaGenerator.java:275) at org.apache.axis2.description.java2wsdl.DefaultSchemaGenerator.generateSchema(DefaultSchemaGenerator.java:181) at org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:352) at org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:347) … 31 more

Estou achando que o Eclipse não está gerando todos os arquivos necessários, ou está gerando incompleto. Pensei eu aumentar a memória do eclipse para ver, mas nada o mesmo erro é apresentado.

:?: Algum de vocês pode me indicar uma solução? Vocês tem algum link para o processo de geração de arquivos do Axis2 via linha de comando, ainda não encontrei informação suficiente.

Agradeço desde já a todos! :slight_smile:

Olá todos,

Resolvi o problema (Tentei via linha de comando e dava uma exceção também). Não sei porque, mas o Axis 2 não gostou da situação de dois métodos com nomes iguais mas com assinaturas diferentes. Na minha classe com a fachada do serviço eu tinha os métodos:

consultarAcao(filtro, pager) e consultarAcao(acao)

Como já tinha tentado quase tudo para resolver, e prestando mais atenção no erro imaginei que o problema era na entrada dos programas de geração do Axis 2. Então resolvi mudar os nomes dos métodos para:

consultarAcao(filtro, pager) e consultarAcaoEntidade(acao)

Com essa modificação, esse erro deixou de acontecer. :smiley:

Valeu

Oi Pessoal,

Ao testar meu sistema, apareceu outro erro. Ainda não sei como tratá-lo, acho que o problema está na hora em que o cliente receber a resposta do servidor. Gerei os arquivos pelo eclipse, ele não mapeou o hibernate.collection? Como faço para mapear algo?

org.apache.axis2.AxisFault: java.lang.RuntimeException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.hibernate.collection
at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:486)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:343)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:389)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at br.gov.chesf.ws.acesso.facade.WSAcessoStub.consultarSistema(WSAcessoStub.java:2391)
at br.gov.chesf.sca.facade.SCAFacade.consultarSistema(SCAFacade.java:653)
at br.gov.chesf.sca.action.entities.SistemaAction.consultaEntidades(SistemaAction.java:402)
at br.gov.chesf.sca.action.entities.SistemaAction.consultaSistemas(SistemaAction.java:355)
at br.gov.chesf.sca.action.entities.SistemaAction.portal(SistemaAction.java:106)
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:585)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:404)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:267)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:229)
at br.gov.chesf.sca.interceptor.SystemMessagesInterceptor.doIntercept(SystemMessagesInterceptor.java:73)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:150)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:167)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:170)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:50)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:504)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:595)

Att,

Olá Pessoal,

Bom, o erro que apresentei:

Consegui resolve-lo, descobri que a classe PersitentSet estava sendo usada em um dos meus objetos, contudo no objeto este tipo era definido como java.util.List e só em tempo de execução é que era instanciado para PersistentSet pelo hibernate. Desta forma ao gerar o serviço e o cliente do web service, não era gerada nenhuma informação sobre o pacote org.hibernate.collection, já que ele não era referenciado explicitamente.

falow

Pessoal,

Estou tendo um problema de time out, já tentei de várias formas tentar aumentar o tempo mas não deu resultado. Ele faz a consulta sem problema, mas no retorno entre o servidor e o cliente é gerada a exceção:

Sex, 31-08-2007 11:30:52.0000000189 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (EXITING) br.com.fabrica.framework.controller.AbstractController.iniciarTransacao(AbstractController.java:28)
Sex, 31-08-2007 11:30:52.0000000204 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (ENTERING) br.gov.chesf.ws.acesso.dao.SistemaDAO.consultar(SistemaDAO.java:63)
Sex, 31-08-2007 11:30:52.0000000923 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (EXITING) br.gov.chesf.ws.acesso.dao.SistemaDAO.consultar(SistemaDAO.java:71)
Sex, 31-08-2007 11:30:52.0000000923 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (ENTERING) br.com.fabrica.framework.controller.AbstractController.finalizaTransacao(AbstractController.java:36)
Sex, 31-08-2007 11:30:52.0000000970 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (EXITING) br.com.fabrica.framework.controller.AbstractController.finalizaTransacao(AbstractController.java:43)
Sex, 31-08-2007 11:30:52.0000000970 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (EXITING) br.gov.chesf.ws.acesso.controller.AcessoController.consultarSistema(AcessoController.java:537)
Sex, 31-08-2007 11:30:52.0000000986 INFO [http-8080-Processor22] root writeCurrent (TraceLogger.java:69) -&gt (EXITING) br.gov.chesf.ws.acesso.facade.WSAcessoFacade.consultarSistema(WSAcessoFacade.java:334)
Sex, 31-08-2007 11:31:17.0000000784 INFO [http-8080-Processor23] transport.http.HTTPSender sendViaPost (HTTPSender.java:194) -&gt Unable to sendViaPost to url[http://localhost:8080/wsacesso/services/WSAcesso]
java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:77)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:105)
at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1115)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1373)
at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1832)
at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1590)
at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:995)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:520)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:191)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:327)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:206)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at br.gov.chesf.ws.acesso.facade.WSAcessoStub.consultarSistema(WSAcessoStub.java:1432)
at br.gov.chesf.sca.facade.SCAFacade.consultarSistema(SCAFacade.java:653)
at br.gov.chesf.sca.action.entities.SistemaAction.consultaEntidades(SistemaAction.java:397)
at br.gov.chesf.sca.action.entities.SistemaAction.consultaSistemas(SistemaAction.java:350)
at br.gov.chesf.sca.action.entities.SistemaAction.portal(SistemaAction.java:101)
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:585)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:404)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:267)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:229)
at br.gov.chesf.sca.interceptor.SystemMessagesInterceptor.doIntercept(SystemMessagesInterceptor.java:68)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:150)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:167)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:170)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:50)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:504)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:595)
org.apache.axis2.AxisFault: Read timed out
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:195)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:327)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:206)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at br.gov.chesf.ws.acesso.facade.WSAcessoStub.consultarSistema(WSAcessoStub.java:1432)
at br.gov.chesf.sca.facade.SCAFacade.consultarSistema(SCAFacade.java:653)
at br.gov.chesf.sca.action.entities.SistemaAction.consultaEntidades(SistemaAction.java:397)
at br.gov.chesf.sca.action.entities.SistemaAction.consultaSistemas(SistemaAction.java:350)
at br.gov.chesf.sca.action.entities.SistemaAction.portal(SistemaAction.java:101)
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:585)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:404)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:267)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:229)
at br.gov.chesf.sca.interceptor.SystemMessagesInterceptor.doIntercept(SystemMessagesInterceptor.java:68)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:150)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:167)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:170)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:50)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:504)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:77)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:105)
at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1115)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1373)
at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1832)
at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1590)
at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:995)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:520)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:191)
… 60 more

Gostaria de saber se alguém tem alguma idéia para esse problema? Estou usando Axis2 1.3, Java 1.5, e Hibernate.
Agradeço