Hi Stephan,

Could you try excluding this jar?
Actually, OpenEJB looks for Java EE components for each jars.
I guess it's not required for weblogic.jar so you could exclude this jar
(bootstrap will also be faster).

Have a look to 
http://openejb.apache.org/3.0/application-discovery-via-the-classpath.html
http://openejb.apache.org/3.0/application-discovery-via-the-classpath.html 

openejb.deployments.classpath.exclude=.*/weblogic(-[\\d.]+)?.jar(!/)?
openejb.deployments.classpath.filter.descriptors=true

Can you give it a try?

Jean-Louis



Stephan Bauer wrote:
> 
> Hi,
> 
> I am just wondering if anybody has ever had the same problem, that he 
> had to access a remote EJB deployed on a Weblogic (here 8.1.6) Server.
> My problem is, that as soon as I put the evil weblogic.jar (which I need 
> for communicating with that remote EJB via the t3 protocol) into the 
> build path of my eclipse jee5 projects, then OpenEJB doesn't come up 
> anymore.
> The problems seems to be, that there is a SAXParser in weblogic.jar that 
> comes into play when OpenEJB wants to read the persistence.xml from my 
> ejb/jpa module (see the cause of the stacktrace below).
> Has anyone managed to get rid of that or an idea how it could be solved?
> 
> INFO - Found ClientModule in classpath: 
> C:\eclipse-workspaces\workspace-xxx\xxx-ejb\lib\weblogic.jar
> ....
> ....
> INFO - Beginning load: 
> C:\eclipse-workspaces\workspace-xxx\xxx-ejb\lib\weblogic.jar
> INFO - Configuring enterprise application: classpath.ear
> ERROR - Unable to load Persistence Unit from EAR: classpath.ear, module: 
> /C:/eclipse-workspaces/workspace-xxx/xxx-ejb/build/classes/. Exception:
> null
> javax.xml.bind.UnmarshalException
>  - with linked exception:
> [org.xml.sax.SAXParseException: Premature end of file.]
>     at 
> javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:315)
>     at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(UnmarshallerImpl.java:476)
>     at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:198)
>     at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:167)
>     at 
> javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:120)
>     at 
> javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:103)
>     at 
> org.apache.openejb.jee.jpa.unit.JaxbPersistenceFactory.getPersistence(JaxbPersistenceFactory.java:69)
>     at 
> org.apache.openejb.config.ReadDescriptors.deploy(ReadDescriptors.java:103)
>     at 
> org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
>     at 
> org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
>     at 
> org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:551)
>     at 
> org.apache.openejb.config.ConfigurationFactory.getOpenEjbConfiguration(ConfigurationFactory.java:380)
>     at 
> org.apache.openejb.assembler.classic.Assembler.getOpenEjbConfiguration(Assembler.java:299)
>     at 
> org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:278)
>     at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:137)
>     at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
>     at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
>     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:597)
>     at 
> org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
>     at 
> org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
>     at 
> org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
>     at 
> org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
>     at 
> javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
>     at 
> javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
>     at javax.naming.InitialContext.init(InitialContext.java:223)
>     at javax.naming.InitialContext.<init>(InitialContext.java:197)
>     at 
> com.bmw.sf.xxx.facade.AbstractOpenEJBLocalFacadeTestCase.setupInitialContext(AbstractOpenEJBLocalFacadeTestCase.java:59)
>     at 
> com.bmw.sf.xxx.facade.AbstractOpenEJBLocalFacadeTestCase.setUp(AbstractOpenEJBLocalFacadeTestCase.java:23)
>     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:597)
>     at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>     at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>     at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>     at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
>     at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
>     at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
>     at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>     at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>     at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>     at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>     at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>     at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>     at 
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
>     at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
>     at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: org.xml.sax.SAXParseException: Premature end of file.
>     at 
> weblogic.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1189)
>     at
> weblogic.xml.jaxp.WebLogicXMLReader.parse(WebLogicXMLReader.java:135)
>     at
> weblogic.xml.jaxp.RegistryXMLReader.parse(RegistryXMLReader.java:152)
>     at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
>     at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:194)
>     ... 51 more
> 
> any help would be extremely appreciated...
> Many thanks in advance,
> Stephan
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Accessing-a-Remote-Weblogic-EJB-from-an-OpenEJB-environment-tp26802520p26808305.html
Sent from the OpenEJB User mailing list archive at Nabble.com.

Reply via email to