If it's possible :
- to know which exact SMX version do you use (3.3 or 3.3.1 or another one) ?
- to have the whole source code

Regards
JB

On Tuesday 13 January 2009 - 13:53, Piotr Jagielski wrote:
> 
> Yes, I confirm both.
> I'll try to prepare tomorrow some test SA which reproduces this issue.
> 
> Regards,
> Piotr
> 
> 
> Jean-Baptiste Onofré wrote:
> > 
> > Hi Piotr,
> > 
> > Do you use standalone SMX (not deployed in a web container) ?
> > Do you confirm that the dependencies set is in the SU pom.xml (not the SA
> > one) ?
> > 
> > Regards
> > JB
> > 
> > 
> > On Tuesday 13 January 2009 - 01:26, Piotr Jagielski wrote:
> >> 
> >> Hello again,
> >> 
> >> I'll try to add some libraries to servicemix-shared as a workaround for
> >> this
> >> problem.
> >> Any other ideas?
> >> Should I raise jira issue for it?
> >> 
> >> Regards,
> >> Piotr
> >> 
> >> 
> >> Piotr Jagielski wrote:
> >> > 
> >> > Problematic fragment of xbean.xml is:
> >> > 
> >> >   <bean id="sqlMapClient"
> >> > class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
> >> >     <property name="configLocation"
> >> > value="classpath:ibatis/sqlmap-config.xml"/>
> >> >     <property name="dataSource" ref="dataSource"/>
> >> >   </bean>
> >> > 
> >> > And here are dependencies from pom.xml:
> >> > 
> >> >   <dependencies>
> >> >     <dependency>
> >> >       <groupId>org.springframework</groupId>
> >> >       <artifactId>spring-jdbc</artifactId>
> >> >     </dependency>    
> >> >     <dependency>
> >> >       <groupId>org.springframework</groupId>
> >> >       <artifactId>spring-orm</artifactId>
> >> >       <exclusions>
> >> >           <exclusion>
> >> >             <groupId>com.ibatis</groupId>
> >> >             <artifactId>ibatis2</artifactId>
> >> >           </exclusion>
> >> >       </exclusions>
> >> >     </dependency>
> >> >     <dependency>
> >> >         <groupId>org.apache.ibatis</groupId>
> >> >         <artifactId>ibatis-sqlmap</artifactId>
> >> >     </dependency>
> >> >     <dependency>
> >> >         <groupId>org.apache.cxf</groupId>
> >> >         <artifactId>cxf-rt-frontend-jaxws</artifactId>
> >> >         <scope>provided</scope>
> >> >     </dependency>
> >> >     <dependency>
> >> >         <groupId>org.apache.cxf</groupId>
> >> >         <artifactId>cxf-rt-transports-http</artifactId>
> >> >         <scope>provided</scope>
> >> >     </dependency>
> >> >     <dependency>
> >> >         <groupId>javax.xml.bind</groupId>
> >> >         <artifactId>jaxb-api</artifactId>
> >> >     </dependency>
> >> >     <dependency>
> >> >         <groupId>javax.xml.ws</groupId>
> >> >         <artifactId>jaxws-api</artifactId>
> >> >         <scope>provided</scope>
> >> >     </dependency>
> >> >     <!-- test dependencies -->
> >> >     <dependency>
> >> >         <groupId>junit</groupId>
> >> >         <artifactId>junit</artifactId>
> >> >         <version>4.4</version>
> >> >         <scope>test</scope>
> >> >     </dependency>
> >> >     <dependency>
> >> >         <groupId>ojdbc</groupId>
> >> >         <artifactId>ojdbc</artifactId>
> >> >         <version>14</version>
> >> >         <scope>test</scope>
> >> >     </dependency>
> >> >   </dependencies>
> >> > 
> >> > Regards
> >> > 
> >> > 
> >> > Jean-Baptiste Onofré wrote:
> >> >> 
> >> >> Can I have your SU's xbean.xml and pom.xml ?
> >> >> 
> >> >> Regards
> >> >> JB
> >> >> 
> >> >> On Friday 09 January 2009 - 13:04, Piotr Jagielski wrote:
> >> >>> 
> >> >>> Here is the stacktrace:
> >> >>> 
> >> >>> <loc-message>Unexpected exception parsing XML document from file
> >> >>>
> >> [/usr/local/java/apache-servicemix-3.3/data/smx/service-assemblies/adapter-pc-PCService-1/ve
> >> >>>
> >> rsion_1/sus/servicemix-jsr181/adapter-pc-jsr181-su/applicationContext.xml];
> >> >>> nested exception is java.lang.NoClassDefFoundError:
> >> >>> com/ibatis/sqlmap/client/SqlMapClient</loc-message>
> >> >>>                                        
> >> >>>
> >> <stack-trace><![CDATA[org.springframework.beans.factory.BeanDefinitionStoreException:
> >> >>> Unexpected exception parsing XML document from file
> >> [/usr/local/java/ap
> >> >>>
> >> ache-servicemix-3.3/data/smx/service-assemblies/adapter-pc-PCService-1/version_1/sus/servicemix-jsr181/adapter-pc-jsr181-su/applicationContext.xml];
> >> >>> nested exception is java.lang.NoClassDefFoundErr
> >> >>> or: com/ibatis/sqlmap/client/SqlMapClient
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.importBeanDefinitionResource(XBeanBeanDefinitionDocumentReader.java:129)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseDefaultElement(XBeanBeanDefinitionDocumentReader.java:95)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseBeanDefinitions(XBeanBeanDefinitionDocumentReader.java:81)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:92)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:507)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanXmlBeanDefinitionReader.registerBeanDefinitions(XBeanXmlBeanDefinitionReader.java:79)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:398)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212)
> >> >>>         at
> >> >>>
> >> org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.FileSystemXmlApplicationContext.loadBeanDefinitions(FileSystemXmlApplicationContext.java:168)
> >> >>>         at
> >> >>>
> >> org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
> >> >>>         at
> >> >>>
> >> org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:423)
> >> >>>         at
> >> >>>
> >> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:353)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:86)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:508)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.AutoDeploymentService.checkPendingSAs(AutoDeploymentService.java:482)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateComponent(AutoDeploymentService.java:293)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:252)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:667)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62)
> >> >>>         at
> >> >>>
> >> org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:631)
> >> >>>         at java.util.TimerThread.mainLoop(Timer.java:512)
> >> >>>         at java.util.TimerThread.run(Timer.java:462)
> >> >>> Caused by: java.lang.NoClassDefFoundError:
> >> >>> com/ibatis/sqlmap/client/SqlMapClient
> >> >>>         at java.lang.Class.getDeclaredMethods0(Native Method)
> >> >>>         at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
> >> >>>         at java.lang.Class.getDeclaredMethods(Class.java:1791)
> >> >>>         at java.beans.Introspector$1.run(Introspector.java:1272)
> >> >>>         at java.security.AccessController.doPrivileged(Native Method)
> >> >>>         at
> >> >>>
> >> java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1270)
> >> >>>         at
> >> >>> java.beans.Introspector.getTargetMethodInfo(Introspector.java:1136)
> >> >>>         at java.beans.Introspector.getBeanInfo(Introspector.java:387)
> >> >>>         at java.beans.Introspector.getBeanInfo(Introspector.java:159)
> >> >>>         at java.beans.Introspector.getBeanInfo(Introspector.java:220)
> >> >>>         at java.beans.Introspector.<init>(Introspector.java:368)
> >> >>>         at java.beans.Introspector.getBeanInfo(Introspector.java:159)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2c.XBeanQNameHelper.getBeanInfo(XBeanQNameHelper.java:78)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2c.XBeanQNameHelper.coerceNamespaceAwarePropertyValues(XBeanQNameHelper.java:54)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2c.XBeanBeanDefinitionParserDelegate.parseBeanDefinitionElement(XBeanBeanDefinitionParserDelegate.java:59)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseBeanDefinitionElement(BeanDefinitionParserDelegate.java:389)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseBeanDefinitionElement(BeanDefinitionParserDelegate.java:358)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.processBeanDefinition(XBeanBeanDefinitionDocumentReader.java:174)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseDefaultElement(XBeanBeanDefinitionDocumentReader.java:101)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseBeanDefinitions(XBeanBeanDefinitionDocumentReader.java:81)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:92)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:507)
> >> >>>         at
> >> >>>
> >> org.apache.xbean.spring.context.v2.XBeanXmlBeanDefinitionReader.registerBeanDefinitions(XBeanXmlBeanDefinitionReader.java:79)
> >> >>>         at
> >> >>>
> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:398)
> >> >>>         ... 32 more
> >> >>> Caused by: java.lang.ClassNotFoundException:
> >> >>> com.ibatis.sqlmap.client.SqlMapClient in classloader
> >> >>> com.ibatis.sqlmap.client.SqlMapClient
> >> >>>         at
> >> >>>
> >> org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:206)
> >> >>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> >> >>> 
> >> >>> As you can see the exception is java.lang.NoClassDefFoundError and it
> >> is
> >> >>> raised from ApplicationContext.refresh().
> >> >>> I have ibatis-sqlmap in my dependencies and it is included in SU's
> >> lib
> >> >>> derectory.
> >> >>> 
> >> >>> Regard
> >> >>> 
> >> >>> 
> >> >>> Jean-Baptiste Onofré wrote:
> >> >>> > 
> >> >>> > I understand Piotr.
> >> >>> > 
> >> >>> > Anyway, by default, if you have the dependency in the SU's pom.xml,
> >> >>> the
> >> >>> > jar is present
> >> >>> > in the SU classloader.
> >> >>> > For exemple, I have heavily used this behavior with CXF-SE to proxy
> >> >>> EJB
> >> >>> > and include 
> >> >>> > the EJB's stub in the SU.
> >> >>> > 
> >> >>> > Please, could you attach the raised exception (NoClassDefFound or
> >> >>> > ClassNotFound) ?
> >> >>> > 
> >> >>> > Thanks
> >> >>> > Regards
> >> >>> > JB
> >> >>> > 
> >> >>> > On Friday 09 January 2009 - 12:09, Piotr Jagielski wrote:
> >> >>> >> 
> >> >>> >> Hi Jean,
> >> >>> >> 
> >> >>> >> I tried adding classpath entry but it doesn't help. I also read in
> >> >>> >> http://servicemix.apache.org/classloaders.html that lib/*.jar are
> >> >>> added
> >> >>> >> to
> >> >>> >> SU'a classpath by default - is this correct?
> >> >>> >> 
> >> >>> >> Adding ibatis.jar to SMX lib directory of course helps, but I'd
> >> >>> prefer to
> >> >>> >> find some better solution. On 3.2.1 it was not necessary to do it.
> >> >>> >> 
> >> >>> >> Regards
> >> >>> >> 
> >> >>> >> 
> >> >>> >> Jean-Baptiste Onofré wrote:
> >> >>> >> > 
> >> >>> >> > Hi Piotr
> >> >>> >> > 
> >> >>> >> > Do you have ibatis dependency in the SU's pom.xml ?
> >> >>> >> > 
> >> >>> >> > Overwise, you can put :
> >> >>> >> > - ibatis.jar in the SMX lib directory (loaded by classworlds)
> >> >>> >> > - add a <classpath/> entry in the xbean.xml
> >> >>> >> > 
> >> >>> >> > Regards
> >> >>> >> > JB
> >> >>> >> > 
> >> >>> >> > 
> >> >>> >> > On Friday 09 January 2009 - 11:48, Piotr Jagielski wrote:
> >> >>> >> >> 
> >> >>> >> >> Hi all,
> >> >>> >> >> 
> >> >>> >> >> I'm trying to migrate existing services from 3.2.1 to 3.3.
> >> >>> >> >> While deploying SA on 3.3 NoClassDefFoundError occurs while
> >> >>> >> instantiating
> >> >>> >> >> some IBatis references from xbean.xml - which doesn't happen on
> >> >>> 3.2.1.
> >> >>> >> I
> >> >>> >> >> have ibatis.jar in SU lib directory.
> >> >>> >> >> 
> >> >>> >> >> I searched through code and found some changes in
> >> >>> >> AbstractXbeanDeployer
> >> >>> >> >> in
> >> >>> >> >> 3.3 :
> >> >>> >> >> 
> >> >>> >> >> ClassLoader classLoader =
> >> component.getClass().getClassLoader();
> >> >>> >> >> Thread.currentThread().setContextClassLoader(classLoader);
> >> >>> >> >> ...
> >> >>> >> >> applicationContext.refresh();
> >> >>> >> >> su.setApplicationContext(applicationContext);
> >> >>> >> >> // Use SU classloader
> >> >>> >> >>
> >> >>> >>
> >> >>>
> >> Thread.currentThread().setContextClassLoader(su.getConfigurationClassLoader());
> >> >>> >> >> initApplicationContext(applicationContext);
> >> >>> >> >> 
> >> >>> >> >> So it looks like refresh() method is called with component's
> >> class
> >> >>> >> loader
> >> >>> >> >> and classes from within SU jars are not loaded - and
> >> >>> NoClassDefFound
> >> >>> >> is
> >> >>> >> >> raised.
> >> >>> >> >> This problem is related to servicemix-jsr181, IBatis classes on
> >> >>> >> >> servicemix-camel are loaded without errors.
> >> >>> >> >> 
> >> >>> >> >> Any suggestions?
> >> >>> >> >> 
> >> >>> >> >> Regards,
> >> >>> >> >> Piotr
> >> >>> >> >> -- 
> >> >>> >> >> View this message in context:
> >> >>> >> >>
> >> >>> >>
> >> >>>
> >> http://www.nabble.com/SU-deployed-on-servicemix-jsr181-2008.01-couldn%27t-find-classes-from-jars-included-in-SU-lib-directory-tp21379285p21379285.html
> >> >>> >> >> Sent from the ServiceMix - User mailing list archive at
> >> >>> Nabble.com.
> >> >>> >> >> 
> >> >>> >> > 
> >> >>> >> > -- 
> >> >>> >> > Jean-Baptiste Onofré (Nanthrax)
> >> >>> >> > BuildProcess/AutoDeploy Project Leader
> >> >>> >> > http://buildprocess.sourceforge.net
> >> >>> >> > [email protected]
> >> >>> >> > PGP : 17D4F086
> >> >>> >> > 
> >> >>> >> > 
> >> >>> >> 
> >> >>> >> -- 
> >> >>> >> View this message in context:
> >> >>> >>
> >> >>>
> >> http://www.nabble.com/SU-deployed-on-servicemix-jsr181-2008.01-couldn%27t-find-classes-from-jars-included-in-SU-lib-directory-tp21379285p21379692.html
> >> >>> >> Sent from the ServiceMix - User mailing list archive at
> >> Nabble.com.
> >> >>> >> 
> >> >>> > 
> >> >>> > -- 
> >> >>> > Jean-Baptiste Onofré (Nanthrax)
> >> >>> > BuildProcess/AutoDeploy Project Leader
> >> >>> > http://buildprocess.sourceforge.net
> >> >>> > [email protected]
> >> >>> > PGP : 17D4F086
> >> >>> > 
> >> >>> > 
> >> >>> 
> >> >>> -- 
> >> >>> View this message in context:
> >> >>>
> >> http://www.nabble.com/SU-deployed-on-servicemix-jsr181-2008.01-couldn%27t-find-classes-from-jars-included-in-SU-lib-directory-tp21379285p21380549.html
> >> >>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >> >>> 
> >> >> 
> >> >> -- 
> >> >> Jean-Baptiste Onofré (Nanthrax)
> >> >> BuildProcess/AutoDeploy Project Leader
> >> >> http://buildprocess.sourceforge.net
> >> >> [email protected]
> >> >> PGP : 17D4F086
> >> >> 
> >> >> 
> >> > 
> >> > 
> >> 
> >> -- 
> >> View this message in context:
> >> http://www.nabble.com/SU-deployed-on-servicemix-jsr181-2008.01-couldn%27t-find-classes-from-jars-included-in-SU-lib-directory-tp21379285p21432003.html
> >> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >> 
> > 
> > -- 
> > Jean-Baptiste Onofré (Nanthrax)
> > BuildProcess/AutoDeploy Project Leader
> > http://buildprocess.sourceforge.net
> > [email protected]
> > PGP : 17D4F086
> > 
> > 
> 
> -- 
> View this message in context: 
> http://www.nabble.com/SU-deployed-on-servicemix-jsr181-2008.01-couldn%27t-find-classes-from-jars-included-in-SU-lib-directory-tp21379285p21445306.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> 

-- 
Jean-Baptiste Onofré (Nanthrax)
BuildProcess/AutoDeploy Project Leader
http://buildprocess.sourceforge.net
[email protected]
PGP : 17D4F086

Reply via email to