You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Gary L Peskin <ga...@firstech.com> on 2001/03/09 18:46:18 UTC

Re: Extension Functions & Transformation Thread in J2EE. Passing Context to Extenuation Functions explicitly via Transformer

> "Roytman, Alex" wrote:
> Transformation thread created by Xalan does not inherit any properties
> of the thread where transformer was created. This prevents Xalan
> extensions from getting proper context provided by J2EE containers
> (i.e. InitialContext etc.) which is associated with invoking thread.
> PS
> Are you using one threads in Xalan1?
> All my extensions which rely on new InitialContext() being thread
> specific
> work just fine under Xalan1. Of course they break with Xalan2

Hi, Alex --

I'm not sure what you mean here.  If you mean that your extensions rely
on being able to tie a specific InitialContext to a particular
transformer, can't you just pass in your transformer (ie thread)
-specific information with a parameter in setParameter.

> Do you think it might be a good idea to allow to set attributes for
> transformer
> 
> myTransformer.setAttribute(String name, Object value);
> 
> so they can be accessed in an extension function/element
>
> I believe it will be very useful apart from second thread related
> issues.

Can't you do this with setParameter?

> I noticed that if we do myTransformer.setParameter(name, value)
> this parameter is accessible by both <xsl:value-of> and
> XPathContext.getVariable()
> even though it was not declared in the stylesheet - no errors/warnings
> raised
> Is it intended behavior or just a bug? If it is a bug would you fix it
> for both
> <xsl:value-of>  and XPathContext.getVariable()? may be you can let
> XPathContext.getVariable() to access it?

This is a bug.  I have entered into bugzilla as bug 914.  I'm working on
a fix which should be uploaded shortly (I hope!).  Look for the bugzilla
postings to the list for bug 914.

Gary