You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by xa...@xml.apache.org on 2004/10/19 21:05:52 UTC

[jira] Resolved: (XALANJ-1963) URIResolver errors

Message:

   The following issue has been resolved as INVALID.

   Resolver: Henry Zongaro
       Date: Tue, 19 Oct 2004 12:05 PM

I believe Xalan-Java is behaving as the JAXP specification intended.  This is an area of JAXP that is underspecified.  What is happening is that Transformer objects inherit any URIResolver that was specified on the TransformerFactory that created them.  To stop that inheritence, you have to explicitly pass null to the Transformer.setURIResolver method.

During the development of JAXP 1.3, I submitted a comment to get this clarified, and the following decision was made:

  Proposal: Transformers inherit the TransformerFactory URIResolver
            but if set explicitly to null, there's no URIResolver
            anymore (it is not "re-inherited" from the factory).
  Accepted.

However, the relevant text in JAXP 1.3 was never fixed due to last minute mix-ups in applying changes.  I remain hopeful that we will get that clarified in JAXP 1.4.
---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/XALANJ-1963

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: XALANJ-1963
    Summary: URIResolver errors
       Type: Bug

     Status: Resolved
   Priority: Major
 Resolution: INVALID

    Project: XalanJ2
 Components: 
             Xalan
             Other
   Versions:
             2.6

   Assignee: 
   Reporter: Oz Kologlu

    Created: Wed, 22 Sep 2004 2:39 AM
    Updated: Tue, 19 Oct 2004 12:05 PM
Environment: WinXP, 
J2sdk 1.4.2_05,
Jboss 3.2.5 App server.

Description:
When running under JBoss 3.2.5 I create a custom URIResolver to handle 
<xsl:import href=".."/> files within a stylesheet.

The URIResolver is only supposed to be executed for imports and includes. However I get multiple events fired on URIResolver. This isn't so bad since returning null form the URIResolver should let the systemid resolver handle the resolution. However, subsequent calls seem to lose the href and base - eventually leading to a NPE. Why would the URIResolver be executed multiple times? And why would href and base be empty/null?

This is a trace of the href and base being passed to my URI resolver:

Resolving:
href[date.add.template.xsl]
base[file:///C:/myapp.ear/my-ejb-jar/xsls/my.xsl]
Returning: Source...

Resolving:
href[] (NOTE: empty string)
base[null]
Returning: null

Resolving: 
href[null] 
base[null]
Returning: null

FYI: the date.add.template.xsl is the xslt from 
http://www.exslt.org/date/functions/add/index.html

Thanks,
Oz


---------------------------------------------------------------------
JIRA INFORMATION:
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

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org