ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From lucide <lucidelir...@gmail.com>
Subject Fault handling
Date Wed, 07 Mar 2012 13:47:02 GMT

Hi,
I am in desperate need for any help about understanding fault handing in
apache ode. Whenever an invoke receives an soap-fault, I expect a catchAll
inside invoke tag should catch it, right? 

I have been playing with bpel and catchAll's for some time, and able to use
them for failures, and for time-out / connection like problems during
invoke.  Also, catchAll is able to catch errors when exceptions are thrown
after invoking another jbi bundle. 

But below log shows, a soap fault causes a JacobVpu null parent error. Do I
explicitly need to add a catch with a fault-type?




 [org.apache.servicemix.nmr.core.ChannelImpl.dispatch(ChannelImpl.java:274)] 
 2012-03-06 18:20:26,176 | DEBUG | rovider-thread-7 | NMR                             
| 83 - org.apache.servicemix.nmr.core - 1.4.0 | Channel
org.apache.servicemix.nmr.core.ChannelImpl@7bb3be4f delivering exchange: [
  id:        3b24f908-dff6-40d4-9aa1-4b1afc4d87b2
  mep:       InOut
  status:    Active
  role:      Provider
  target:    PropertyMatchingReference[{ENDPOINT_NAME=WsPort,
SERVICE_NAME={http://service}WsService}]
  operation: {http://service}operation
  properties: [
      javax.jbi.servicedesc.ServiceEndpoint =
org.apache.servicemix.jbi.runtime.impl.EndpointImpl@1dfe626f
      javax.jbi.messaging.MessageExchange =
org.apache.servicemix.jbi.runtime.impl.InOutImpl@355ae139
      javax.jbi.messaging.sendSync = <null>
      javax.jbi.transaction.jta = <null>
      javax.jbi.ServiceEndpoint =
org.apache.servicemix.jbi.runtime.impl.ServiceEndpointImpl@713d7dc3
      javax.jbi.ServiceName = {http://service}WsService
  ]
]
 [org.apache.servicemix.nmr.core.ChannelImpl.deliver(ChannelImpl.java:198)] 
 2012-03-06 18:20:26,183 | DEBUG | pool-10-thread-8 | SimpleScheduler                 
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Beginning a new transaction
[org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:275)]

 2012-03-06 18:20:26,184 | DEBUG | pool-10-thread-8 | MessageExchangeImpl             
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | GET MEX property
org.apache.ode.jbi.msgmap.Mapper =
org.apache.ode.jbi.msgmap.ServiceMixMapper
[org.apache.ode.bpel.engine.MessageExchangeImpl.getProperty(MessageExchangeImpl.java:218)]

 2012-03-06 18:20:26,184 | DEBUG | pool-10-thread-8 | ServiceMixMapper                
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | toODE() normalized message:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Fault xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <faultcode>soap:Server</faultcode>
  <faultstring>Fault occurred while processing.</faultstring>
</soap:Fault>

[org.apache.ode.jbi.msgmap.ServiceMixMapper.toODE(ServiceMixMapper.java:215)] 
 2012-03-06 18:20:26,184 | DEBUG | pool-10-thread-8 | ServiceMixMapper                
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | toODE() rpc-like message 
[org.apache.ode.jbi.msgmap.ServiceMixMapper.toODE(ServiceMixMapper.java:243)] 
 2012-03-06 18:20:26,184 | DEBUG | pool-10-thread-8 | ServiceMixMapper                
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | toODE() ode message:
<?xml version="1.0" encoding="UTF-8"?>
<soap:Fault xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <faultcode>soap:Server</faultcode>
  <faultstring>Fault occurred while processing.</faultstring>
</soap:Fault>

[org.apache.ode.jbi.msgmap.ServiceMixMapper.toODE(ServiceMixMapper.java:246)] 
 2012-03-06 18:20:26,185 | DEBUG | pool-10-thread-8 |
PartnerRoleMessageExchangeImpl   | 212 - org.apache.ode.ode-jbi-bundle -
1.3.5 | reply mex=4611686018427387910
[org.apache.ode.bpel.engine.PartnerRoleMessageExchangeImpl.reply(PartnerRoleMessageExchangeImpl.java:84)]

 2012-03-06 18:20:26,185 | DEBUG | pool-10-thread-8 |
PartnerRoleMessageExchangeImpl   | 212 - org.apache.ode.ode-jbi-bundle -
1.3.5 | create work event for mex=4611686018427387910
[org.apache.ode.bpel.engine.PartnerRoleMessageExchangeImpl.continueAsync(PartnerRoleMessageExchangeImpl.java:134)]

 2012-03-06 18:20:26,185 | DEBUG | pool-10-thread-8 | SimpleScheduler                 
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Commiting on
org.apache.aries.transaction.GeronimoPlatformTransactionManager@2b3765c8...
[org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:289)]

 2012-03-06 18:20:26,185 | DEBUG | pool-9-thread-14 | SimpleScheduler                 
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Beginning a new transaction
[org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:275)]

 2012-03-06 18:20:26,185 | DEBUG | pool-9-thread-14 | InstanceLockManager             
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 |
Thread[pool-9-thread-14,5,spring-osgi-extender[14d6c410]-threads]:
lock(iid=3, time=1MICROSECONDS)
[org.apache.ode.bpel.engine.InstanceLockManager.lock(InstanceLockManager.java:50)] 
 2012-03-06 18:20:26,186 | DEBUG | pool-9-thread-14 | InstanceLockManager             
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 |
Thread[pool-9-thread-14,5,spring-osgi-extender[14d6c410]-threads]:
lock(iid=3, time=1MICROSECONDS)-->GRANTED
[org.apache.ode.bpel.engine.InstanceLockManager.lock(InstanceLockManager.java:63)] 
 2012-03-06 18:20:26,186 | DEBUG | pool-9-thread-14 | BpelProcess                     
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | >>
handleJobDetails(jobData=JobDetails( instanceId: 3 mexId:
4611686018427387910 processId: null type: INVOKE_RESPONSE channel: 33
correlatorId: null correlationKeySet: null retryCount: null inMem: true
detailsExt: {}))
[org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:415)] 
 2012-03-06 18:20:26,186 | DEBUG | pool-9-thread-14 | BpelRuntimeContextImpl          
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | BpelRuntimeContextImpl
created for instance 3. INDEXED STATE={}
[org.apache.ode.bpel.engine.BpelRuntimeContextImpl.<init>(BpelRuntimeContextImpl.java:185)]

 2012-03-06 18:20:26,186 | DEBUG | pool-9-thread-14 | BpelProcess                     
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | InvokeResponse event for iid
3
[org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:453)] 
 2012-03-06 18:20:26,186 | DEBUG | pool-9-thread-14 | BpelRuntimeContextImpl          
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Invoking message response
for mexid 4611686018427387910 and channel 33
[org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invocationResponse(BpelRuntimeContextImpl.java:1088)]

 2012-03-06 18:20:26,186 | DEBUG | pool-9-thread-14 | JacobVPU                        
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | injecting (...)
[org.apache.ode.jacob.vpu.JacobVPU.inject(JacobVPU.java:215)] 
 2012-03-06 18:20:26,187 | DEBUG | pool-9-thread-14 | BpelRuntimeContextImpl          
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Triggering response
[org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invocationResponse2(BpelRuntimeContextImpl.java:1107)]

 2012-03-06 18:20:26,190 | DEBUG | pool-9-thread-14 | ScopeFrame                      
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Initialize variable:
name={Variable
__PROCESS_SCOPE:WsServiceFlow.airQueryResponse:OMessageVarType#22({http://service}operationResponse)}
value=<?xml version="1.0" encoding="UTF-8"?>
<soap:Fault
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>soap:Server</faultcode><faultstring>Fault
occurred while processing.</faultstring></soap:Fault>
[org.apache.ode.bpel.runtime.ScopeFrame.initializeVariable(ScopeFrame.java:236)] 
 2012-03-06 18:20:26,191 | DEBUG | pool-9-thread-14 | BpelDAOConnectionImpl           
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Removing mex
4611686018427387910 from memory store.
[org.apache.ode.bpel.memdao.BpelDAOConnectionImpl.removeMessageExchange(BpelDAOConnectionImpl.java:344)]

 2012-03-06 18:20:26,198 | DEBUG | pool-9-thread-14 |
JaxenNamespaceContextAdapter     | 212 - org.apache.ode.ode-jbi-bundle -
1.3.5 | translateNamespacePrefixToUri()=null
[org.apache.ode.bpel.elang.xpath10.runtime.JaxenNamespaceContextAdapter.translateNamespacePrefixToUri(JaxenNamespaceContextAdapter.java:42)]

 2012-03-06 18:20:26,199 | ERROR | pool-9-thread-14 | JacobVPU                        
| 212 - org.apache.ode.ode-jbi-bundle - 1.3.5 | Method "run" in class
"org.apache.ode.bpel.runtime.SWITCH" threw an unexpected exception.
[org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:463)] 
 java.lang.IllegalArgumentException: null parent
	at
