Guess you can still use Lazy=true. 2017-05-09 9:52 GMT+02:00 Violeta Georgieva <[email protected]>:
> Hi, > > 2017-05-09 10:02 GMT+03:00 Romain Manni-Bucau <[email protected]>: > > > > Hi Violeta, > > > > yes for ears intent was to put the descriptor in META-INF and the driver > in > > ear/lib. That said you can add Lazy=true to support wars. > > I tried to put the driver in the EAR/lib and the resources.xml file in > EAR/META-INF. > Unfortunately the driver still cannot be found. (exception below, I > intentionally removed the hsqldb from TomEE/lib) > > Debugging the code I saw that the context class loader was used [1]. The > context class loader was the loader that contains TomEE/lib and not the > EAR/lib. > > Shouldn't it use the EAR class loader? > > Regards, > Violeta > > [1] > https://github.com/apache/tomee/blob/master/container/ > openejb-core/src/main/java/org/apache/openejb/assembler/ > classic/Assembler.java#L2949 > > org.apache.xbean.propertyeditor.PropertyEditorException: Unable to > resolve > class org.hsqldb.jdbcDriver > at > org.apache.xbean.propertyeditor.ClassEditor.toObjectImpl(ClassEditor.java: > 43) > at > org.apache.xbean.propertyeditor.AbstractConverter.toObject( > AbstractConverter.java:86) > at > org.apache.xbean.propertyeditor.PropertyEditors.getValue( > PropertyEditors.java:284) > at org.apache.xbean.recipe.RecipeHelper.convert(RecipeHelper.java:181) > at > org.apache.xbean.recipe.ObjectRecipe.extractConstructorArgs( > ObjectRecipe.java:592) > at > org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:275) > at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96) > at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61) > at > org.apache.openejb.assembler.classic.Assembler.doCreateResource(Assembler. > java:2970) > at > org.apache.openejb.assembler.classic.Assembler. > createResource(Assembler.java:2803) > at > org.apache.openejb.config.ConfigurationFactory.doInstall( > ConfigurationFactory.java:466) > at > org.apache.openejb.config.ConfigurationFactory.install( > ConfigurationFactory.java:459) > at > org.apache.openejb.config.AutoConfig.installResource(AutoConfig.java:2194) > at > org.apache.openejb.config.AutoConfig.processApplicationResources( > AutoConfig.java:1026) > at org.apache.openejb.config.AutoConfig.deploy(AutoConfig.java:190) > at > org.apache.openejb.config.ConfigurationFactory$Chain. > deploy(ConfigurationFactory.java:420) > at > org.apache.openejb.config.ConfigurationFactory.configureApplication( > ConfigurationFactory.java:1037) > at > org.apache.tomee.catalina.TomcatWebAppBuilder.checkHost( > TomcatWebAppBuilder.java:2204) > at > org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent( > GlobalListenerSupport.java:141) > at > org.apache.catalina.util.LifecycleBase.fireLifecycleEvent( > LifecycleBase.java:94) > at > org.apache.catalina.core.ContainerBase.backgroundProcess( > ContainerBase.java:1164) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor. > processChildren(ContainerBase.java:1388) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor. > processChildren(ContainerBase.java:1392) > at > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor. > run(ContainerBase.java:1360) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.ClassNotFoundException: org.hsqldb.jdbcDriver > at java.net.URLClassLoader.findClass(URLClassLoader.java:381) > at java.lang.ClassLoader.loadClass(ClassLoader.java:424) > at java.lang.ClassLoader.loadClass(ClassLoader.java:357) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:348) > at > org.apache.xbean.propertyeditor.ClassEditor.toObjectImpl(ClassEditor.java: > 40) > ... 24 more > > > > > > > > Romain Manni-Bucau > > @rmannibucau <https://twitter.com/rmannibucau> | Blog > > <https://blog-rmannibucau.rhcloud.com> | Old Blog > > <http://rmannibucau.wordpress.com> | Github < > https://github.com/rmannibucau> | > > LinkedIn <https://www.linkedin.com/in/rmannibucau> | JavaEE Factory > > <https://javaeefactory-rmannibucau.rhcloud.com> > > > > 2017-05-08 23:04 GMT+02:00 Violeta Georgieva <[email protected]>: > > > > > Hi, > > > > > > I have WAR archive that contains a driver, located in WEB-INF/lib and > > > resources.xml, located in WEB-INF. The WAR file is packaged in an EAR > file. > > > When I deploy the EAR file I receive an exception that the driver > cannot be > > > located (ClassNotFoundException). > > > Isn't it possible to provide a driver with my WAR archive? > > > I'm using TomEE WebProfile 7.0.3. > > > > > > Thanks a lot, > > > Violeta > > > > > > > > > > > > -- > > > View this message in context: http://tomee-openejb.979440. > > > n4.nabble.com/Driver-location-in-an-EAR-file-tp4681675.html > > > Sent from the TomEE Users mailing list archive at Nabble.com. > > > >
