Uploaded image for project: 'Red Hat Fuse'
  1. Red Hat Fuse
  2. ENTESB-3840

Saxon library 9.6.0-5_1 is not able to parse XSLT 3.0 in Fuse 6.2 but same work in 6.1.0

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Major Major
    • jboss-fuse-6.3
    • jboss-fuse-6.2
    • Camel
    • % %
    • Hide

      1. osgi:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saxon/9.6.0-5_1
      2. Stopped this bundle.
      [ 218] [Resolved ] [ ] [ ] [ 50] Apache ServiceMix :: Bundles :: Saxon-HE (9.5.1.2_1)
      3. Deploy the attached bundle.
      4. Following exception is received

      Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: xslt:///xsltTemplate.xsl?saxon=true due to: Error pre-loading Saxon classes. Make sure you have saxon on the classpath, and the classloader can load the following two classes: net.sf.saxon.event.Receiver, net.sf.saxon.serialize.MessageWarner.
      	at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:578)[198:org.apache.camel.camel-core:2.15.1.redhat-620133]
      	at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:79)[198:org.apache.camel.camel-core:2.15.1.redhat-620133]
      ---
      Caused by: java.lang.NoSuchMethodException: net.sf.saxon.jaxp.TransformerImpl.setMessageEmitter(net.sf.saxon.event.Receiver)
      	at java.lang.Class.getMethod(Class.java:1773)[:1.8.0_20]
      	at org.apache.camel.builder.xml.XsltBuilder.doStart(XsltBuilder.java:616)[198:org.apache.camel.camel-core:2.15.1.redhat-620133]
      	... 53 more
      

      5. Checked the implementation of camel-core api it calls a non-existing method setMessageEmitter of net.sf.saxon.jaxp.TransformerImpl class in saxon API.

      Show
      1. osgi:install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saxon/9.6.0-5_1 2. Stopped this bundle. [ 218] [Resolved ] [ ] [ ] [ 50] Apache ServiceMix :: Bundles :: Saxon-HE (9.5.1.2_1) 3. Deploy the attached bundle. 4. Following exception is received Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: xslt: ///xsltTemplate.xsl?saxon= true due to: Error pre-loading Saxon classes. Make sure you have saxon on the classpath, and the classloader can load the following two classes: net.sf.saxon.event.Receiver, net.sf.saxon.serialize.MessageWarner. at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:578)[198:org.apache.camel.camel-core:2.15.1.redhat-620133] at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:79)[198:org.apache.camel.camel-core:2.15.1.redhat-620133] --- Caused by: java.lang.NoSuchMethodException: net.sf.saxon.jaxp.TransformerImpl.setMessageEmitter(net.sf.saxon.event.Receiver) at java.lang. Class .getMethod( Class .java:1773)[:1.8.0_20] at org.apache.camel.builder.xml.XsltBuilder.doStart(XsltBuilder.java:616)[198:org.apache.camel.camel-core:2.15.1.redhat-620133] ... 53 more 5. Checked the implementation of camel-core api it calls a non-existing method setMessageEmitter of net.sf.saxon.jaxp.TransformerImpl class in saxon API.

      1) Saxon Library version 9.6.0-5_1, supports XSLT version 3.0. This is described at url http://www.saxonica.com/html/documentation/functions/fn/parse-xml.html(http://www.saxonica.com/html/documentation/functions/fn/parse-xml.html).
      2) This library works well with XSLT 3.0 in XSL transformation in Fuse 6.1.0.
      3) This library does not work with XSL transformation in Fuse 6.2.0.

            toigaras@redhat.com tomohisa igarashi
            rhn-support-cpandey Chandra Shekhar Pandey (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: