See samples.proxy sample in axis.

-- dims

On 4/21/05, Soactive Inc <[EMAIL PROTECTED]> wrote:
> My environment:
> 
> 1. Win2K
> 2. Apache Tomcat 5.0.24
> 3. Axis 1.2RC3
> 
> My application scenario:
> 
> I would like to use a single proxy web service that deals with
> connecting to the various end web services from client applications. I
> am trying to achieve this by using the request SOAP message to extract
> pieces of information about the end service and then connect to them
> dynamically using the SAAJ API within the proxy web service. I get the
> following error (appended at the end) when I try to use a JAX-RPC
> handler for the service. The error message obviously does not convey
> much information for me to resolve the situation.
> 
> Any ideas that go toward resolving this issue would be appreciated.
> 
> -Arun
> 
> public final class ServiceJAXHandler implements Handler {
>     private HandlerInfo handlerInfo;
> 
>     /**
>      * Initializes the instance of the handler.
>      */
>     public void init(HandlerInfo hi) {
>         handlerInfo = hi;
>     }
> 
>     /**
>      * Destroys the Handler instance.
>      */
>     public void destroy() {
>     }
> 
>     public QName[] getHeaders() {
>         return handlerInfo.getHeaders();
>     }
> 
>     /**
>      * Specifies that the SOAP request message be logged to a log file
> before the
>      * message is sent to the Java class backend component
>      */
>     public boolean handleRequest(MessageContext mc) {
>         try {
>             SOAPMessageContext context = (SOAPMessageContext) mc;
> 
>             System.out.println("##### Printing Request Message....");
>             SOAPMessage message = context.getMessage();
>             message.writeTo(System.out);
> 
>             HttpServletRequest servletRequest =
>                     (HttpServletRequest)
> 
> context.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);
>             System.out.println("##### Request URL: " +
> servletRequest.getRequestURL());
> 
>             SOAPMessage responseSOAPMessage = <logic deliberately
> ommitted here...>
> 
>             context.setMessage(responseSoapMessage);
> 
>             System.out.println("##### Leaving Handler Code....");
> 
>         } catch (Exception ex) {
>             // throw exception
>         }
>         return false;
>     }
> 
>     /**
>      * Specifies that the SOAP response message be logged to a log
> file before the
>      * message is sent back to the client application that invoked the
> Web service.
>      */
>     public boolean handleResponse(MessageContext mc) {
> 
>         SOAPMessageContext messageContext = (SOAPMessageContext) mc;
> 
>         System.out.println("** Response: " +
> messageContext.getMessage().toString());
>         return false;
>     }
> 
>     /**
>      * Specifies that a message be logged to the log file if a SOAP fault is
>      * thrown by the Handler instance.
>      */
>     public boolean handleFault(MessageContext mc) {
>         SOAPMessageContext messageContext = (SOAPMessageContext) mc;
> 
>         System.out.println("** Fault: " +
> messageContext.getMessage().toString());
>         return false;
>     }
> 
> ========================================================================================
> 
> AxisFault
>  faultCode: {http://xml.apache.org/axis/}Server
>  faultSubcode:
>  faultString: Server Error
>  faultActor:
>  faultNode:
>  faultDetail:
>         {http://xml.apache.org/axis/}stackTrace:Server Error
>         at 
> org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:473)
>         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
>         at 
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:697)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at
> 
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327
> )
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
> terChain.java:237)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
> .java:157)
>         at
> 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
> 214)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> 
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextVal
> ve.java:198)
>         at
> 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
> 152)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:102)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:10
> 9)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>         at 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>         at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
>         at
> 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnecti
> on(Http11Protocol.java:702)
>         at 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
>         at
> 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:6
> 44)
>         at java.lang.Thread.run(Thread.java:536)
> 
>         {http://xml.apache.org/axis/}hostname:HOSTNAME
> 
> Server Error
>         at
> 
> org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
> 
>         at
> 
> org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
>         at
> 
> org.apache.axis.encoding.DeserializationContext.endElement(DeserializationConte
> xt.java:1077)
>         at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
> Source)
>         at 
> org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
> 
> Source)
>         at
> 
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher
> .dispatch(Unknown Source)
>         at 
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> 
> Sour
> ce)
>         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
>         at javax.xml.parsers.SAXParser.parse(Unknown Source)
>         at
> 
> org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.ja
> va:225)
>         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
>         at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
>         at
> 
> org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecke
> r.java:62)
>         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:173)
>         at org.apache.axis.client.Call.invokeEngine(Call.java:2737)
>         at org.apache.axis.client.Call.invoke(Call.java:2720)
>         at org.apache.axis.client.Call.invoke(Call.java:2396)
>         at org.apache.axis.client.Call.invoke(Call.java:2319)
>         at org.apache.axis.client.Call.invoke(Call.java:1776)
>         at
> 
> org.apache.jsp.jsp.admin.ServiceDetail_jsp.invokeSampleAxisService(ServiceDetai
> l_jsp.java:164)
>         at
> 
> org.apache.jsp.jsp.admin.ServiceDetail_jsp._jspService(ServiceDetail_jsp.java:3
> 46)
>         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
> 
>         at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
> terChain.java:237)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
> .java:157)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.jav
> a:703)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.
> java:589)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.ja
> va:499)
>         at
> 
> org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
> 
>         at 
> org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:581)
>         at 
> org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:137)
>         at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:177)
>         at 
> org.apache.struts.taglib.tiles.InsertTag.doInclude(InsertTag.java:756)
>         at
> 
> org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(InsertTag.java:
> 881)
>         at 
> org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:473)
>         at 
> org.apache.jsp.layout.companyServiceDefault_jsp._jspx_meth_tiles_insert_2(gri
> dscopeServiceDefault_jsp.java:144)
>         at 
> org.apache.jsp.layout.companyServiceDefault_jsp._jspService(companyServiceD
> efault_jsp.java:73)
>         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
> 
>         at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
> terChain.java:237)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
> .java:157)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.jav
> a:703)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispat
> cher.java:463)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.
> java:398)
>         at
> 
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.ja
> va:312)
>         at
> 
> org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
> 
>         at
> 
> org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.j
> ava:274)
>         at
> 
> org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesReque
> stProcessor.java:254)
>         at
> 
> org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequest
> Processor.java:309)
>         at 
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
>         at 
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1480)
>         at 
> org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:506)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
> terChain.java:237)
>         at
> 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
> .java:157)
>         at
> 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
> 214)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> 
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextVal
> ve.java:198)
>         at
> 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
> 152)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:102)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:10
> 9)
>         at
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.j
> ava:104)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>         at 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>         at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
>         at
> 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnecti
> on(Http11Protocol.java:702)
>         at 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
>         at
> 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:6
> 44)
>         at java.lang.Thread.run(Thread.java:536)
> 


-- 
Davanum Srinivas - http://webservices.apache.org/~dims/

Reply via email to