tomee-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Romain Manni-Bucau (JIRA)" <>
Subject [jira] [Commented] (OPENEJB-1939) OpenEjb processes @Resource wrong
Date Tue, 20 Nov 2012 12:12:58 GMT


Romain Manni-Bucau commented on OPENEJB-1939:

don't think so, at least when this code was added it was false and honestly even with 1000
resources it will not optimize the code enough to be visible (compared to scanning, jpa etc...)
so i prefer to keep it as this (at least for the release in progress)

> OpenEjb processes @Resource wrong
> ---------------------------------
>                 Key: OPENEJB-1939
>                 URL:
>             Project: OpenEJB
>          Issue Type: Bug
>            Reporter: Borislav Kapukaranov
>         Attachments: listener.jar, TestResourceApp.war
> Hi,
> I have an application that injects a resource in a servlet and defines a ejb-local-ref
in it's web.xml but it isn't used anywhere. 
> A custom object factory is added to the naming resource for my annotated field by a NamingListener.
This way upon instantiating the servlet my factory gets called and creates the resource.
> However this doesn't work in Tomee. OpenEjb tries to find a service provider for this
resource instead of letting tomcat do its work.
> I tested on tomcat 7.0.32 and tomee 1.5.0
> Attached are jar and app that will help to reproduce it. 
> Source included.
> How to setup:
> 1. Copy listener.jar into tomee/lib
> 2. Copy in tomee/conf/context.xml this: <Listener className="listener.NamingListener"
> 3. Place the app in webapps and start tomee
> 4. Request on http://localhost:8080/TestResourceApp/TestServlet
> On Tomcat I get a good response and in the server's console I can find system.out of
my factory:
> {quote}
> creating resource from factory
> resource ready
> {quote}
> On Tomee deployment fails with:
> Caused by: org.apache.openejb.OpenEJBException: No provider available for resource-ref
'null' of type 'resource.TestResource' for 'TestBean'.
> 	at org.apache.openejb.config.AutoConfig.autoCreateResource(
> 	at org.apache.openejb.config.AutoConfig.getResourceId(
> 	at org.apache.openejb.config.AutoConfig.getResourceId(
> 	at org.apache.openejb.config.AutoConfig.processResourceRef(
> 	at org.apache.openejb.config.AutoConfig.deploy(
> 	at org.apache.openejb.config.AutoConfig.deploy(
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(
> 	at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(
> What is strange here is that it seems as if OpenEjb is trying to inject the resource
in the defined in the web.xml EJB instead of in the servlet.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message