Uploaded image for project: 'XalanJ2'
  1. XalanJ2
  2. XALANJ-2320

Excluding result prefix of a namespace not declared caused NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.7
    • 2.7.1
    • transformation
    • None

    Description

      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.

      Attachments

        Activity

          People

            Unassigned Unassigned
            andyhay Andrew Hay
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: