ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Horwitz" <mike.horw...@gmail.com>
Subject Re: XSL Transformation from within BPEL in ODE
Date Wed, 20 Jun 2007 14:15:35 GMT
Does this work for Ode deployed on ServiceMix? I keep getting a null pointer
exception:

java.lang.NullPointerException
        at org.apache.ode.utils.xsl.XslTransformHandler.parseXSLSheet(
XslTransformHandler.java:84)
        at org.apache.ode.utils.xsl.XslTransformHandler.cacheXSLSheet(
XslTransformHandler.java:106)
        at
org.apache.ode.bpel.elang.xpath10.runtime.JaxenContexts$DoXslTransformFunction.call
(JaxenContexts.java:346)
        at org.jaxen.expr.DefaultFunctionCallExpr.evaluate(
DefaultFunctionCallExpr.java:186)
        at org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:112)
        at org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:688)
        at org.jaxen.BaseXPath.selectNodes(BaseXPath.java:227)
        at
org.apache.ode.bpel.elang.xpath10.runtime.XPath10ExpressionRuntime.evaluate(
XPath10ExpressionRuntime.java:94)
        at
org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.evaluate(
ExpressionLanguageRuntimeRegistry.java:80)
        at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:192)
        at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:356)
        at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:79)
        at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(
JacobVPU.java:451)
        at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
        at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(
BpelRuntimeContextImpl.java:817)
        at org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(
BpelProcess.java:310)
        at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(
BpelEngineImpl.java:311)
        at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(
BpelServerImpl.java:390)
        at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.doExecute(
QuartzSchedulerImpl.java:351)
        at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.access$000(
QuartzSchedulerImpl.java:65)
        at org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$1$1.call
(QuartzSchedulerImpl.java:234)
        at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.execTransaction(
QuartzSchedulerImpl.java:275)
        at org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$2.call(
QuartzSchedulerImpl.java:303)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java
:269)
        at java.util.concurrent.FutureTask.run(FutureTask.java:123)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)

>From the source code this points to this line:

    _transformerFactory.setURIResolver(resolver);

It looks like the transformer factory has not been initialised for the
XslTransformHandler?

I am using Ode 1.0.0 deployed on ServiceMix 3.1.

Thanks

Mike.


On 6/20/07, Alex Boisvert <boisvert@intalio.com> wrote:
>
> Yep, that seems more like it.  (And yes, dashes are allowed in XSLT
> variable
> name which are QNames)
>
> alex
>
>
> On 6/20/07, Michael Horwitz <mike.horwitz@gmail.com> wrote:
> >
> > I'm guessing, but based on the email trail I think you should have
> > something
> > more like:
> >
> >        <bpel:assign>
> >            <bpel:copy>
> >                <bpel:from>
> >                    bpws:doXslTransform("Orchestration.xsl", $ca-
> > response.payload, 'gal-response', $gal-response.payload)
> >                </bpel:from>
> >                <bpel:to variable="response" part="payload"/>
> >            </bpel:copy>
> >        </bpel:assign>
> >
> > The third parameter name is the name of the variable you need to use
> > inside
> > the XSL stylesheet to access the gal-response document (not sure if
> dashes
> > are allowed in XSLT variable names?).
> >
> > Mike.
> >
> >
> > On 6/20/07, Vishal Bhasin <vbhasin@yahoo.com> wrote:
> > >
> > > I'm sorry for being a little slow on this one, I did the following
> > > expression in the BPEL:
> > >
> > >        <bpel:assign>
> > >            <bpel:copy>
> > >                <bpel:from>
> > >                    bpws:doXslTransform("Orchestration.xsl", $ca-
> > > response.payload, $gal-response.payload, $response.payload)
> > >                </bpel:from>
> > >                <bpel:to variable="response" part="payload"/>
> > >            </bpel:copy>
> > >        </bpel:assign>
> > >
> > > I want to merge $ca-response.payload & $gal-response.payload in
> > > $response.payload. In executing this in get the following error:
> > >
> > > error: org.apache.ode.jbi.msgmap.MessageTranslationException: Unmapped
> > > Fault : {http://docs.oasis-open.org/wsbpel/2.0/
> > > process/executable}selectionFailure: An exception occured while
> > evaluating
> > > "{OXPath10Expression bpws:doXslTransform("Orc
> > > hestration.xsl", $ca-response.payload, $gal-response.payload,
> > > $response.payload)}": Error while executing an XPath expre
> > > ssion: net.sf.saxon.trans.StaticError: XPath syntax error at char 104
> in
> > > {...se.payload, $response.paylo...}:
> > >    Cannot find a matching 4-argument function named {
> > > http://schemas.xmlsoap.org/ws/2004/03/business-process}doXslTransf
> > > orm()]
> > >
> > > Can you please help me with finding out what I'm doing wrong?
> > >
> > > Many thanks!
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message