ode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xuli (JIRA)" <j...@apache.org>
Subject [jira] Updated: (ODE-101) TransformerFactory is used without initialization in Start()
Date Mon, 19 Mar 2007 16:05:32 GMT

     [ https://issues.apache.org/jira/browse/ODE-101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Xuli updated ODE-101:
---------------------

    Affects Version/s: Incubator

I solved this problem by adding the following lines to org.apache.ode.jbi.OdeServiceUnit.Start():

        if (_registered.size() != pids.size()) {
            for (QName pid : new ArrayList<QName>(_registered))
                try {
                    _ode._server.unregister(pid);
                    _registered.remove(pid);
                } catch (Exception ex) {
                    __log.error("Unable to unload " + pid, ex);
                }
        }
        else
        {
-------------------------------------------------------------------------------------------------------
            // Initialize _transformerFactory member of XslTransformHandler
            TransformerFactory trsf = new net.sf.saxon.TransformerFactoryImpl();
            XslTransformHandler.getInstance().setTransformerFactory(trsf);
-------------------------------------------------------------------------------------------------------
       }


> TransformerFactory is used without initialization in Start()
> ------------------------------------------------------------
>
>                 Key: ODE-101
>                 URL: https://issues.apache.org/jira/browse/ODE-101
>             Project: Ode
>          Issue Type: Bug
>          Components: JBI Integration
>    Affects Versions: Incubator
>         Environment: Windows XP Pro, ServiceMix 3.1
>            Reporter: Xuli
>            Priority: Critical
>
> After deployment of ODE engine, quit ServiceMix then restart it. Now, execute a process
with doXslTransform will cause the problem.
> While deploying the ODE engine, ServiceMix will invoke OdeServiceUnit.Deploy() method
to instanciate a compiler according to the BPEL script version, then in turn instanciate a
"XPath10ExpressionCompilerBPEL20" or "XPath20ExpressionCompilerBPEL20" object in which one's
constructor, the TransformerFactory will be initiated by executing the following lines:
> ---------------------------------------------------------------------------------------------------------
>             TransformerFactory trsf = new net.sf.saxon.TransformerFactoryImpl();
>             XslTransformHandler.getInstance().setTransformerFactory(trsf);
> ---------------------------------------------------------------------------------------------------------
> But after deployment, the ServiceMix will invoke init()->start() only.  The TransformerFactory
will keeping uninitialized and will cause the problem while executing DoXslTransformFunction.Function()->XslTransformHandler.getInstance().cacheXSLSheet(xslUri,
xslSheet.sheetBody, resolver)->parseXSLSheet(uri, body, resolver)->_transformerFactory.setURIResolver(resolver)

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


Mime
View raw message