tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Blevins <david.blev...@visi.com>
Subject Re: Deploying Spring-Integration example
Date Tue, 28 Jul 2009 17:27:27 GMT

On Jul 24, 2009, at 11:19 AM, David Sells wrote:

> Hi David et al,
>
> I'm wondering if the Spring-Integration example is deployable.  The  
> program
> compiles and runs through its' JUnit tests but when I try to deploy:
>
>          openejb deploy spring-integration-1.0.jar
>
> (Note that the Calculator example deploys correctly)
>
> I get the following exception.  I don't see a way around this problem:
>
> Thanks, David S.
>
> org.apache.openejb.OpenEJBException: No provider available for  
> resource-ref
> 'null' of type 'org.superbiz.spring.Theaters' for 'CineplexImpl'.

The example really shows a standalone java application that boots  
Spring which in turn boots OpenEJB as an embedded container.  In this  
scenario the Spring context and the EJB applications are essentially  
getting booted at the same time; first the Spring context then the  
OpenEJB and side of things are kicked off via an  
ApplicationContextAware object configured in the Spring xml.  So  
essentially Spring boots OpenEJB which is itself a spring bean that is  
ApplicationContextAware and can then import/export all sorts of things  
to and from the Spring context.

The details on how to do the reverse haven't been worked on yet --  
definite area for contribution if anyone is interested.

When you go to deploy an application that uses Spring into OpenEJB or  
Tomcat+OpenEJB, then for all intense purposes Spring and the Spring  
context do not exist yet and nothing can be imported/exported and the  
result errors saying things your application expects can't be found.

This could be solved by having OpenEJB aggressively boot your spring  
application for your at deploy time while it's booting your  
application.  Then the same import/export could be done and all things  
would work bi-directionally.  We could potentially look for a Spring  
file named META-INF/openejb-spring.xml (or something like that) and  
boot it with the application.  Then all the existing import/export  
code we have could be executed things would work fine.

Not something I have time to work on but more than happy to help  
anyone who does.  Happy to clock in some dev list, irc, or even skype  
time if someone wanted to give it a go.

-David




Mime
View raw message