|
View:
New views
12 Messages
—
Rating Filter:
Alert me
|
|
|
Tomcat - Injection: No such propertyI'm trying to run my application with Tomcat+openEJB, but I can't figure out why the EntityManager isn't injected correctly into the EAO sessionbean.
My war file is packed with the ejb.jar in \WEB-INF\lib. The client is able to lookup the facade, but when the facade delegates the EntityManager actions to the EAO a null pointer exception is thrown. Here's the log. INFO - PersistenceUnit(name=sp2k, provider=org.apache.openjpa.persistence.PersistenceProviderImpl) INFO - Jndi(name=TaxaEAOBeanLocal) --> Ejb(deployment-id=TaxaEAOBean) INFO - Jndi(name=Sp2kServiceBeanRemote) --> Ejb(deployment-id=Sp2kServiceBean) INFO - Created Ejb(deployment-id=TaxaEAOBean, ejb-name=TaxaEAOBean, container=My Stateless Container) INFO - Created Ejb(deployment-id=Sp2kServiceBean, ejb-name=Sp2kServiceBean, container=My Stateless Container) INFO - Deployed Application(path=F:\tomcat\apache-tomcat-6.0.16\webapps\fddb-war-1.0-SNAPSHOT) WARN - Injection: No such property 'no.uib.gyro.domain.classification.TaxaEAOBean/em' in class no.uib.gyro.domain.classification.TaxaEAOBean WARN - Injection: No such property 'no.uib.gyro.domain.classification.TaxaEAOBean/em' in class no.uib.gyro.domain.classification.TaxaEAOBean The @PersistenceContext annotation is inside the TaxaEAOBean, so it's not past to the EAO from the facade. The strange thing is that when I put the EJB's in the war archive, it all works fine. Is there a difference to openEJB between adding ejb.jar in WEB-INF\lib or to put the beans directly in the WEB-INF\classes? Thanks. -Erik |
|
|
Re: Tomcat - Injection: No such propertyI am having the same problem with Jetty. I am using the maven jetty:run plugin and when I put my SSBs in a separate EJB jar openEJB starts up fine. The EJBs are loaded correctly and I can get the local interface from JNDI, however when I call any method I get a NPE because nothing is injected. When I take the SSBs and place them in my WAR project everything works fine.
I am going to create an example app that demonstrates this problem. If someone could let me know where to upload it I would appreciate it. Here is the output of the failed run: [INFO] Starting jetty 6.1.6 ... 2008-03-31 19:22:58.839::INFO: jetty-6.1.6 Apache OpenEJB 3.0-SNAPSHOT build: 20080311-01:28 http://openejb.apache.org/ INFO - openejb.home = /home/klewelling/Documents/development/java-examples/tech-preview/Struts-WAR INFO - openejb.base = /home/klewelling/Documents/development/java-examples/tech-preview/Struts-WAR INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service) INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager) INFO - Configuring Service(id=techPreviewUnmanaged, type=Resource, provider-id=Default JDBC Database) INFO - Configuring Service(id=techPreview, type=Resource, provider-id=Default JDBC Database) INFO - Configuring Service(id=Default JDK 1.3 ProxyFactory, type=ProxyFactory, provider-id=Default JDK 1.3 ProxyFactory) INFO - Found EjbModule in classpath: /home/klewelling/.m2/repository/com/etcc/example/EJB/1.0/EJB-1.0.jar INFO - Configuring app: /home/klewelling/.m2/repository/com/etcc/example/EJB/1.0/EJB-1.0.jar INFO - Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container) INFO - Auto-creating a container for bean UnitTestHelperBean: Container(type=STATELESS, id=Default Stateless Container) INFO - Configuring PersistenceUnit(name=DefaultPU, provider=org.hibernate.ejb.HibernatePersistence) INFO - Loaded Module: /home/klewelling/.m2/repository/com/etcc/example/EJB/1.0/EJB-1.0.jar INFO - Assembling app: /home/klewelling/.m2/repository/com/etcc/example/EJB/1.0/EJB-1.0.jar INFO - PersistenceUnit(name=DefaultPU, provider=org.hibernate.ejb.HibernatePersistence) INFO - Jndi(name=UnitTestHelperBeanLocal) --> Ejb(deployment-id=UnitTestHelperBean) INFO - Jndi(name=UserOperationsBeanLocal) --> Ejb(deployment-id=UserOperationsBean) INFO - Jndi(name=AuthenticationOperationsBeanLocal) --> Ejb(deployment-id=AuthenticationOperationsBean) INFO - Jndi(name=DatabaseSetupBeanLocal) --> Ejb(deployment-id=DatabaseSetupBean) INFO - Created Ejb(deployment-id=UnitTestHelperBean, ejb-name=UnitTestHelperBean, container=Default Stateless Container) INFO - Created Ejb(deployment-id=UserOperationsBean, ejb-name=UserOperationsBean, container=Default Stateless Container) INFO - Created Ejb(deployment-id=AuthenticationOperationsBean, ejb-name=AuthenticationOperationsBean, container=Default Stateless Container) INFO - Created Ejb(deployment-id=DatabaseSetupBean, ejb-name=DatabaseSetupBean, container=Default Stateless Container) INFO - Deployed Application(path=/home/klewelling/.m2/repository/com/etcc/example/EJB/1.0/EJB-1.0.jar) INFO - OpenEJB ready. OpenEJB ready. 2008-03-31 19:23:02.901::INFO: No Transaction manager found - if your webapp requires one, please configure one. WARN - Injection: No such property 'com.etcc.example.ejb.util.DatabaseSetupBean/em' in class com.etcc.example.ejb.util.DatabaseSetupBean 2008-03-31 19:23:03.437::WARN: failed StartupServlet javax.servlet.ServletException: The bean encountered a non-application exception.; nested exception is: java.lang.NullPointerException at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:437) at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:256) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:612) at org.mortbay.jetty.servlet.Context.startContext(Context.java:139) at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1216) at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:509) at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:447) at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147) at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117) at org.mortbay.jetty.Server.doStart(Server.java:222) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) at org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132) at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:337) at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:279) at org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:203) at org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:182) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:420) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:493) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:463) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:330) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:123) at org.apache.maven.cli.MavenCli.main(MavenCli.java:272) 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:585) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Thanks Kenneth
|
|
|
Re: Tomcat - Injection: No such propertyFYI I got the injection to work. When I was putting together a demonstration the injection started working. The problem has to do with dependencies in the pom.xml. I am not sure if there was something extra causing the problem or perhaps the order of the jars in the classpath. I am uploading an example
injection-example.zip By the way this example demonstrations embedding openEJB in Jetty. The important piece of the puzzle is in the WAR/pom.xml: <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <configuration> <scanIntervalSeconds>5</scanIntervalSeconds> <contextPath>/example</contextPath> <systemProperties> <systemProperty> <name>java.naming.factory.initial</name> <value>org.apache.openejb.client.LocalInitialContextFactory</value> </systemProperty> <systemProperty> <name>java.naming.factory.url.pkgs</name> <value>org.mortbay.naming</value> </systemProperty> </systemProperties> </configuration> <dependencies> </dependencies> </plugin> The system property "java.naming.factory.url.pkgs" is the key. From what I can tell openEJB's IvmContext will attempt to do JNDI lookups and if it fails will look for additional ObjectFactories and delegate to them. By adding the "org.morbay.naming" system property IvmContext finds the Jetty JNDI context. Without this setting the jetty plugin will fail with the error: "javax.naming.NameNotFoundException: Name "java:comp" not found." It took me a while to figure this out so it may be useful to add to the openEJB docs. Hope this helps, Kenneth |
|
|
Re: Tomcat - Injection: No such propertyThank you Kenneth!
I have tried to set the properties you talked about, but I don't really know how to configure it to lookup Tomcat's JNDI context. I have tried this with no luck: Properties p = new Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.client.LocalInitialContextFactory"); p.put(Context.URL_PKG_PREFIXES, "org.apache.naming.factory.XXX"); Do you know how to configure this correctly? Erik
|
|
|
Re: Tomcat - Injection: No such propertyOn Mar 29, 2008, at 1:14 PM, ebaxt wrote: > > I'm trying to run my application with Tomcat+openEJB, but I can't > figure out > why the EntityManager isn't injected correctly into the EAO > sessionbean. > My war file is packed with the ejb.jar in \WEB-INF\lib. > > The client is able to lookup the facade, but when the facade > delegates the > EntityManager actions to the EAO a null pointer exception is thrown. > > Here's the log. > > INFO - PersistenceUnit(name=sp2k, > provider=org.apache.openjpa.persistence.PersistenceProviderImpl) > INFO - Jndi(name=TaxaEAOBeanLocal) --> Ejb(deployment-id=TaxaEAOBean) > INFO - Jndi(name=Sp2kServiceBeanRemote) --> > Ejb(deployment-id=Sp2kServiceBean) > INFO - Created Ejb(deployment-id=TaxaEAOBean, ejb-name=TaxaEAOBean, > container=My Stateless Container) > INFO - Created Ejb(deployment-id=Sp2kServiceBean, ejb- > name=Sp2kServiceBean, > container=My Stateless Container) > INFO - Deployed > Application(path=F:\tomcat\apache-tomcat-6.0.16\webapps\fddb-war-1.0- > SNAPSHOT) > WARN - Injection: No such property > 'no.uib.gyro.domain.classification.TaxaEAOBean/em' in class > no.uib.gyro.domain.classification.TaxaEAOBean > WARN - Injection: No such property > 'no.uib.gyro.domain.classification.TaxaEAOBean/em' in class > no.uib.gyro.domain.classification.TaxaEAOBean > > The @PersistenceContext annotation is inside the TaxaEAOBean, so > it's not > past to the EAO from the facade. > > The strange thing is that when I put the EJB's in the war archive, > it all > works fine. Is there a difference to openEJB between adding ejb.jar in > WEB-INF\lib or to put the beans directly in the WEB-INF\classes? There shouldn't be a difference, no. There might be something we need to fix here. Give the latest code a try and see if the problem doesn't go away: http://people.apache.org/~dblevins/3.0-SNAPSHOT/openejb.war If it's still there, then if you can file a jira at http://issues.apache.org/jira/browse/OPENEJB , that'd be great. If you could include a detailed description of your setup or a small app that reproduces the issue, that'd be great. Thanks for your patience! -David |
|
|
Re: Tomcat - Injection: No such propertyOn Apr 1, 2008, at 12:14 PM, klewelling wrote: > > FYI I got the injection to work. When I was putting together a > demonstration > the injection started working. The problem has to do with > dependencies in > the pom.xml. I am not sure if there was something extra causing the > problem > or perhaps the order of the jars in the classpath. I am uploading an > example > > http://www.nabble.com/file/p16421933/injection-example.zip > injection-example.zip > > By the way this example demonstrations embedding openEJB in Jetty. The > important piece of the puzzle is in the WAR/pom.xml: > > <plugin> > <groupId>org.mortbay.jetty</groupId> > <artifactId>maven-jetty-plugin</artifactId> > <configuration> > <scanIntervalSeconds>5</scanIntervalSeconds> > <contextPath>/example</contextPath> > <systemProperties> > <systemProperty> > <name>java.naming.factory.initial</name> > <value>org.apache.openejb.client.LocalInitialContextFactory</ > value> > </systemProperty> > <systemProperty> > <name>java.naming.factory.url.pkgs</name> > <value>org.mortbay.naming</value> > </systemProperty> > </systemProperties> > </configuration> > <dependencies> > </dependencies> > </plugin> > > > The system property "java.naming.factory.url.pkgs" is the key. From > what I > can tell openEJB's IvmContext will attempt to do JNDI lookups and if > it > fails will look for additional ObjectFactories and delegate to them. > By > adding the "org.morbay.naming" system property IvmContext finds the > Jetty > JNDI context. Without this setting the jetty plugin will fail with the > error: "javax.naming.NameNotFoundException: Name "java:comp" not > found." > > It took me a while to figure this out so it may be useful to add to > the > openEJB docs. This is great, thank you! We'll definitely get this into the docs. -David |
|
|
Re: Tomcat - Injection: No such propertyYou may want to try setting the properties as system properties, i.e. java ... -Djava.naming.factory.initial=org.apache.openejb.client.LocalInitialContextFactory -Djava.naming.factory.url.pkgs=org.apache.naming.factory.XXX or something like that. I think it may be important that openEJB's initialContext is the first to start up rather than tomcats. If I have some free time I can try to get my setup working with tomcat. Kenneth
|
|
|
Re: Tomcat - Injection: No such propertyOn Apr 2, 2008, at 3:30 PM, klewelling wrote: > > > You may want to try setting the properties as system properties, > i.e. java > ... > - > Djava > .naming > .factory.initial=org.apache.openejb.client.LocalInitialContextFactory > -Djava.naming.factory.url.pkgs=org.apache.naming.factory.XXX > > or something like that. I think it may be important that openEJB's > initialContext is the first to start up rather than tomcats. If I > have some > free time I can try to get my setup working with tomcat. That's definitely true of most third-party JNDI implementations; i.e. we should be first as we will delegate to them, whereas they usually won't delegate to us. But for Tomcat specifically, we have some code that exports all of our JNDI entries into Tomcat so that there only needs to be one JNDI impl controlling the show -- Tomcat's. Not sure why the EntityManager isn't getting picked up with the beans in WEB-INF/lib/ vs WEB-INF/classes/. We did add some very detailed logging around the resolution of EntityManager references specifically since 3.0-beta-2 that might help (in the new openejb.war i just put up). Hopefully there'll be something in the log that might illuminate what's going on. -David > ebaxt wrote: >> >> Thank you Kenneth! >> >> I have tried to set the properties you talked about, but I don't >> really >> know how to configure it to lookup Tomcat's JNDI context. >> >> I have tried this with no luck: >> >> Properties p = new Properties(); >> p.put(Context.INITIAL_CONTEXT_FACTORY, >> "org.apache.openejb.client.LocalInitialContextFactory"); >> p.put(Context.URL_PKG_PREFIXES, >> "org.apache.naming.factory.XXX"); >> >> Do you know how to configure this correctly? >> >> Erik >> >> >> klewelling wrote: >>> >>> FYI I got the injection to work. When I was putting together a >>> demonstration the injection started working. The problem has to do >>> with >>> dependencies in the pom.xml. I am not sure if there was something >>> extra >>> causing the problem or perhaps the order of the jars in the >>> classpath. I >>> am uploading an example >>> >>> http://www.nabble.com/file/p16421933/injection-example.zip >>> injection-example.zip >>> >>> By the way this example demonstrations embedding openEJB in Jetty. >>> The >>> important piece of the puzzle is in the WAR/pom.xml: >>> >>> <plugin> >>> <groupId>org.mortbay.jetty</groupId> >>> <artifactId>maven-jetty-plugin</artifactId> >>> <configuration> >>> <scanIntervalSeconds>5</scanIntervalSeconds> >>> <contextPath>/example</contextPath> >>> <systemProperties> >>> <systemProperty> >>> <name>java.naming.factory.initial</name> >>> <value>org.apache.openejb.client.LocalInitialContextFactory</ >>> value> >>> </systemProperty> >>> <systemProperty> >>> <name>java.naming.factory.url.pkgs</name> >>> <value>org.mortbay.naming</value> >>> </systemProperty> >>> </systemProperties> >>> </configuration> >>> <dependencies> >>> </dependencies> >>> </plugin> >>> >>> >>> The system property "java.naming.factory.url.pkgs" is the key. >>> From what >>> I can tell openEJB's IvmContext will attempt to do JNDI lookups >>> and if it >>> fails will look for additional ObjectFactories and delegate to >>> them. By >>> adding the "org.morbay.naming" system property IvmContext finds >>> the Jetty >>> JNDI context. Without this setting the jetty plugin will fail with >>> the >>> error: "javax.naming.NameNotFoundException: Name "java:comp" not >>> found." >>> >>> It took me a while to figure this out so it may be useful to add >>> to the >>> openEJB docs. >>> >>> Hope this helps, >>> Kenneth >>> >> >> > > -- > View this message in context: http://www.nabble.com/Tomcat---Injection%3A-No-such-property-tp16374013p16452221.html > Sent from the OpenEJB User mailing list archive at Nabble.com. > > |
|
|
Re: Tomcat - Injection: No such propertyHi,
I'm having the same problem with tomcat and tapestry 5 + openejb 3.1! I created a slsb and tried to obtain an EntityManager like this: @Stateless public class CoreEJB implements CoreEJBLocal { @PersistenceContext(unitName = "myContext", type = PersistenceContextType.TRANSACTION) private EntityManager entityManager; public List<News> findNews() { return entityManager.createNamedQuery("News.findAll").getResultList(); } } When the method is invoked by my tapestry page, I see the following line in the openejb.log file (and get a NullPointerException because the em was not injected): WARN - Injection: No such property 'business.CoreEJB/entityManager' in class business.CoreEJB On the other hand, invoking the same method with the openejb webapp admin/install tool after looking it up with the jndi-browser, I get the same message but the method returns the record I stored in the database. So is this a tomcat-, tapestry- or openejb-issue here? It seems to me that the ejb3.0-annotations are not working at all, when not placed in a servlet but a filter. marvm
|
|
|
Re: Tomcat - Injection: No such propertyHi,
i am facing the same problem in Tomcat 6.0.18. EntityManager does not get injected: "no such property". Openejb 3.1 works in a test application with EJB-, EntityManager-, DataSource-, javax.Mail.Session-, Queue-injection. Now i have the situation to port an existing application which uses Spring's org.springframework.jndi.JndiObjectFactoryBean for looking up EJBs. Ok we could replace that by a ServiceLocator or of course the EJB3-Injection. But to minimize the effort it would be great to get this scenario running. I have the impression that Spring changes something regarding JNDI, where then Openejb and/or Tomcat have problems. How about this: -Djava.naming.factory.initial=org.apache.openejb.client.LocalInitialContextFactory -Djava.naming.factory.url.pkgs=org.apache.naming.factory.XXX What should work? This as system properties on startup of Tomcat? -Djava.naming.factory.initial=org.apache.openejb.client.LocalInitialContextFactory -Djava.naming.factory.url.pkgs=org.apache.naming.factory Don't get the complete idea here, i am sorry. I found some entries at Springs JndiObjectFactoryBean regarding Containers and looking up JNDI. I tried out the following: <bean id="lookupdataDao" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:/openejb/ejb/LookupdataDaoLocal"/> <property name="expectedType" value="de.ILookupdataDao"/> <property name="jndiEnvironment"> <props> <prop key="java.naming.factory.initial"> org.apache.openejb.client.LocalInitialContextFactory </prop> </props> </property> <property name="lookupOnStartup" value="false"/> <property name="proxyInterface" value="de.ILookupdataDao"/> </bean> But it did not work either. Also copying the EJBs in WEB-INF\classes instead of WEB-INF\lib as stated here did not work. EntityManager still not injected. Any help appreciated. Thanks in advance. Best regards, Jens
|
|
|
Re: Tomcat - Injection: No such propertyOn Jan 31, 2009, at 2:49 AM, JensToerber wrote: > > Hi, > > i am facing the same problem in Tomcat 6.0.18. EntityManager does > not get > injected: "no such property". > Openejb 3.1 works in a test application with EJB-, EntityManager-, > DataSource-, javax.Mail.Session-, Queue-injection. > > Now i have the situation to port an existing application which uses > Spring's > org.springframework.jndi.JndiObjectFactoryBean for looking up EJBs. > > Ok we could replace that by a ServiceLocator or of course the > EJB3-Injection. But to minimize the effort it would be great to get > this > scenario running. > > I have the impression that Spring changes something regarding JNDI, > where > then Openejb and/or Tomcat have problems. > > How about this: > - > Djava > .naming > .factory.initial=org.apache.openejb.client.LocalInitialContextFactory > -Djava.naming.factory.url.pkgs=org.apache.naming.factory.XXX > > What should work? This as system properties on startup of Tomcat? > - > Djava > .naming > .factory.initial=org.apache.openejb.client.LocalInitialContextFactory > -Djava.naming.factory.url.pkgs=org.apache.naming.factory > > Don't get the complete idea here, i am sorry. Seems this thread is getting a little overloaded to the point of being misleading. The Jetty-specific suggestion of setting the java.naming.factory.initial and java.naming.factory.url as system properties should not be done in Tomcat as it will cause failures. Our integration expects to live inside of Tomcat's JNDI tree and we have a lot of code that adds entries to the Tomcat tree so it should contain everything that is required to run the app, including any @PersistenceContext, @PersistenceUnit, @Resource, @EJB refs. Can you give a code example of what you are attempting that doesn't seem to be working? I don't know if this helps anyone on the thread, but here's a servlet that has injected one of every kind of resource[1]. We have equivalents test for each ejb type that run in tomcat as well. I suspect we could use a bunch more webapp examples. -David [1] http://svn.apache.org/repos/asf/openejb/tags/openejb-3.1/itests/openejb-itests-servlets/src/main/java/org/apache/openejb/test/servlet/AnnotatedServlet.java |
|
|
Re: Tomcat - Injection: No such propertyHi David,
i interpreted your answer as there should not be a problem with Spring. Hence thanks for the hint ;-). So i took my test web application and tried to get Spring 2.5.1 running with JndiObjectFactoryBean and it worked. Hence i looked in our production application and i am sorry we had a packaging problem. We were still delivering ejb3-persistence-<version>.jar of Hibernate and jta-<version>.jar. But these two are provided by JBoss (uses Hibernate as JPA provider) and/or Openejb (openejb-core, openejb-jee). Simple, bad mistake, but i hope it helps anyone else facing a similar "no such property" injection problem. In our situation it makes no difference if i use the lookupOnStartup="false" with the proxy interfaces or lookupOnStartup="true" (default) without proxy interfaces. Both configurations work as expected. Thanks for the help. Best regards, Jens
|
| Free embeddable forum powered by Nabble | Forum Help |