[ 
https://issues.apache.org/jira/browse/ODE-296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12600318#action_12600318
 ] 

Matthieu Riou commented on ODE-296:
-----------------------------------

I'm kind of reluctant to modify the OProcess. There are several reasons. First 
the OProcess is part of our serialized process model and we have to be careful 
about modifying it as it can make older versions incompatible with the new 
format. Second I'd like to avoid binding it to a specific location in the 
filesystem. The compiled representation of a process can be moved around and 
reused (think clustering for example).

We actually have that location information even if it's not really immediate 
right now so you'll have to bear with me a little :) XslRuntimeUriResolver is 
created by the JaxpFunctionResolver and therefore could get information from 
the EvaluationContext that's already referenced by the function resolver. The 
EvaluationContext is implemented by ExprEvaluationContextImpl which references 
BpelRuntimeContext. BpelRuntimeContextImpl has a reference to BpelProcess that 
has a reference to ProcessConf. And ProcessConf has the getBaseUri() method 
you're looking for.  A long way to follow :)

So if you don't mind doing a bit of refactoring on your patch, it would be nice 
if you used what I just described to get the base URI instand of storing it on 
OProcess. You'll need to:

 * add a method on BpelRuntimeContextImpl and BpelRuntimeContext (like 
getBaseResourceURI() for example)
 * add the same method on EvaluationContext and ExprEvaluationContextImpl
 * pass the base URI to XslRuntimeUriResolver.

Does that make sense? Thanks a lot for looking through this and for your patch!!

> Support XSLT's document() function
> ----------------------------------
>
>                 Key: ODE-296
>                 URL: https://issues.apache.org/jira/browse/ODE-296
>             Project: ODE
>          Issue Type: New Feature
>          Components: BPEL Runtime
>            Reporter: Ciaran Jessup
>             Fix For: 1.2
>
>         Attachments: AddDocumentSupport.patch, HelloWorld2.zip
>
>
> Currently the BPEL runtime does not support executing XSL stylesheets that 
> use the XSLT document() function to retrieve resources local to the process 
> directory.  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to