ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tammo van Lessen <tvanles...@gmail.com>
Subject Re: Fault handling
Date Thu, 08 Mar 2012 00:03:05 GMT
Hi,

this seems to be a bug, perhaps related to an OSGi dependency issue.
Could you please file a JIRA? Please also add the exact version number
of servicemix. If possible it would also help if you could attach your
process bundle as well. The JBI/OSGi/ServiceMix deployable is
currently not exactly up-to-date unfortunately.

Thanks,
  Tammo

On Wed, Mar 7, 2012 at 14:47, lucide <lucidelirium@gmail.com> wrote:
>
> 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.
>



-- 
Tammo van Lessen - http://www.taval.de

Mime
View raw message