[ 
https://issues.apache.org/jira/browse/XALANJ-2320?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12552767
 ] 

Andrew Hay commented on XALANJ-2320:
------------------------------------

Brian,

I've retested the issue and found that Xalan 2.7.1 fails in exactly the same 
way as before but with new line numbers in the Xalan classes :-

        at 
org.apache.xalan.transformer.TransformerImpl.setParameter(TransformerImpl.java:1547)
        at 
org.apache.xalan.transformer.TransformerImpl.setParameter(TransformerImpl.java:1595)

The example that I'd posted previously was just the xsl:stylesheet declaration 
and not the full stylesheet.  To recreate, you can use any current stylesheet 
and add an exclude-result-prefixes attribute for a result prefix which you have 
not declared.

I was expecting Xalan to ignore the undeclared result prefix.  However on 
reading the W3C XSL Transformations standards I can see that "It is an error if 
there is no namespace bound to the prefix on the element bearing the 
exclude-result-prefixes or xsl:exclude-result-prefixes attribute.".    

I am happy to close the issue as being a feature of Xalan 2.3.1 which has long 
since been removed by closer adherance to the standards.

Andy

> Excluding result prefix of a namespace not declared caused NPE
> --------------------------------------------------------------
>
>                 Key: XALANJ-2320
>                 URL: https://issues.apache.org/jira/browse/XALANJ-2320
>             Project: XalanJ2
>          Issue Type: Bug
>          Components: transformation
>    Affects Versions: 2.7
>            Reporter: Andrew Hay
>            Priority: Minor
>             Fix For: 2.7.1
>
>
> Currently migrating from Xalan 2.3.1 to 2.7.0.  Had an issue with an XSL 
> stylesheet which declared a number or namespaces and excluded a number of 
> result prefixes.  This worked under 2.3.1 but produced NPE in 2.7.0 with 
> stack trace of :-
> java.lang.NullPointerException
>       at 
> org.apache.xalan.transformer.TransformerImpl.setParameter(TransformerImpl.java:1558)
>       at 
> org.apache.xalan.transformer.TransformerImpl.setParameter(TransformerImpl.java:1606)
>       at 
> com.axa.framework.util.XSLEngineImpl.translate(XSLEngineImpl.java:140)
>       at com.axa.framework.util.XSLEngineUtil.translate(XSLEngineUtil.java:79)
>       at 
> com.axa.framework.processor.EventProcessor.translate(EventProcessor.java:1198)
>       at 
> com.axa.framework.processor.EventProcessor.handleServiceEvent(EventProcessor.java:550)
>       at 
> com.axa.framework.processor.EventProcessor.process(EventProcessor.java:141)
>       at 
> com.axa.framework.processor.soap.RpcSOAPProcessorManager.handleEvent(RpcSOAPProcessorManager.java:83)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:324)
>       at com.axa.rpc.RpcThread.execute(RpcThread.java:240)
>       at com.axa.rpc.RpcThread.run(RpcThread.java:135)
> The XSL stylesheet decalaration is :-
> <xsl:stylesheet version="1.0" 
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
>                               
> xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"; 
>                               
> xmlns:polphdr="http://www.polaris-uk.co.uk/GenericSchema/2_1/PEMHeader"; 
>                               xmlns:java="http://xml.apache.org/xslt/java"; 
>                               exclude-result-prefixes="axa soap-env java">
> The problem was resolved by removing axa from the list of namespaces.  Would 
> have expected a more graceful throwing of the error or ignoring of the result 
> prefix exclusion if the namespace cannot be determined.

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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to