1 2 Previous Next 18 Replies Latest reply on Feb 14, 2017 12:30 PM by grgrzybek

    Install and run Xalan parser on container - JBoss Fuse 6.3

    jaisha57

      Hi All,

       

      We want to use Xalan parser to transform XSLT and able to run locally with necessary configuration changes but failed to install and run on Jboss Fuse Container.

       

      Please find the attachment fuse log and dependency configuration in POM.

       

      Dependency Added:

      • org.apache.servicemix.bundles.xalan - 2.7.2_3
      • org.apache.servicemix.bundles.bcel – 5.2_4

       

      Installed below dependency in the container:

      install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xalan/2.7.1_7

       

      Ref: https://developer.jboss.org/thread/249414

       

      Code:

      <to uri="xslt:xslt/ChequeAcceptAddRs.xsl?transformerFactory=#tFactory" />

      <bean id="tFactory" class="org.apache.xalan.xsltc.trax.TransformerFactoryImpl" />

       

      Please help us to install and run xalan parser in our service.

        • 1. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
          grgrzybek

          Hello

           

          You don't have to install Xalan in Fuse.

          Fuse 6.3.GA contains lib/endorsed/org.apache.servicemix.bundles.xalan-2.7.2_3.jar

          Fuse 6.2.1.GA contains lib/endorsed/org.apache.servicemix.bundles.xalan-2.7.2_2.jar

           

          regards

          Grzegorz Grzybek

          • 2. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
            jaisha57

            Hi Grzegorz,

             

            Please refer below link and attachment for error message which we are getting while those two dependencies are not installed.

            Error using xalan processor in fuse esb

             

            Thanks,Jayashankar C

            • 3. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
              grgrzybek

              Please add the package to "org.osgi.framework.bootdelegation" property in etc/config.properties and don't install Xalan as separate bundle.

               

              regards

              Grzegorz Grzybek

              • 4. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                jaisha57

                Hi Grzegorz,

                 

                Even after configuring as above, it did not work.

                Please help

                 

                Thanks,

                Jayashankar C

                • 5. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                  grgrzybek

                  Exactly the same error?

                   

                  show me logs and config.properties.

                   

                  regards

                  Grzegorz

                  • 6. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                    jaisha57

                    Hi grgrzybek,

                     

                    find the config.properties below:

                    ################################################################################

                    #

                    #    Licensed to the Apache Software Foundation (ASF) under one or more

                    #    contributor license agreements.  See the NOTICE file distributed with

                    #    this work for additional information regarding copyright ownership.

                    #    The ASF licenses this file to You under the Apache License, Version 2.0

                    #    (the "License"); you may not use this file except in compliance with

                    #    the License.  You may obtain a copy of the License at

                    #

                    #       http://www.apache.org/licenses/LICENSE-2.0

                    #

                    #    Unless required by applicable law or agreed to in writing, software

                    #    distributed under the License is distributed on an "AS IS" BASIS,

                    #    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

                    #    See the License for the specific language governing permissions and

                    #    limitations under the License.

                    #

                    ################################################################################

                     

                     

                    #

                    # This file lists Karaf default settings for this particular version of Karaf.

                    # For easier maintenance when upgrading Karaf and to better document which

                    # default values have changed, it is recommended to place any changes to

                    # these values in a custom.properties file in the same folder as this file.

                    # Each value specified in custom.properties will override the default value

                    # here.

                    #

                     

                     

                    #

                    # Properties file inclusions (as a space separated list of relative paths)

                    # Included files will override the values specified in this file

                    # NB: ${includes} properties files are mandatory, it means that Karaf will not start

                    # if the include file is not found

                    #

                    ${includes} = jre.properties custom.properties

                     

                     

                    #

                    # Properties file inclusions (as a space separated list of relative paths)

                    # Included files will override the values specified in this file

                    # NB: ${optionals} properties files are optionals, it means that Karaf will just

                    # display a warning message but the bootstrap will be performed

                    #

                    # ${optionals} = my.properties

                     

                     

                    #

                    # Framework selection properties

                    #

                    karaf.framework=felix

                     

                     

                    #

                    # Location of the OSGi frameworks

                    #

                    karaf.framework.equinox=${karaf.default.repository}/org/eclipse/osgi/3.9.1-v20140110-1610/osgi-3.9.1-v20140110-1610.jar

                    karaf.framework.felix=${karaf.default.repository}/org/apache/felix/org.apache.felix.framework/4.4.1/org.apache.felix.framework-4.4.1.jar

                     

                     

                    #

                    # Framework config properties.

                    #

                    org.osgi.framework.system.packages= \

                    org.osgi.framework.startlevel;uses:="org.osgi.framework";version="1.0", \

                    org.osgi.framework.wiring;uses:="org.osgi.resource,org.osgi.framework";version="1.1", \

                    org.osgi.framework.hooks.bundle;uses:="org.osgi.framework";version="1.1", \

                    org.osgi.framework.hooks.service;uses:="org.osgi.framework";version="1.1", \

                    org.osgi.framework.hooks.resolver;uses:="org.osgi.framework.wiring";version="1.0", \

                    org.osgi.framework.launch;uses:="org.osgi.framework";version="1.1", \

                    org.osgi.framework.namespace;uses:="org.osgi.resource";version="1.0", \

                    org.osgi.framework;version="1.7",\

                    org.osgi.framework.hooks.weaving;uses:="org.osgi.framework.wiring";version="1.0",\

                    org.osgi.resource;version="1.0",org.osgi.service.url;version="1.0",\

                    org.osgi.service.startlevel;uses:="org.osgi.framework";version="1.1",\

                    org.osgi.service.packageadmin;uses:="org.osgi.framework";version="1.2",\

                    org.osgi.service.url;version="1.0", \

                    org.osgi.util.tracker;uses:="org.osgi.framework";version="1.5.1", \

                    org.apache.karaf.jaas.boot;version="2.4.0.redhat-630187", \

                    org.apache.karaf.jaas.boot.principal;version="2.4.0.redhat-630187", \

                    org.apache.karaf.management.boot;version="2.4.0.redhat-630187", \

                    org.apache.karaf.version;version="2.4.0.redhat-630187", \

                    org.apache.karaf.diagnostic.core;version="2.4.0.redhat-630187", \

                    ${jre-${java.specification.version}}, \

                    org.apache.karaf.branding, \

                    org.apache.html.dom; version="2.11.0", \

                    org.apache.wml.dom; version="2.11.0", \

                    org.apache.wml; version="2.11.0", \

                    org.apache.xerces.parsers; version="2.11.0", \

                    org.apache.xerces.impl.dtd.models; version="2.11.0", \

                    org.apache.xerces.xni.parser; version="2.11.0", \

                    org.apache.xerces.impl.dv.xs; version="2.11.0", \

                    org.apache.xerces.impl.xs.traversers; version="2.11.0", \

                    org.apache.xerces.util; version="2.11.0", \

                    org.apache.xerces.impl.dtd; version="2.11.0", \

                    org.apache.xerces.jaxp.validation; version="2.11.0", \

                    org.apache.xerces.dom3.as; version="2.11.0", \

                    org.apache.xerces.impl.dv; version="2.11.0", \

                    org.apache.xerces.jaxp; version="2.11.0", \

                    org.apache.xerces.jaxp.datatype; version="2.11.0", \

                    org.apache.xerces.impl.xpath.regex; version="2.11.0", \

                    org.apache.xerces.xni; version="2.11.0", \

                    org.apache.xerces.impl.msg; version="2.11.0", \

                    org.apache.xerces.impl.dv.util; version="2.11.0", \

                    org.apache.xerces.impl.xs.util; version="2.11.0", \

                    org.apache.xerces.dom; version="2.11.0", \

                    org.apache.xerces.dom.events; version="2.11.0", \

                    org.apache.xerces.impl.xs.opti; version="2.11.0", \

                    org.apache.xerces.impl; version="2.11.0", \

                    org.apache.xerces.xs; version="2.11.0", \

                    org.apache.xerces.impl.io; version="2.11.0", \

                    org.apache.xerces.xpointer; version="2.11.0", \

                    org.apache.xerces.impl.dv.dtd; version="2.11.0", \

                    org.apache.xerces.xinclude; version="2.11.0", \

                    org.apache.xerces.impl.xpath; version="2.11.0", \

                    org.apache.xerces.xs.datatypes; version="2.11.0", \

                    org.apache.xerces.impl.xs.identity; version="2.11.0", \

                    org.apache.xerces.impl.xs.models; version="2.11.0", \

                    org.apache.xerces.xni.grammars; version="2.11.0", \

                    org.apache.xerces.impl.xs; version="2.11.0", \

                    org.apache.xerces.impl.validation; version="2.11.0", \

                    org.apache.xml.serialize; version="2.11.0", \

                    org.apache.xalan.extensions; version="2.7.2", \

                    org.apache.xalan.xsltc.compiler; version="2.7.2", \

                    org.apache.xalan.xsltc.cmdline.getopt; version="2.7.2", \

                    org.apache.xalan.xsltc.util; version="2.7.2", \

                    org.apache.xalan.transformer; version="2.7.2", \

                    org.apache.xalan.xsltc.trax; version="2.7.2", \

                    org.apache.xalan.processor; version="2.7.2", \

                    org.apache.xalan.lib; version="2.7.2", \

                    org.apache.xalan.trace; version="2.7.2", \

                    org.apache.xalan.xsltc.compiler.util; version="2.7.2", \

                    org.apache.xalan.templates; version="2.7.2", \

                    org.apache.xalan.xsltc; version="2.7.2", \

                    org.apache.xalan.xsltc.runtime; version="2.7.2", \

                    org.apache.xalan; version="2.7.2", \

                    org.apache.xalan.xslt; version="2.7.2", \

                    org.apache.xalan.lib.sql; version="2.7.2", \

                    org.apache.xalan.xsltc.runtime.output; version="2.7.2", \

                    org.apache.xalan.xsltc.dom; version="2.7.2", \

                    org.apache.xalan.client; version="2.7.2", \

                    org.apache.xalan.xsltc.cmdline; version="2.7.2", \

                    org.apache.xalan.serialize; version="2.7.2", \

                    org.apache.xalan.res; version="2.7.2", \

                    org.apache.xml.dtm.ref; version="2.7.2", \

                    org.apache.xml.dtm; version="2.7.2", \

                    org.apache.xml.dtm.ref.sax2dtm; version="2.7.2", \

                    org.apache.xml.dtm.ref.dom2dtm; version="2.7.2", \

                    org.apache.xml.res; version="2.7.2", \

                    org.apache.xml.serializer.dom3; version="2.7.2", \

                    org.apache.xml.serializer; version="2.7.2", \

                    org.apache.xml.serializer.utils; version="2.7.2", \

                    org.apache.xml.utils.res; version="2.7.2", \

                    org.apache.xml.utils; version="2.7.2", \

                    org.apache.xpath.functions; version="2.7.2", \

                    org.apache.xpath.jaxp; version="2.7.2", \

                    org.apache.xpath.patterns; version="2.7.2", \

                    org.apache.xpath.objects; version="2.7.2", \

                    org.apache.xpath.res; version="2.7.2", \

                    org.apache.xpath; version="2.7.2", \

                    org.apache.xpath.axes; version="2.7.2", \

                    org.apache.xpath.compiler; version="2.7.2", \

                    org.apache.xpath.operations; version="2.7.2", \

                    org.apache.xpath.domapi; version="2.7.2", \

                    sun.misc

                     

                     

                    #

                    # Extra packages appended after standard packages

                    #

                    org.osgi.framework.system.packages.extra=

                     

                     

                    org.osgi.framework.system.capabilities= \

                    ${eecap-${java.specification.version}}, \

                    service-reference;effective:=active;objectClass=org.osgi.service.packageadmin.PackageAdmin, \

                    service-reference;effective:=active;objectClass=org.osgi.service.startlevel.StartLevel, \

                    service-reference;effective:=active;objectClass=org.osgi.service.url.URLHandlers

                     

                     

                    eecap-1.8= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8"

                    eecap-1.7= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7"

                    eecap-1.6= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5,1.6"

                    eecap-1.5= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4,1.5"

                    eecap-1.4= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1,1.2", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3,1.4"

                    eecap-1.3= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2,1.3"

                    eecap-1.2= osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0,1.1", \

                    osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0,1.1,1.2"

                     

                     

                    #

                    # javax.transaction is needed to avoid class loader constraint violation when using javax.sql

                    #

                    org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,org.apache.karaf.management.boot,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.*,org.bouncycastle.*,com.ibm.security.*,org.apache.xalan.processor,org.apache.servicemix.bundles.xalan,org.apache.servicemix.bundles.bcel

                     

                     

                    # jVisualVM support

                    # in order to use Karaf with jvisualvm, the org.osgi.framework.bootdelegation property has to contain the org.netbeans.lib.profiler.server package

                    # and, so, it should look like:

                    #

                    # org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,org.apache.karaf.jaas.boot.principal,org.apache.karaf.management.boot,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.jaxp.datatype,org.apache.xerces.stax,org.apache.xerces.parsers,org.apache.xerces.jaxp,org.apache.xerces.jaxp.validation,org.apache.xerces.dom,org.netbeans.lib.profiler.server

                    #

                    # YourKit support

                    # in order to use Karaf with YourKit, the org.osgi.framework.bootdelegation property has to contain the com.yourkit.* packages

                    # and, so, it should look like:

                    #

                    # org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,org.apache.karaf.jaas.boot.principal,org.apache.karaf.management.boot,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.jaxp.datatype,org.apache.xerces.stax,org.apache.xerces.parsers,org.apache.xerces.jaxp,org.apache.xerces.jaxp.validation,org.apache.xerces.dom,com.yourkit.*

                    #

                     

                     

                    #

                    # OSGi Execution Environment

                    #

                    org.osgi.framework.executionenvironment=J2SE-1.7,JavaSE-1.7,J2SE-1.6,JavaSE-1.6,J2SE-1.5,JavaSE-1.5,J2SE-1.4,JavaSE-1.4,J2SE-1.3,JavaSE-1.3,J2SE-1.2,,JavaSE-1.2,CDC-1.1/Foundation-1.1,CDC-1.0/Foundation-1.0,J2ME,OSGi/Minimum-1.1,OSGi/Minimum-1.0

                     

                     

                    #

                    # Set the parent classloader for the bundle to the classloader that loads the Framework (i.e. everything in lib/*.jar)

                    #

                    org.osgi.framework.bundle.parent=framework

                     

                     

                    #

                    # To enable the use of the startup.properties file to control the start level:

                    #

                    karaf.auto.start=startup.properties

                     

                     

                    #

                    # Define the default bundle start level

                    #

                    org.osgi.framework.startlevel.beginning=100

                    karaf.startlevel.bundle=80

                     

                     

                    #

                    # Define the location of the Karaf shutdown port file

                    #

                    karaf.shutdown.port.file=${karaf.data}/port

                     

                     

                    #

                    # Configuration FileMonitor properties

                    #

                    felix.fileinstall.enableConfigSave = true

                    felix.fileinstall.dir    = ${karaf.etc}

                    felix.fileinstall.filter = .*\\.cfg

                    felix.fileinstall.poll   = 1000

                    felix.fileinstall.noInitialDelay = true

                    felix.fileinstall.log.level = 3

                     

                     

                    #

                    # Delay for writing the framework state to disk in equinox

                    # must be  >= 1000 and <= 1800000

                    #

                    eclipse.stateSaveDelayInterval = 1000

                     

                     

                    #

                    # OBR Repository list

                    # This property will be modified by the obr:addUrl and obr:removeUrl commands.

                    #

                    obr.repository.url =

                     

                     

                    #

                    # Don't delay the console startup

                    #

                    karaf.delay.console=false

                     

                     

                    #

                    # Set the Blueprint container in synchronous mode to avoid dependencies startup issue

                    #

                    org.apache.aries.blueprint.synchronous=true

                     

                     

                    #

                    # Set initial configuration for pax-url-aether that is used before fileinstall creates

                    # configadmin configuration for org.ops4j.pax.url.mvn PID

                    #

                     

                     

                    # The following locations are checked for the existence of the settings.xml file

                    #   * 1. looks for the specified url

                    #   * 2. if not found looks for /builddir/.m2/settings.xml

                    #   * 3. if not found looks for /usr/share/java/maven-3/conf/settings.xml

                    #   * 4. if not found looks for ${M2_HOME}/conf/settings.xml

                    #

                    # explicit reference to settings.xml file. Properties prefixed with "org.ops4j.pax.url.mvn." have

                    # higher priority except <proxies> element. HTTP proxies should be configured in settings file

                    org.ops4j.pax.url.mvn.settings = ${karaf.etc}/maven-settings.xml

                     

                     

                    # "localRepository" is the target location for artifacts downloaded from "remote repositories", it's not

                    # searched for already available artifacts, unless added explicitly to "defaultRepositories"

                    # by default internal local repository is used to have behavior independent of the content of ~/.m2/repository

                    org.ops4j.pax.url.mvn.localRepository = ${karaf.data}/repository

                     

                     

                    # do not add http://repo1.maven.org/maven2@id=central in "fallback" profile used in Aether resolver

                    org.ops4j.pax.url.mvn.useFallbackRepositories = false

                     

                     

                    # if "defaultLocalRepoAsRemote" is set do *any* value, localRepository will be added to the list of

                    # remote repositories being searched for artifacts

                    #org.ops4j.pax.url.mvn.defaultLocalRepoAsRemote = true

                     

                     

                    # list of repositories searched in the first place, should contain ${runtime.home}/${karaf.default.repository}

                    # each of these repositories is checked by aether as "local repository". if artifact isn't found, "repositories"

                    # are searched next

                    org.ops4j.pax.url.mvn.defaultRepositories=\

                        file:${runtime.home}/${karaf.default.repository}@snapshots@id=karaf.${karaf.default.repository},\

                        file:\/builddir/.m2/repository@snapshots@id=local,\

                        file:${runtime.home}/local-repo@snapshots@id=karaf.local-repo,\

                        file:${karaf.base}/${karaf.default.repository}@snapshots@id=child.karaf.${karaf.default.repository}

                     

                     

                    # list of repositories searched after resolution fails for "defaultRepositories". These are true remote repositories

                    # accessed using maven/aether/wagon mechanisms. If any repository contains required artifact, it is then written

                    # to "localRepository"

                    # if this list is _prepended_ with '+' sign, all repositories from active profiles defined in effective settings.xml

                    # file will be _appended_ to this list

                    org.ops4j.pax.url.mvn.repositories= \

                        http://repo1.maven.org/maven2@id=maven.central.repo, \

                        https://maven.repository.redhat.com/ga@id=redhat.ga.repo, \

                        https://maven.repository.redhat.com/earlyaccess/all@id=redhat.ea.repo, \

                        https://repository.jboss.org/nexus/content/groups/ea@id=fuseearlyaccess

                     

                     

                     

                     

                    #

                    # Generated shutdown command

                    #

                    karaf.shutdown.command = dcd609e0-43ea-42a6-ac26-6d10d445fb94

                     

                     

                    Error log after restarting container:

                     

                    2017-01-23 10:01:35,880 | ERROR | ExtenderThread-4 | ContextLoaderListener            | 332 - org.springframework.osgi.extender - 1.2.1 | Application context refresh fa

                    iled (OsgiBundleXmlApplicationContext(bundle=ecc-chkaccept-add-service, config=osgibundle:/META-INF/spring/*.xml))

                    java.lang.NoClassDefFoundError: org/apache/xalan/xsltc/compiler/Parser

                            at org.apache.xalan.xsltc.compiler.XSLTC.<init>(XSLTC.java:141)[:]

                            at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:742)[:]

                            at org.apache.camel.builder.xml.XsltBuilder.setTransformerSource(XsltBuilder.java:353)

                            at org.apache.camel.component.xslt.XsltEndpoint.loadResource(XsltEndpoint.java:367)

                            at org.apache.camel.component.xslt.XsltEndpoint.doStart(XsltEndpoint.java:432)

                            at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)

                            at org.apache.camel.impl.DefaultCamelContext.startService(DefaultCamelContext.java:3275)

                            at org.apache.camel.impl.DefaultCamelContext.doAddService(DefaultCamelContext.java:1243)

                            at org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:1204)

                            at org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:1200)

                            at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:584)

                            at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:79)

                            at org.apache.camel.model.RouteDefinition.resolveEndpoint(RouteDefinition.java:211)

                            at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:107)

                            at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:113)

                            at org.apache.camel.model.SendDefinition.resolveEndpoint(SendDefinition.java:62)

                            at org.apache.camel.model.SendDefinition.createProcessor(SendDefinition.java:56)

                            at org.apache.camel.model.ProcessorDefinition.makeProcessorImpl(ProcessorDefinition.java:534)

                            at org.apache.camel.model.ProcessorDefinition.makeProcessor(ProcessorDefinition.java:495)

                            at org.apache.camel.model.ProcessorDefinition.addRoutes(ProcessorDefinition.java:219)

                            at org.apache.camel.model.RouteDefinition.addRoutes(RouteDefinition.java:1069)

                            at org.apache.camel.model.RouteDefinition.addRoutes(RouteDefinition.java:196)

                            at org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:974)

                            at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:3301)

                            at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:3024)

                            at org.apache.camel.impl.DefaultCamelContext.access$000(DefaultCamelContext.java:175)

                            at org.apache.camel.impl.DefaultCamelContext$2.call(DefaultCamelContext.java:2854)

                            at org.apache.camel.impl.DefaultCamelContext$2.call(DefaultCamelContext.java:2850)

                            at org.apache.camel.impl.DefaultCamelContext.doWithDefinedClassLoader(DefaultCamelContext.java:2873)

                            at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:2850)

                            at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)

                            at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:2819)

                            at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:275)

                            at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:136)

                            at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:340)

                            at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:96)[285:org.apache.servicemix.bundl:

                     

                     

                    Please analyze and let me know how can we fix this issue.

                    • 7. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                      grgrzybek

                      Hi

                       

                      Ah, you've added symbolic names of the bundles to bootdelegation property. you should add there packages. There's already "org.apache.xalan.processor" package - just add more packages, or even "org.apache.xalan.*".

                       

                      regards

                      Grzegorz Grzybek

                      • 8. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                        jaisha57

                        Hi grgrzybek

                         

                        Thanks for the quick reply!

                         

                        After adding "org.apache.xalan.*", got below error

                        java.lang.NoClassDefFoundError: org/apache/bcel/generic/InstructionConstants

                         

                        Added "org.apache.bcel.*"

                        org.osgi.framework.bootdelegation=org.apache.karaf.jaas.boot,org.apache.karaf.management.boot,sun.*,com.sun.*,javax.transaction,javax.transaction.*,javax.xml.crypto,javax.xml.crypto.*,org.apache.xerces.*,org.bouncycastle.*,com.ibm.security.*,org.apache.xalan.processor,org.apache.xalan.*,org.apache.bcel.*

                         

                        finally ending with same error.

                         

                        2017-01-23 10:23:05,662 | ERROR | ExtenderThread-4 | ContextLoaderListener            | 332 - org.springframework.osgi.extender - 1.2.1 | Application context refresh failed (OsgiBundleXmlApplicationContext(bundle=, config=osgibundle:/META-INF/spring/*.xml))

                        java.lang.NoClassDefFoundError: org/apache/xalan/xsltc/compiler/Parser

                                at org.apache.xalan.xsltc.compiler.XSLTC.<init>(XSLTC.java:141)[:]

                                at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:742)[:]

                                at org.apache.camel.builder.xml.XsltBuilder.setTransformerSource(XsltBuilder.java:353)

                         

                         

                        • 9. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                          grgrzybek

                          Hmm. First error was a good sign. I'm not sure why the same error after boot delegating BCEL package...

                           

                          Did you uninstall xalan and bcel bundles from OSGi leaving them ONLY in lib/endorsed?

                           

                          regards

                          Grzegorz

                          • 10. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                            jaisha57

                            Hi grgrzybek

                             

                            I did not uninstall xalan and bcel bundles from OSGi.

                             

                            Thanks and regards,

                            Jayashankar C

                            • 11. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                              jaisha57

                              Hi grgrzybek

                               

                              Do you have any other solution.

                              Please let me know.

                               

                              Thanks and regards,

                              Jayashankar C

                              • 12. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                                grgrzybek

                                Hello

                                 

                                I'd need some kind of reproducer - or simplified camel route (spring based?) that'd allow me to reproduce the problem. Can you share the project?

                                 

                                regards
                                Grzegorz Grzybek

                                • 13. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                                  jaisha57

                                  Hi grgrzybek

                                   

                                  Please find the sample project below:

                                   

                                    <camelContext id="context-demo" trace="false" xmlns="http://camel.apache.org/schema/spring">

                                    <route id="route-demo" streamCache="true">

                                    <from uri="timer://foo?repeatCount=1" />

                                    <log message="Route - Started" loggingLevel="INFO" />

                                    <setBody>

                                    <simple><![CDATA[<root>testdata</root>]]></simple>

                                    </setBody>

                                    <log message="Message Before Transformation - ${body}" loggingLevel="INFO" />

                                    <to uri="xslt:xslt/transformWithXalan.xsl?transformerFactory=#tFactory" />

                                    <log message="Message After Transformation - ${body}" loggingLevel="INFO" />

                                    </route>

                                    </camelContext>

                                   

                                    <bean id="tFactory" class="org.apache.xalan.xsltc.trax.TransformerFactoryImpl" />

                                   

                                  transformWithXalan.xsl :

                                  <xsl:stylesheet version="1.0"

                                    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

                                    <xsl:output omit-xml-declaration="yes" indent="no" />

                                    <xsl:template match="/">

                                    <RootRs>

                                    <data>

                                    <xsl:value-of select="/root/text()"/>

                                    </data>

                                    </RootRs>

                                    </xsl:template>

                                  </xsl:stylesheet>

                                   

                                  pom:

                                   

                                  <?xml version="1.0" encoding="UTF-8"?>

                                  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

                                    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

                                   

                                    <modelVersion>4.0.0</modelVersion>

                                   

                                    <groupId>xala.test</groupId>

                                    <artifactId>demo</artifactId>

                                    <version>1.0.0</version>

                                   

                                    <packaging>bundle</packaging>

                                   

                                    <name>xala-demo</name>

                                   

                                    <properties>

                                    <camel-version>2.17.0.redhat-630187</camel-version>

                                    </properties>

                                   

                                    <dependencies>

                                    <dependency>

                                    <groupId>org.apache.camel</groupId>

                                    <artifactId>camel-core</artifactId>

                                    <version>${camel-version}</version>

                                    </dependency>

                                    <dependency>

                                    <groupId>org.apache.camel</groupId>

                                    <artifactId>camel-spring</artifactId>

                                    <version>${camel-version}</version>

                                    </dependency>

                                    <dependency>

                                    <groupId>org.apache.camel</groupId>

                                    <artifactId>camel-http</artifactId>

                                    <version>${camel-version}</version>

                                    </dependency>

                                    <dependency>

                                    <groupId>org.apache.camel</groupId>

                                    <artifactId>camel-saxon</artifactId>

                                    <version>${camel-version}</version>

                                    </dependency>

                                    <dependency>

                                    <groupId>org.apache.servicemix.bundles</groupId>

                                    <artifactId>org.apache.servicemix.bundles.xalan</artifactId>

                                    <version>2.7.2_3</version>

                                    </dependency>

                                    <dependency>

                                    <groupId>org.apache.servicemix.bundles</groupId>

                                    <artifactId>org.apache.servicemix.bundles.bcel</artifactId>

                                    <version>5.2_4</version>

                                    </dependency> 

                                    </dependencies>

                                    <build>

                                    <defaultGoal>install</defaultGoal>

                                    <plugins>

                                    <plugin>

                                    <groupId>org.apache.maven.plugins</groupId>

                                    <artifactId>maven-compiler-plugin</artifactId>

                                    <version>3.5.1</version>

                                    <configuration>

                                    <source>1.8</source>

                                    <target>1.8</target>

                                    </configuration>

                                    </plugin>

                                    <plugin>

                                    <groupId>org.apache.maven.plugins</groupId>

                                    <artifactId>maven-resources-plugin</artifactId>

                                    <version>2.6</version>

                                    <configuration>

                                    <encoding>UTF-8</encoding>

                                    </configuration>

                                    </plugin>

                                    <plugin>

                                    <groupId>org.apache.felix</groupId>

                                    <artifactId>maven-bundle-plugin</artifactId>

                                    <version>2.3.7</version>

                                    <extensions>true</extensions>

                                    <configuration>

                                    <instructions>

                                    <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>

                                    <Import-Package>org.apache.xalan.*,org.apache.bcel.*,*</Import-Package>

                                    <DynamicImport-Package>*</DynamicImport-Package>

                                    </instructions>

                                    </configuration>

                                    </plugin>

                                    <!-- allows the route to be ran via 'mvn camel:run' -->

                                    <plugin>

                                    <groupId>org.apache.camel</groupId>

                                    <artifactId>camel-maven-plugin</artifactId>

                                    </plugin>

                                    </plugins>

                                    </build>

                                  </project>

                                  • 14. Re: Install and run Xalan parser on container - JBoss Fuse 6.3
                                    grgrzybek

                                    Sorry for delay, please give me a bit more time to finish my current tasks.

                                     

                                    regards

                                    Grzegorz Grzybek

                                    1 2 Previous Next