[
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.