There already is a FailoverStrategy capability built into CXF where CXF will automatically redirect a request to a different server. See org.apache.cxf.clustering.FailoverStrategy
That may provide the stuff you need. Dan On Tuesday 21 August 2007, kayteeem wrote: > Hi all, > > What is the correct way of handling faults if the Remote Service > becomes unavailable at some time when the Client tries to call the > service. > > For example, lets say the client and server are communicating and all > is well, then at some time later the Remote Service is "turned off" > (or address was changed). > > After reading the CXF > guide(http://cwiki.apache.org/CXF20DOC/interceptors.html) an > Interceptor seems the correct way to handle if a fault is thrown, > which is what happens when I turn off the remote service, and then try > to make a call from the client. > > Fault thrown is: > INFO: Interceptor has thrown exception, unwinding now > org.apache.cxf.interceptor.Fault: Could not send Message. > at > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndi > ngInterceptor.handleMessage(MessageSenderInterceptor.java:64) > > Exception from client Proxy is: > Throwable: java.lang.NoSuchMethodError: createFault > Stack Trace: > java.lang.NoSuchMethodError: createFault > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:15 > 1) > > So I inserted my own Interceptor and managed to register it to call my > overridden handleFault(SoapMessage soapMessage) method: > > My Interceptor: > > public class CannotInvokeMethodInterceptor extends > AbstractSoapInterceptor { > > public CannotInvokeMethodInterceptor(){ > super (Phase.SETUP); > getBefore().add(MessageSenderInterceptor.class.getName()); > System.out.println("Inside the method of Interceptor"); > } > > @Override > public void handleFault(SoapMessage soapMessage) { > System.out.println("\n\n\n"); > System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); > System.out.println("Inside the handleFault method of > Interceptor"); > System.out.println("SOAP Message: " + soapMessage); > } > > public void handleMessage(SoapMessage arg0) throws Fault { > System.out.println("Inside the handleMessage method of > Interceptor"); } > > } > > Registering my Interceptor on the Client: > > HelloWorld hwClient = (HelloWorld)ctx.getBean("client"); > > CannotInvokeMethodInterceptor interceptor = new > CannotInvokeMethodInterceptor (); > Client cxfClient = ClientProxy.getClient(hwClient); > cxfClient.getOutInterceptors().add(interceptor); > cxfClient.getOutFaultInterceptors().add(interceptor); > > QUESTION: > What should I do inside the handleFault() method, which is being > called? > > NOTE: I am using CXF 2.0.1, in conjunction with Spring. > > Thanks > Michael > > Full Stacktrace: > > Inside the method of Interceptor > Inside the handleMessage method of Interceptor > 21/08/2007 14:08:19 org.apache.cxf.phase.PhaseInterceptorChain > doIntercept INFO: Interceptor has thrown exception, unwinding now > org.apache.cxf.interceptor.Fault: Could not send Message. > at > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndi > ngInterceptor.handleMessage(MessageSenderInterceptor.java:64) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept > orChain.java:207) > at > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:255) at > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:206) at > org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73) > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:13 > 5) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > at > org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(F > lowController.java:869) > at > org.apache.beehive.netui.pageflow.FlowController.getActionMethodForwa > rd(FlowController.java:808) > at > org.apache.beehive.netui.pageflow.FlowController.internalExecute(Flow > Controller.java:477) > at > org.apache.beehive.netui.pageflow.PageFlowController.internalExecute( > PageFlowController.java:305) > at > org.apache.beehive.netui.pageflow.FlowController.execute(FlowControll > er.java:335) > at > org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execu > te(FlowControllerAction.java:51) > at > org.apache.struts.action.RequestProcessor.processActionPerform(Reques > tProcessor.java:419) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201 > (PageFlowRequestProcessor.java:95) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunn > er.execute(PageFlowRequestProcessor.java:2042) > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptor >s.java:63) > > at > org.apache.beehive.netui.pageflow.interceptor.action.ActionIntercepto > r.wrapAction(ActionInterceptor.java:167) > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.invoke(ActionInterceptors.java: >49) at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptor >s.java:57) > > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors.wrapAction(ActionInterceptors.java:86) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processAct > ionPerform(PageFlowRequestProcessor.java:2114) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja > va:224) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInt > ernal(PageFlowRequestProcessor.java:554) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(Pa > geFlowRequestProcessor.java:851) > at > org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(A > utoRegisterActionServlet.java:630) > Caused by: java.net.SocketException: Socket Closed > at > java.net.PlainSocketImpl.setOption(PlainSocketImpl.java:201) at > java.net.Socket.setTcpNoDelay(Socket.java:826) > at > weblogic.net.http.HttpClient.openServer(HttpClient.java:366) at > weblogic.net.http.HttpClient.openServer(HttpClient.java:430) at > weblogic.net.http.HttpClient.<init>(HttpClient.java:159) at > weblogic.net.http.HttpClient.<init>(HttpClient.java:149) at > weblogic.net.http.HttpClient.New(HttpClient.java:265) at > weblogic.net.http.HttpURLConnection.connect(HttpURLConnection.java:17 > 0) > at > weblogic.net.http.HttpURLConnection.getInputStream(HttpURLConnection. > java:362) > at > weblogic.net.http.SOAPHttpURLConnection.getInputStream(SOAPHttpURLCon > nection.java:36) > at > weblogic.net.http.HttpURLConnection.getResponseCode(HttpURLConnection > .java:963) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleR > esponse(HTTPConduit.java:1824) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(H > TTPConduit.java:1751) > at > org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:6 > 6) > at > org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:573) > > at > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndi > ngInterceptor.handleMessage(MessageSenderInterceptor.java:62) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept > orChain.java:207) > at > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:255) at > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:206) at > org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73) > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:13 > 5) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > at > org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(F > lowController.java:869) > at > org.apache.beehive.netui.pageflow.FlowController.getActionMethodForwa > rd(FlowController.java:808) > at > org.apache.beehive.netui.pageflow.FlowController.internalExecute(Flow > Controller.java:477) > at > org.apache.beehive.netui.pageflow.PageFlowController.internalExecute( > PageFlowController.java:305) > > > > > ZZZZZZZZZZZZZZZZZZZZZZZZZZZ > Inside the handleFault method of Interceptor > SOAP Message: [EMAIL PROTECTED] > <21/08/2007 02:08:19 PM EST> <Error> > <org.apache.beehive.netui.pageflow.internal > .DefaultExceptionsHandler> <000000> <Throwable > java.lang.NoSuchMethodError unhan > dled by the current page flow (and any shared flow) > > Throwable: java.lang.NoSuchMethodError: createFault > Stack Trace: > java.lang.NoSuchMethodError: createFault > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:15 > 1) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > at > org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(F > lowController.java:869) > at > org.apache.beehive.netui.pageflow.FlowController.getActionMethodForwa > rd(FlowController.java:808) > at > org.apache.beehive.netui.pageflow.FlowController.internalExecute(Flow > Controller.java:477) > at > org.apache.beehive.netui.pageflow.PageFlowController.internalExecute( > PageFlowController.java:305) > at > org.apache.beehive.netui.pageflow.FlowController.execute(FlowControll > er.java:335) > at > org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execu > te(FlowControllerAction.java:51) > at > org.apache.struts.action.RequestProcessor.processActionPerform(Reques > tProcessor.java:419) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201 > (PageFlowRequestProcessor.java:95) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunn > er.execute(PageFlowRequestProcessor.java:2042) > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptor >s.java:63) > > at > org.apache.beehive.netui.pageflow.interceptor.action.ActionIntercepto > r.wrapAction(ActionInterceptor.java:167) > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.invoke(ActionInterceptors.java: >49) at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptor >s.java:57) > > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors.wrapAction(ActionInterceptors.java:86) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processAct > ionPerform(PageFlowRequestProcessor.java:2114) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja > va:224) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInt > ernal(PageFlowRequestProcessor.java:554) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(Pa > geFlowRequestProcessor.java:851) > at > org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(A > utoRegisterActionServlet.java:630) > at > org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageF > lowActionServlet.java:157) > at > org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) > at > org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlow > Utils.java:1169) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.exec > uteAction(ScopedContentCommonSupport.java:688) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.proc > essActionInternal(ScopedContentCommonSupport.java:144) > > <21/08/2007 02:08:19 PM EST> <Error> > <org.apache.beehive.netui.pageflow.internal > .DefaultExceptionsHandler> <000000> <Unhandled Page Flow Exception > > Throwable: java.lang.NoSuchMethodError: createFault > Stack Trace: > java.lang.NoSuchMethodError: createFault > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:15 > 1) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > at > org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(F > lowController.java:869) > at > org.apache.beehive.netui.pageflow.FlowController.getActionMethodForwa > rd(FlowController.java:808) > at > org.apache.beehive.netui.pageflow.FlowController.internalExecute(Flow > Controller.java:477) > at > org.apache.beehive.netui.pageflow.PageFlowController.internalExecute( > PageFlowController.java:305) > at > org.apache.beehive.netui.pageflow.FlowController.execute(FlowControll > er.java:335) > at > org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execu > te(FlowControllerAction.java:51) > at > org.apache.struts.action.RequestProcessor.processActionPerform(Reques > tProcessor.java:419) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201 > (PageFlowRequestProcessor.java:95) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunn > er.execute(PageFlowRequestProcessor.java:2042) > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptor >s.java:63) > > at > org.apache.beehive.netui.pageflow.interceptor.action.ActionIntercepto > r.wrapAction(ActionInterceptor.java:167) > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.invoke(ActionInterceptors.java: >49) at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptor >s.java:57) > > at > org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI > nterceptors.wrapAction(ActionInterceptors.java:86) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processAct > ionPerform(PageFlowRequestProcessor.java:2114) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja > va:224) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInt > ernal(PageFlowRequestProcessor.java:554) > at > org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(Pa > geFlowRequestProcessor.java:851) > at > org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(A > utoRegisterActionServlet.java:630) > at > org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageF > lowActionServlet.java:157) > at > org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) > at > org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlow > Utils.java:1169) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.exec > uteAction(ScopedContentCommonSupport.java:688) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.proc > essActionInternal(ScopedContentCommonSupport.java:144) > > <21/08/2007 02:08:19 PM EST> <Error> <netuix> <BEA-423147> <Exception > [com.bea.p > ortlet.adapter.scopedcontent.ActionLookupFailedException: > java.lang.NoSuchMethod > Error: createFault] thrown while trying to do task > [handlePostbackData] in class > [com.bea.netuix.servlets.controls.content.PageFlowContent]. > com.bea.portlet.adapter.scopedcontent.ActionLookupFailedException: > java.lang.NoS > uchMethodError: createFault > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.exec > uteAction(ScopedContentCommonSupport.java:699) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.proc > essActionInternal(ScopedContentCommonSupport.java:144) > at > com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction( > PageFlowStubImpl.java:107) > at > com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiAct > ionHandler.java:99) > at > com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedActi > on(NetuiContent.java:180) > Truncated. see log file for complete stacktrace > java.lang.NoSuchMethodError: createFault > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:15 > 1) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > Truncated. see log file for complete stacktrace > > <21/08/2007 02:08:19 PM EST> <Error> <netuix> <BEA-423405> <An > exception [java.l > ang.NoSuchMethodError: createFault] was thrown while rendering the > content at [/ > com/axa/wsclient/helloWorld/HelloWorldController.jpf]. > com.bea.portlet.adapter.scopedcontent.ActionLookupFailedException: > java.lang.NoS > uchMethodError: createFault > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.exec > uteAction(ScopedContentCommonSupport.java:699) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.proc > essActionInternal(ScopedContentCommonSupport.java:144) > at > com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction( > PageFlowStubImpl.java:107) > at > com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiAct > ionHandler.java:99) > at > com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedActi > on(NetuiContent.java:180) > Truncated. see log file for complete stacktrace > java.lang.NoSuchMethodError: createFault > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:15 > 1) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > Truncated. see log file for complete stacktrace > > <21/08/2007 02:08:19 PM EST> <Error> <netuix> <BEA-423137> <There was > an error l > oading the requested URI > /com/axa/wsclient/helloWorld/HelloWorldController.jpf.> > > <21/08/2007 02:08:19 PM EST> <Error> <netuix> <BEA-423223> <There was > an error w > hile running a lifecycle stage :: Lifecycle: UIControl.render :: for > the control > > :: null ::. > > com.bea.netuix.nf.UIControlException: > com.bea.portlet.adapter.scopedcontent.Acti > onLookupFailedException: java.lang.NoSuchMethodError: createFault > at > com.bea.netuix.servlets.controls.content.PageFlowContent.checkPreRend > erExceptions(PageFlowContent.java:130) > at > com.bea.netuix.servlets.controls.content.NetuiContent.beginRender(Net > uiContent.java:339) > at > com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:486) > > at > com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWa > lker.java:530) > at > com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWa > lker.java:541) > Truncated. see log file for complete stacktrace > com.bea.portlet.adapter.scopedcontent.ActionLookupFailedException: > java.lang.NoS > uchMethodError: createFault > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.exec > uteAction(ScopedContentCommonSupport.java:699) > at > com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.proc > essActionInternal(ScopedContentCommonSupport.java:144) > at > com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction( > PageFlowStubImpl.java:107) > at > com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiAct > ionHandler.java:99) > at > com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedActi > on(NetuiContent.java:180) > Truncated. see log file for complete stacktrace > java.lang.NoSuchMethodError: createFault > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:15 > 1) > at > $Proxy53.sayHi(Ljava.lang.String;)Ljava.lang.String;(Unknown Source) > at > com.axa.wsclient.helloWorld.HelloWorldController.helloWorldAction(Hel > loWorldController.java:55) > at > jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[ > Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source) > at > java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object; > I)Ljava.lang.Object;(Unknown Source) > Truncated. see log file for complete stacktrace -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727 C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