org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:768)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:763)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.runtime.ScopeFrame.getPartData(ScopeFrame.java:276)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.runtime.ScopeFrame.fetchVariableData(ScopeFrame.java:214)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.runtime.ExprEvaluationContextImpl.readVariable(ExprEvaluationContextImpl.java:96)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.elang.xpath10.runtime.JaxenContexts.getVariableValue(JaxenContexts.java:173)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.jaxen.ContextSupport.getVariableValue(ContextSupport.java:215)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.Context.getVariableValue(Context.java:196)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.expr.DefaultVariableReferenceExpr.evaluate(DefaultVariableReferenceExpr.java:103)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.expr.DefaultPathExpr.evaluate(DefaultPathExpr.java:137)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.expr.DefaultEqualityExpr.evaluate(DefaultEqualityExpr.java:75)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:102)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:674)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.jaxen.BaseXPath.booleanValueOf(BaseXPath.java:310)[210:wrap_mvn_jaxen_jaxen_1.1.1:0]
	at
org.apache.ode.bpel.elang.xpath10.runtime.XPath10ExpressionRuntime.evaluateAsBoolean(XPath10ExpressionRuntime.java:82)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.evaluateAsBoolean(ExpressionLanguageRuntimeRegistry.java:72)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.runtime.SWITCH.run(SWITCH.java:54)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at sun.reflect.GeneratedMethodAccessor150.invoke(Unknown Source)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_27]
	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_27]
	at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:968)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:456)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:460)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:450)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.scheduler.simple.SimpleScheduler$RunJob$1.call(SimpleScheduler.java:518)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.scheduler.simple.SimpleScheduler$RunJob$1.call(SimpleScheduler.java:512)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:284)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:239)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:512)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:496)[212:org.apache.ode.ode-jbi-bundle:1.3.5]
	at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_27]
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_27]
	at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_27]
	at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.0_27]
	at java.lang.Thread.run(Thread.java:662)[:1.6.0_27]

-- 
View this message in context: http://old.nabble.com/Fault-handling-tp33458106p33458106.html
Sent from the Apache Ode User mailing list archive at Nabble.com.


Mime
View raw message