[ http://issues.apache.org/jira/browse/XALANJ-1584?page=all ] Morris Kwan closed XALANJ-1584: -------------------------------
> XSLTCSource is broken after DTM integration > ------------------------------------------- > > Key: XALANJ-1584 > URL: http://issues.apache.org/jira/browse/XALANJ-1584 > Project: XalanJ2 > Type: Bug > Components: XSLTC > Versions: Latest Development Code > Environment: Operating System: All > Platform: All > Reporter: Morris Kwan > Assignee: Morris Kwan > > XSLTCSource is an XSLTC extension to the JAXP Source interface. It allows the > DOM/DTM to be built once then reused in another transformer. > XSLTCSource is broken after the DTM integration since Xalan 2.5.0. The > problem > is that it always creates a new DTMManager to build the source, which is not > compatible with the requirement that all documents used in one transformation > should be built by the same DTMManager. > Because a DTM has internal references to its DTMManager, we cannot just use a > cached DTM in a new transformer without any changes. Fixing this problem > requires the DTM migration feature which migrates a DTM that is built with an > old DTMManager to a new DTMManager. This feature was already committed to the > CVS. > Because a DTM cannot be used concurrently by multiple threads, each thread > needs to have its own version of the cache DTM. For this reason, the cached > DTMs in XSLTCSource are saved in a ThreadLocal variable. It will only be > created once per thread when it is requested from the specific thread. > The usage syntax also needs to be slightly changed. You can create a > XSLTCSource from a systemId String or a Trax Source. The build() methods are > gone. There is no need to build it before using it. Building the DTM is > handled > by the framework. > Here are the new public interfaces of XSLTCSource: > public XSLTCSource(String systemId); > public XSLTCSource(Source source); > public void setSystemId(String systemId); > public String getSystemId(); -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
