<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>dev@openejb.apache.org Archives</title>
<link rel="self" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/?format=atom"/>
<link href="http://mail-archives.apache.org/mod_mbox/openejb-dev/"/>
<id>http://mail-archives.apache.org/mod_mbox/openejb-dev/</id>
<updated>2009-12-10T04:29:21Z</updated>
<entry>
<title>Re: openejb-client has OSGi Require-Bundle without a maven	dependency.</title>
<author><name>Jarek Gawor &lt;jgawor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c5eb405c70912082048v96554d2l7c099d3b3d2fe1c@mail.gmail.com%3e"/>
<id>urn:uuid:%3c5eb405c70912082048v96554d2l7c099d3b3d2fe1c@mail-gmail-com%3e</id>
<updated>2009-12-09T04:48:33Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hi,

I also have been looking at some OSGi issues in OpenEJB and I think
that Require-Bundle will be needed either in openejb-core (requiring
openejb-client) or openejb-client (requiring openejb-core) bundle in
order to deal with the split package problem in
org.apache.openejb.client package. The best solution would be to get
rid off the split package problem but if that's not possible you might
have to use the Require-Bundle solution. I started a related
discussion on this topic on the Geronimo list:
http://www.mail-archive.com/dev@geronimo.apache.org/msg75387.html

Jarek

On Tue, Dec 1, 2009 at 4:58 PM, David Blevins &lt;david.blevins@visi.com&gt; wrote:
&gt;
&gt; On Nov 3, 2009, at 12:12 PM, David Blevins wrote:
&gt;
&gt;&gt;
&gt;&gt; On Nov 3, 2009, at 7:27 AM, Rick McGuire wrote:
&gt;&gt;
&gt;&gt;&gt; I ran into a little issue with the bundlized version of the
&gt;&gt;&gt; openejb-client jar.  This jar has a Require-Bundle dependency on
&gt;&gt;&gt; org.apache.openejb.openebj-core, but the project pom does not specify a
&gt;&gt;&gt; maven dependency on openejb-core.  This is causing a bit of an issue when
&gt;&gt;&gt; used in Geronimo 3.0 because the framework is using the maven dependencies
&gt;&gt;&gt; to determine the install/start order for the different bundles we're using.
&gt;&gt;&gt;  Since there's no maven dependency, the openejb-client is giving a
&gt;&gt;&gt; resolution constraint failure on the required jar depending on the relative
&gt;&gt;&gt; order the different openejb bundles get started.  Having the correct maven
&gt;&gt;&gt; dependency in the pom would sort all of that out.
&gt;&gt;&gt;
&gt;&gt;&gt; Is there some reason why this was done this way, or is it just an
&gt;&gt;&gt; oversight?
&gt;&gt;
&gt;&gt; I'm not sure why there is a Require-Bundle dep on openejb-core.  Maybe
&gt;&gt; someone else can comment on that.
&gt;&gt;
&gt;&gt; Code-wise, the client jar is designed to work without any other OpenEJB
&gt;&gt; libraries or third party dependencies (except for specs), so that explains
&gt;&gt; why there is not a maven dep.
&gt;
&gt; Still looking for some followup.  As mentioned the openejb-client module
&gt; does not need and should not be allowed to use the code in openejb-core.
&gt;  Going to remove that dependency.
&gt;
&gt; -David
&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb-client has OSGi Require-Bundle without a maven	dependency.</title>
<author><name>Jacek Laskowski &lt;jacek@laskowski.net.pl&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c1b5bfeb50912072308k19d985cagcee08a3305540112@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1b5bfeb50912072308k19d985cagcee08a3305540112@mail-gmail-com%3e</id>
<updated>2009-12-08T07:08:15Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Tue, Dec 1, 2009 at 10:58 PM, David Blevins &lt;david.blevins@visi.com&gt; wrote:

&gt; Still looking for some followup.  As mentioned the openejb-client module
&gt; does not need and should not be allowed to use the code in openejb-core.
&gt;  Going to remove that dependency.

Me, on the other hand, is going to take a look at why it's needed in
the first place. Dunno why I added it - perhaps it made the
classloaders easier to work with.

Jacek

-- 
Jacek Laskowski
Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Jean-Louis MONTEIRO &lt;jean-louis.monteiro@atosorigin.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c26679345.post@talk.nabble.com%3e"/>
<id>urn:uuid:%3c26679345-post@talk-nabble-com%3e</id>
<updated>2009-12-07T15:59:05Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

Great!
Sorry ...

Jean-Louis


Luis F. Planella Gonzalez wrote:
&gt; 
&gt; The patch is there. It's called dataSourceFromModules.patch 
&gt; (https://issues.apache.org/jira/secure/attachment/12427172/dataSourceFromModules.patch).
&gt; I've attached the complete files just to make easier for someone to
&gt; quickly see 
&gt; the entire files...
&gt; --
&gt; Luis Fernando Planella Gonzalez
&gt; 
&gt; 
&gt; Em Segunda-feira 07 Dezembro 2009, Ã s 13:47:52, Jean-Louis MONTEIRO
&gt; escreveu:
&gt;&gt; Hi,
&gt;&gt; 
&gt;&gt; first of all, congrats for your baby ;-)
&gt;&gt; 
&gt;&gt; Can you please attach a patch file instead of the source file?
&gt;&gt; Then, I gonna be more than happy to have a look and commit it for you.
&gt;&gt; 
&gt;&gt; Jean-Louis
&gt;&gt; 
&gt;&gt; Luis F. Planella Gonzalez wrote:
&gt;&gt; &gt; Sorry for reposting, but if what I just proposed is to be implemented,
&gt;&gt; &gt; maybe
&gt;&gt; &gt; the findMatchingDataSources(String) method could be inlined, as I used
&gt;&gt; a
&gt;&gt; &gt; String[] as return to be able to return 2 values.
&gt;&gt; &gt;
&gt;&gt; &gt; I actually liked this way better than what I've patched. The code is
&gt;&gt; &gt; simpler
&gt;&gt; &gt; and easier to add new ids in the check.
&gt;&gt; &gt;
&gt;&gt; &gt; --
&gt;&gt; &gt; Luis Fernando Planella Gonzalez
&gt;&gt; &gt;
&gt;&gt; &gt; Em Segunda-feira 07 Dezembro 2009, Ã s 11:42:13, vocÃª escreveu:
&gt;&gt; &gt;&gt; Actually, I was off for 2 weeks. And yes, she's the first baby. Thanks
&gt;&gt; &gt;&gt; God
&gt;&gt; &gt;&gt;  she's very calm....
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Well, returning to the issue: Sorry, with hundreds of mails after
&gt;&gt; those
&gt;&gt; &gt;&gt; 2 weeks, I've actually seen your answer after I've attached the patch
&gt;&gt; to
&gt;&gt; &gt;&gt;
&gt;&gt; https://issues.apache.org/jira/secure/ManageAttachments.jspa?id=12426288
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Please, check the comment on the issue.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; The code is there needing a review, but I did implemented it several
&gt;&gt; &gt;&gt; ifs, but it could be replaced by something like:
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; // Collect which data sources will be searched
&gt;&gt; &gt;&gt; List&lt;String&gt; ids = new ArrayList&lt;String&gt;();
&gt;&gt; &gt;&gt; ids.add(unit.getName());
&gt;&gt; &gt;&gt; for (WebModule webModule : app.getWebModules()) {
&gt;&gt; &gt;&gt;     ids.add(webModule.getId());
&gt;&gt; &gt;&gt;     ids.add(webModule.getContextRoot());
&gt;&gt; &gt;&gt; }
&gt;&gt; &gt;&gt; ids.add(app.getModuleId());
&gt;&gt; &gt;&gt; // Search for a matching data source
&gt;&gt; &gt;&gt; for(String id : ids) {
&gt;&gt; &gt;&gt;     dataSources = findMatchingDataSources(id);
&gt;&gt; &gt;&gt;     if (dataSources != null) {
&gt;&gt; &gt;&gt;         jtaDataSourceId = dataSources[0];
&gt;&gt; &gt;&gt;         nonJtaDataSourceId = dataSources[1];
&gt;&gt; &gt;&gt;         break;
&gt;&gt; &gt;&gt; }
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Also, I did added a PersistenceModule.getModuleId() case (with a
&gt;&gt; TODO),
&gt;&gt; &gt;&gt; so
&gt;&gt; &gt;&gt;  it will probably have to be removed.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Anyway, the tests are covering all cases (except for
&gt;&gt; &gt;&gt; PersistenceModule.getModuleId()), and I think the issue is resolved...
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Please, let me know if anything changes...
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; --
&gt;&gt; &gt;&gt; Luis Fernando Planella Gonzalez
&gt;&gt; 
&gt; 
&gt; 

-- 
View this message in context: http://old.nabble.com/Resolve-datasource-from-the-application-name-tp25684131p26679345.html
Sent from the OpenEJB Dev mailing list archive at Nabble.com.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Luis Fernando Planella Gonzalez &lt;lfpg.dev@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c200912071355.18947.lfpg.dev@gmail.com%3e"/>
<id>urn:uuid:%3c200912071355-18947-lfpg-dev@gmail-com%3e</id>
<updated>2009-12-07T15:55:18Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
The patch is there. It's called dataSourceFromModules.patch 
(https://issues.apache.org/jira/secure/attachment/12427172/dataSourceFromModules.patch).
I've attached the complete files just to make easier for someone to quickly see 
the entire files...
--
Luis Fernando Planella Gonzalez


Em Segunda-feira 07 Dezembro 2009, às 13:47:52, Jean-Louis MONTEIRO escreveu:
&gt; Hi,
&gt; 
&gt; first of all, congrats for your baby ;-)
&gt; 
&gt; Can you please attach a patch file instead of the source file?
&gt; Then, I gonna be more than happy to have a look and commit it for you.
&gt; 
&gt; Jean-Louis
&gt; 
&gt; Luis F. Planella Gonzalez wrote:
&gt; &gt; Sorry for reposting, but if what I just proposed is to be implemented,
&gt; &gt; maybe
&gt; &gt; the findMatchingDataSources(String) method could be inlined, as I used a
&gt; &gt; String[] as return to be able to return 2 values.
&gt; &gt;
&gt; &gt; I actually liked this way better than what I've patched. The code is
&gt; &gt; simpler
&gt; &gt; and easier to add new ids in the check.
&gt; &gt;
&gt; &gt; --
&gt; &gt; Luis Fernando Planella Gonzalez
&gt; &gt;
&gt; &gt; Em Segunda-feira 07 Dezembro 2009, às 11:42:13, você escreveu:
&gt; &gt;&gt; Actually, I was off for 2 weeks. And yes, she's the first baby. Thanks
&gt; &gt;&gt; God
&gt; &gt;&gt;  she's very calm....
&gt; &gt;&gt;
&gt; &gt;&gt; Well, returning to the issue: Sorry, with hundreds of mails after those
&gt; &gt;&gt; 2 weeks, I've actually seen your answer after I've attached the patch to
&gt; &gt;&gt; https://issues.apache.org/jira/secure/ManageAttachments.jspa?id=12426288
&gt; &gt;&gt;
&gt; &gt;&gt; Please, check the comment on the issue.
&gt; &gt;&gt;
&gt; &gt;&gt; The code is there needing a review, but I did implemented it several
&gt; &gt;&gt; ifs, but it could be replaced by something like:
&gt; &gt;&gt;
&gt; &gt;&gt; // Collect which data sources will be searched
&gt; &gt;&gt; List&lt;String&gt; ids = new ArrayList&lt;String&gt;();
&gt; &gt;&gt; ids.add(unit.getName());
&gt; &gt;&gt; for (WebModule webModule : app.getWebModules()) {
&gt; &gt;&gt;     ids.add(webModule.getId());
&gt; &gt;&gt;     ids.add(webModule.getContextRoot());
&gt; &gt;&gt; }
&gt; &gt;&gt; ids.add(app.getModuleId());
&gt; &gt;&gt; // Search for a matching data source
&gt; &gt;&gt; for(String id : ids) {
&gt; &gt;&gt;     dataSources = findMatchingDataSources(id);
&gt; &gt;&gt;     if (dataSources != null) {
&gt; &gt;&gt;         jtaDataSourceId = dataSources[0];
&gt; &gt;&gt;         nonJtaDataSourceId = dataSources[1];
&gt; &gt;&gt;         break;
&gt; &gt;&gt; }
&gt; &gt;&gt;
&gt; &gt;&gt; Also, I did added a PersistenceModule.getModuleId() case (with a TODO),
&gt; &gt;&gt; so
&gt; &gt;&gt;  it will probably have to be removed.
&gt; &gt;&gt;
&gt; &gt;&gt; Anyway, the tests are covering all cases (except for
&gt; &gt;&gt; PersistenceModule.getModuleId()), and I think the issue is resolved...
&gt; &gt;&gt;
&gt; &gt;&gt; Please, let me know if anything changes...
&gt; &gt;&gt;
&gt; &gt;&gt; --
&gt; &gt;&gt; Luis Fernando Planella Gonzalez
&gt; 


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Jean-Louis MONTEIRO &lt;jean-louis.monteiro@atosorigin.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c26679167.post@talk.nabble.com%3e"/>
<id>urn:uuid:%3c26679167-post@talk-nabble-com%3e</id>
<updated>2009-12-07T15:47:52Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

Hi,

first of all, congrats for your baby ;-)

Can you please attach a patch file instead of the source file?
Then, I gonna be more than happy to have a look and commit it for you.

Jean-Louis



Luis F. Planella Gonzalez wrote:
&gt; 
&gt; Sorry for reposting, but if what I just proposed is to be implemented,
&gt; maybe 
&gt; the findMatchingDataSources(String) method could be inlined, as I used a 
&gt; String[] as return to be able to return 2 values.
&gt; 
&gt; I actually liked this way better than what I've patched. The code is
&gt; simpler  
&gt; and easier to add new ids in the check.
&gt; 
&gt; --
&gt; Luis Fernando Planella Gonzalez
&gt; 
&gt; 
&gt; Em Segunda-feira 07 Dezembro 2009, Ã s 11:42:13, vocÃª escreveu:
&gt;&gt; Actually, I was off for 2 weeks. And yes, she's the first baby. Thanks
&gt;&gt; God
&gt;&gt;  she's very calm....
&gt;&gt; 
&gt;&gt; Well, returning to the issue: Sorry, with hundreds of mails after those 2
&gt;&gt; weeks, I've actually seen your answer after I've attached the patch to
&gt;&gt; https://issues.apache.org/jira/secure/ManageAttachments.jspa?id=12426288
&gt;&gt; 
&gt;&gt; Please, check the comment on the issue.
&gt;&gt; 
&gt;&gt; The code is there needing a review, but I did implemented it several ifs,
&gt;&gt;  but it could be replaced by something like:
&gt;&gt; 
&gt;&gt; // Collect which data sources will be searched
&gt;&gt; List&lt;String&gt; ids = new ArrayList&lt;String&gt;();
&gt;&gt; ids.add(unit.getName());
&gt;&gt; for (WebModule webModule : app.getWebModules()) {
&gt;&gt;     ids.add(webModule.getId());
&gt;&gt;     ids.add(webModule.getContextRoot());
&gt;&gt; }
&gt;&gt; ids.add(app.getModuleId());
&gt;&gt; // Search for a matching data source
&gt;&gt; for(String id : ids) {
&gt;&gt;     dataSources = findMatchingDataSources(id);
&gt;&gt;     if (dataSources != null) {
&gt;&gt;         jtaDataSourceId = dataSources[0];
&gt;&gt;         nonJtaDataSourceId = dataSources[1];
&gt;&gt;         break;
&gt;&gt; }
&gt;&gt; 
&gt;&gt; Also, I did added a PersistenceModule.getModuleId() case (with a TODO),
&gt;&gt; so
&gt;&gt;  it will probably have to be removed.
&gt;&gt; 
&gt;&gt; Anyway, the tests are covering all cases (except for
&gt;&gt; PersistenceModule.getModuleId()), and I think the issue is resolved...
&gt;&gt; 
&gt;&gt; Please, let me know if anything changes...
&gt;&gt; 
&gt;&gt; --
&gt;&gt; Luis Fernando Planella Gonzalez
&gt; 
&gt; 

-- 
View this message in context: http://old.nabble.com/Resolve-datasource-from-the-application-name-tp25684131p26679167.html
Sent from the OpenEJB Dev mailing list archive at Nabble.com.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Luis Fernando Planella Gonzalez &lt;lfpg.dev@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c200912071153.43302.lfpg.dev@gmail.com%3e"/>
<id>urn:uuid:%3c200912071153-43302-lfpg-dev@gmail-com%3e</id>
<updated>2009-12-07T13:53:43Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Sorry for reposting, but if what I just proposed is to be implemented, maybe 
the findMatchingDataSources(String) method could be inlined, as I used a 
String[] as return to be able to return 2 values.

I actually liked this way better than what I've patched. The code is simpler  
and easier to add new ids in the check.

--
Luis Fernando Planella Gonzalez


Em Segunda-feira 07 Dezembro 2009, às 11:42:13, você escreveu:
&gt; Actually, I was off for 2 weeks. And yes, she's the first baby. Thanks God
&gt;  she's very calm....
&gt; 
&gt; Well, returning to the issue: Sorry, with hundreds of mails after those 2
&gt; weeks, I've actually seen your answer after I've attached the patch to
&gt; https://issues.apache.org/jira/secure/ManageAttachments.jspa?id=12426288
&gt; 
&gt; Please, check the comment on the issue.
&gt; 
&gt; The code is there needing a review, but I did implemented it several ifs,
&gt;  but it could be replaced by something like:
&gt; 
&gt; // Collect which data sources will be searched
&gt; List&lt;String&gt; ids = new ArrayList&lt;String&gt;();
&gt; ids.add(unit.getName());
&gt; for (WebModule webModule : app.getWebModules()) {
&gt;     ids.add(webModule.getId());
&gt;     ids.add(webModule.getContextRoot());
&gt; }
&gt; ids.add(app.getModuleId());
&gt; // Search for a matching data source
&gt; for(String id : ids) {
&gt;     dataSources = findMatchingDataSources(id);
&gt;     if (dataSources != null) {
&gt;         jtaDataSourceId = dataSources[0];
&gt;         nonJtaDataSourceId = dataSources[1];
&gt;         break;
&gt; }
&gt; 
&gt; Also, I did added a PersistenceModule.getModuleId() case (with a TODO), so
&gt;  it will probably have to be removed.
&gt; 
&gt; Anyway, the tests are covering all cases (except for
&gt; PersistenceModule.getModuleId()), and I think the issue is resolved...
&gt; 
&gt; Please, let me know if anything changes...
&gt; 
&gt; --
&gt; Luis Fernando Planella Gonzalez


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Luis Fernando Planella Gonzalez &lt;lfpg.dev@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c200912071142.14068.lfpg.dev@gmail.com%3e"/>
<id>urn:uuid:%3c200912071142-14068-lfpg-dev@gmail-com%3e</id>
<updated>2009-12-07T13:42:13Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Actually, I was off for 2 weeks. And yes, she's the first baby. Thanks God she's 
very calm....

Well, returning to the issue: Sorry, with hundreds of mails after those 2 
weeks, I've actually seen your answer after I've attached the patch to 
https://issues.apache.org/jira/secure/ManageAttachments.jspa?id=12426288

Please, check the comment on the issue.

The code is there needing a review, but I did implemented it several ifs, but 
it could be replaced by something like:

// Collect which data sources will be searched
List&lt;String&gt; ids = new ArrayList&lt;String&gt;();
ids.add(unit.getName());
for (WebModule webModule : app.getWebModules()) {
    ids.add(webModule.getId());
    ids.add(webModule.getContextRoot());
}
ids.add(app.getModuleId());
// Search for a matching data source
for(String id : ids) {
    dataSources = findMatchingDataSources(id);
    if (dataSources != null) {
        jtaDataSourceId = dataSources[0];
        nonJtaDataSourceId = dataSources[1];
        break;
}

Also, I did added a PersistenceModule.getModuleId() case (with a TODO), so it 
will probably have to be removed. 

Anyway, the tests are covering all cases (except for 
PersistenceModule.getModuleId()), and I think the issue is resolved...

Please, let me know if anything changes...

--
Luis Fernando Planella Gonzalez


Em Sexta-feira 20 Novembro 2009, às 19:57:55, David Blevins escreveu:
&gt; On Nov 19, 2009, at 3:46 AM, Luis Fernando Planella Gonzalez wrote:
&gt; &gt; I'd love to keep helping on this issue...
&gt; &gt; However I have an imminent issue: My daughter will be born on
&gt; &gt; saturday, so
&gt; &gt; I'll be off for a week or so.
&gt; &gt; Afterwards, we can resume the subject.
&gt; 
&gt; Wow!  Congratulations!  A week or so?  Guessing this is not your first
&gt; kid, you sound like a pro!
&gt; 
&gt; &gt; Anyway, that algorithm should be used only when neither
&gt; &gt; jtaDataSource nor
&gt; &gt; nonJtaDataSource are used, right? At least for what I saw in code,
&gt; &gt; it's
&gt; &gt; possible to have only nonJtaDataSource (making a new jta datasource
&gt; &gt; to be
&gt; &gt; deployed).
&gt; 
&gt; Yeah, I'm not sure.  I'd have to take a look at our current
&gt; "fanciness" and see what makes the most sense.  We'd want this sort of
&gt; "matching loop" to work for resolving any resource ID, so that might
&gt; change how we code it.
&gt; 
&gt; &gt; So, my guess would be to make the chunk of code I added to deploy(app,
&gt; &gt; persistenceModule) a private method, let's say,
&gt; &gt; locateDataSource(id), which
&gt; &gt; would look for a jta data source with that name, then a non-jta,
&gt; &gt; then an
&gt; &gt; unespecified.
&gt; &gt;
&gt; &gt; So, could it be something like:
&gt; &gt; * if explicit datasources are used, use them
&gt; &gt; * if neither jta-data-source nor non-jta-data-source, try to guess:
&gt; &gt; *** try locateDataSource(persitenceUnit.getName())
&gt; &gt; *** if not found, try
&gt; &gt; locateDataSource(persistenceModule.getModuleId()) // Is
&gt; &gt; it really necessary? As I saw, PersistenceModule.getModuleId() is
&gt; &gt; always null
&gt; &gt; *** if not found, for each WebModule try
&gt; &gt; locateDataSource(webModule.getContextRoot())
&gt; 
&gt; Wasn't referring to the PersistenceModule.getModuleId(), but the
&gt; module in which the persistence unit was found.  *Most* the time the
&gt; persistence.xml is inside an ejb jar or webapp.  We don't retain that
&gt; information when we create the PersistenceModule now, but we could
&gt; maybe link it to the EjbModule or WebModule if it was.  But we can add
&gt; that as a separate step.
&gt; 
&gt; Definitely we would want this as some sort of loop of strings to check
&gt; rather than as a bunch of nested if statements.  Then the same logical
&gt; routine could work for resolving any resource ref.  For a plain
&gt; resource ref the list of strings might be something like this:
&gt; 
&gt;    1. mappedName
&gt;    2. jndi name
&gt;    3. variable name
&gt;    4. module name
&gt;    5. app name
&gt; 
&gt; Thinking out loud of course, the code might disagree with me :)  Some
&gt; ideas sound really good and then turn out to be too much work given
&gt; the code.
&gt; 
&gt; 
&gt; -David
&gt; 


</pre>
</div>
</content>
</entry>
<entry>
<title>Build failure in OpenEJB3</title>
<author><name>&quot;Sajith H  Kariyawasam&quot; &lt;sajhak@hotmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3cBAY121-W52AE98498FEEBB2C4676B0D5950@phx.gbl%3e"/>
<id>urn:uuid:%3cBAY121-W52AE98498FEEBB2C4676B0D5950@phx-gbl%3e</id>
<updated>2009-12-02T19:07:46Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>







Hi all, 

I tried to download OpenEJB code and build, But got the following build failure when i tried
to execute 

     mvn -o -Dmaven.{test,itest}.skip -Dassemble clean install 

from Ubuntu.

Could you please help me to figure this out ? 

Thanks 
Regards
shk

[WARNING] Warning in manifest for org.apache.openejb:openejb-core:jar:3.1.3-SNAPSHOT : Did
not find matching referal for org.quartz.*
[INFO] [antrun:run {execution: default}]
[INFO] Executing tasks
     [java] Could not find org.apache.openejb.util.MakeTxLookup. Make sure you have it in
your classpath
     [java]     at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:170)
     [java]     at org.apache.tools.ant.taskdefs.Java.run(Java.java:710)
     [java]     at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178)
     [java]     at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84)
     [java]     at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [java]     at org.apache.tools.ant.Task.perform(Task.java:364)
     [java]     at org.apache.tools.ant.Target.execute(Target.java:341)
     [java]     at org.apache.maven.plugin.antrun.AbstractAntMojo.executeTasks(AbstractAntMojo.java:108)
     [java]     at org.apache.maven.plugin.antrun.AntRunMojo.execute(AntRunMojo.java:83)
     [java]     at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
     [java]     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
     [java]     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
     [java]     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
     [java]     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
     [java]     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
     [java]     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
     [java]     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
     [java]     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
     [java]     at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     [java]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [java]     at java.lang.reflect.Method.invoke(Method.java:597)
     [java]     at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
     [java]     at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
     [java]     at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
     [java]     at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

 		 	   		  
 		 	   		  
_________________________________________________________________
Keep your friends updated—even when you’re not signed in.
http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_5:092010

</pre>
</div>
</content>
</entry>
<entry>
<title>Re: InitialContext / Comms protocol recovery from a SystemException</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c70781C23-47A8-4D08-A2A4-A6CFB1445C1D@visi.com%3e"/>
<id>urn:uuid:%3c70781C23-47A8-4D08-A2A4-A6CFB1445C1D@visi-com%3e</id>
<updated>2009-12-01T22:21:22Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Missed this followup.

On Nov 4, 2009, at 4:00 AM, Quintin Beukes wrote:

&gt; Though, isn't there a way if a 3rd party SecurityService fails for  
&gt; some
&gt; reason for OpenEJB to recover from it?

I'm not sure of the nature of the failure.  If the SecurityService  
throws an exception each time we call isCallerAuthorized() then there  
is no way for let the call through.  Do you know if that is the case  
or are subsequent calls to the SecurityService succeeding but failures  
still occurring downstream?

And just for good measure, what is the "your fault" part?  If there's  
something we can do to check for bad input or user error, we should do  
it.

-David

&gt; On Tue, Nov 3, 2009 at 11:12 PM, David Blevins  
&gt; &lt;david.blevins@visi.com&gt;wrote:
&gt;
&gt;&gt; Haven't seen this before, looks like the null is coming from the
&gt;&gt; GeronimoSecurityService.
&gt;&gt;
&gt;&gt; We test system and application exceptions in the itests for each  
&gt;&gt; bean type
&gt;&gt; on both the remote and local servers as well as on Tomcat.  We  
&gt;&gt; don't run
&gt;&gt; those on Geronimo though, which we really should. There was some  
&gt;&gt; code in
&gt;&gt; Geronimo to do that at one point, but it got axed as being too hard  
&gt;&gt; to
&gt;&gt; maintain quite a while ago.  I think we should bring it back.
&gt;&gt;
&gt;&gt; I'm not sure what it might take Geronimo plan-wise, but here's the  
&gt;&gt; app:
&gt;&gt;
&gt;&gt;
&gt;&gt; http://repo2.maven.org/maven2/org/apache/openejb/openejb-itests-beans/3.1.2/openejb-itests-beans-3.1.2.jar
&gt;&gt;
&gt;&gt; And the client which includes all deps and is an executable jar:
&gt;&gt;
&gt;&gt;
&gt;&gt; http://repo2.maven.org/maven2/org/apache/openejb/openejb-itests-standalone-client/3.1.2/openejb-itests-standalone-client-3.1.2.jar
&gt;&gt;
&gt;&gt; -David
&gt;&gt;
&gt;&gt;
&gt;&gt; On Nov 2, 2009, at 10:44 AM, Quintin Beukes wrote:
&gt;&gt;
&gt;&gt; Hey,
&gt;&gt;&gt;
&gt;&gt;&gt; When I get a SystemException from the container during remote EJB
&gt;&gt;&gt; invocation, all future requests for the InitialContext are  
&gt;&gt;&gt; "broken". My
&gt;&gt;&gt; exact situation (reason for causing the SystemException) is on my  
&gt;&gt;&gt; fault,
&gt;&gt;&gt; but
&gt;&gt;&gt; if there is another reason I think it's good to recover from it so  
&gt;&gt;&gt; to be
&gt;&gt;&gt; able to continue serving requests. I got the following by invoking  
&gt;&gt;&gt; on a
&gt;&gt;&gt; method which isn't in the remote EJB class/Remote interface.
&gt;&gt;&gt;
&gt;&gt;&gt; This is what I got:
&gt;&gt;&gt; ------- SNIP -------
&gt;&gt;&gt; 02 Nov 2009 20:28:33,649 ERROR -- Exception: Error deleting  
&gt;&gt;&gt; employee:
&gt;&gt;&gt; XXXXXX
&gt;&gt;&gt; (javax.ejb.EJBException)
&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;  $Proxy7.deletePerson(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .employees 
&gt;&gt;&gt; .delete 
&gt;&gt;&gt; .DeleteEmployeeWizardAction 
&gt;&gt;&gt; .performAction(DeleteEmployeeWizardAction.java:87)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .employees 
&gt;&gt;&gt; .delete 
&gt;&gt;&gt; .DeleteEmployeeWizardAction 
&gt;&gt;&gt; .performAction(DeleteEmployeeWizardAction.java:55)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org.openide.util.actions.NodeAction$DelegateAction 
&gt;&gt;&gt; $1.run(NodeAction.java:589)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .netbeans 
&gt;&gt;&gt; .modules 
&gt;&gt;&gt; .openide.util.ActionsBridge.doPerformAction(ActionsBridge.java:77)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org.openide.util.actions.NodeAction 
&gt;&gt;&gt; $DelegateAction.actionPerformed(NodeAction.java:585)
&gt;&gt;&gt;   
&gt;&gt;&gt; javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java: 
&gt;&gt;&gt; 1995)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax.swing.AbstractButton 
&gt;&gt;&gt; $Handler.actionPerformed(AbstractButton.java:2318)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax 
&gt;&gt;&gt; .swing 
&gt;&gt;&gt; .DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
&gt;&gt;&gt;  javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java: 
&gt;&gt;&gt; 242)
&gt;&gt;&gt;  javax.swing.AbstractButton.doClick(AbstractButton.java:357)
&gt;&gt;&gt;
&gt;&gt;&gt; javax 
&gt;&gt;&gt; .swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1220)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax.swing.plaf.basic.BasicMenuItemUI 
&gt;&gt;&gt; $Handler.mouseReleased(BasicMenuItemUI.java:1261)
&gt;&gt;&gt;  java.awt.Component.processMouseEvent(Component.java:6041)
&gt;&gt;&gt;  javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
&gt;&gt;&gt;  java.awt.Component.processEvent(Component.java:5806)
&gt;&gt;&gt;  java.awt.Container.processEvent(Container.java:2058)
&gt;&gt;&gt;  java.awt.Component.dispatchEventImpl(Component.java:4413)
&gt;&gt;&gt;  java.awt.Container.dispatchEventImpl(Container.java:2116)
&gt;&gt;&gt;  java.awt.Component.dispatchEvent(Component.java:4243)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.retargetMouseEvent(Container.java: 
&gt;&gt;&gt; 4322)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.processMouseEvent(Container.java: 
&gt;&gt;&gt; 3986)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
&gt;&gt;&gt;  java.awt.Container.dispatchEventImpl(Container.java:2102)
&gt;&gt;&gt;  java.awt.Window.dispatchEventImpl(Window.java:2440)
&gt;&gt;&gt;  java.awt.Component.dispatchEvent(Component.java:4243)
&gt;&gt;&gt;  java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .netbeans 
&gt;&gt;&gt; .core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread 
&gt;&gt;&gt; .pumpOneEventForFilters(EventDispatchThread.java:273)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java: 
&gt;&gt;&gt; 183)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread 
&gt;&gt;&gt; .pumpEventsForHierarchy(EventDispatchThread.java:173)
&gt;&gt;&gt;  java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
&gt;&gt;&gt; 168)
&gt;&gt;&gt;  java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
&gt;&gt;&gt; 160)
&gt;&gt;&gt;  java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal error:
&gt;&gt;&gt; Unknown
&gt;&gt;&gt; error in container java.lang.NullPointerException; nested  
&gt;&gt;&gt; exception is:
&gt;&gt;&gt; java.lang.NullPointerException
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java: 
&gt;&gt;&gt; 425)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:205)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt; 149)
&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java: 
&gt;&gt;&gt; 233)
&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;  java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;
&gt;&gt;&gt; java.lang.NullPointerException: null
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .geronimo 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .GeronimoSecurityService 
&gt;&gt;&gt; .isCallerAuthorized(GeronimoSecurityService.java:96)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .core.stateless.StatelessContainer.invoke(StatelessContainer.java: 
&gt;&gt;&gt; 151)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .core.stateless.StatelessContainer.invoke(StatelessContainer.java: 
&gt;&gt;&gt; 136)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd 
&gt;&gt;&gt; .EjbRequestHandler 
&gt;&gt;&gt; .doEjbObject_BUSINESS_METHOD(EjbRequestHandler.java:238)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:129)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt; 149)
&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java: 
&gt;&gt;&gt; 233)
&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;  java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;
&gt;&gt;&gt; ------- SNIP -------
&gt;&gt;&gt;
&gt;&gt;&gt; There after, when I try to invoke OTHER methods, I get this:
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; 02 Nov 2009 20:29:45,990 ERROR -- Exception: Error creating new  
&gt;&gt;&gt; employee:
&gt;&gt;&gt; XXXXXX (javax.ejb.EJBException)
&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt; server: -1
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;  $Proxy7.registerPerson(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .employees 
&gt;&gt;&gt; .add 
&gt;&gt;&gt; .AddEmployeeWizardAction 
&gt;&gt;&gt; .performAction(AddEmployeeWizardAction.java:69)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .employees 
&gt;&gt;&gt; .add 
&gt;&gt;&gt; .AddEmployeeWizardAction.openWizard(AddEmployeeWizardAction.java:47)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .navigation 
&gt;&gt;&gt; .NavigationRootTopComponent 
&gt;&gt;&gt; .btnAddEmployeeActionPerformed(NavigationRootTopComponent.java:107)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel.client.navigation.NavigationRootTopComponent.access 
&gt;&gt;&gt; $000(NavigationRootTopComponent.java:36)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net.kunye.personnel.client.navigation.NavigationRootTopComponent 
&gt;&gt;&gt; $1.actionPerformed(NavigationRootTopComponent.java:67)
&gt;&gt;&gt;   
&gt;&gt;&gt; javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java: 
&gt;&gt;&gt; 1995)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax.swing.AbstractButton 
&gt;&gt;&gt; $Handler.actionPerformed(AbstractButton.java:2318)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax 
&gt;&gt;&gt; .swing 
&gt;&gt;&gt; .DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
&gt;&gt;&gt;  javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java: 
&gt;&gt;&gt; 242)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax 
&gt;&gt;&gt; .swing 
&gt;&gt;&gt; .plaf 
&gt;&gt;&gt; .basic.BasicButtonListener.mouseReleased(BasicButtonListener.java: 
&gt;&gt;&gt; 236)
&gt;&gt;&gt;  java.awt.Component.processMouseEvent(Component.java:6041)
&gt;&gt;&gt;  javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
&gt;&gt;&gt;  java.awt.Component.processEvent(Component.java:5806)
&gt;&gt;&gt;  java.awt.Container.processEvent(Container.java:2058)
&gt;&gt;&gt;  java.awt.Component.dispatchEventImpl(Component.java:4413)
&gt;&gt;&gt;  java.awt.Container.dispatchEventImpl(Container.java:2116)
&gt;&gt;&gt;  java.awt.Component.dispatchEvent(Component.java:4243)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.retargetMouseEvent(Container.java: 
&gt;&gt;&gt; 4322)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.processMouseEvent(Container.java: 
&gt;&gt;&gt; 3986)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
&gt;&gt;&gt;  java.awt.Container.dispatchEventImpl(Container.java:2102)
&gt;&gt;&gt;  java.awt.Window.dispatchEventImpl(Window.java:2440)
&gt;&gt;&gt;  java.awt.Component.dispatchEvent(Component.java:4243)
&gt;&gt;&gt;  java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .netbeans 
&gt;&gt;&gt; .core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread 
&gt;&gt;&gt; .pumpOneEventForFilters(EventDispatchThread.java:273)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java: 
&gt;&gt;&gt; 183)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread 
&gt;&gt;&gt; .pumpEventsForHierarchy(EventDispatchThread.java:173)
&gt;&gt;&gt;  java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
&gt;&gt;&gt; 168)
&gt;&gt;&gt;  java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
&gt;&gt;&gt; 160)
&gt;&gt;&gt;  java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt; server: -1
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;  $Proxy7.registerPerson(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .employees 
&gt;&gt;&gt; .add 
&gt;&gt;&gt; .AddEmployeeWizardAction 
&gt;&gt;&gt; .performAction(AddEmployeeWizardAction.java:69)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .employees 
&gt;&gt;&gt; .add 
&gt;&gt;&gt; .AddEmployeeWizardAction.openWizard(AddEmployeeWizardAction.java:47)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .navigation 
&gt;&gt;&gt; .NavigationRootTopComponent 
&gt;&gt;&gt; .btnAddEmployeeActionPerformed(NavigationRootTopComponent.java:107)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .personnel.client.navigation.NavigationRootTopComponent.access 
&gt;&gt;&gt; $000(NavigationRootTopComponent.java:36)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; net.kunye.personnel.client.navigation.NavigationRootTopComponent 
&gt;&gt;&gt; $1.actionPerformed(NavigationRootTopComponent.java:67)
&gt;&gt;&gt;   
&gt;&gt;&gt; javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java: 
&gt;&gt;&gt; 1995)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax.swing.AbstractButton 
&gt;&gt;&gt; $Handler.actionPerformed(AbstractButton.java:2318)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax 
&gt;&gt;&gt; .swing 
&gt;&gt;&gt; .DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
&gt;&gt;&gt;  javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java: 
&gt;&gt;&gt; 242)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; javax 
&gt;&gt;&gt; .swing 
&gt;&gt;&gt; .plaf 
&gt;&gt;&gt; .basic.BasicButtonListener.mouseReleased(BasicButtonListener.java: 
&gt;&gt;&gt; 236)
&gt;&gt;&gt;  java.awt.Component.processMouseEvent(Component.java:6041)
&gt;&gt;&gt;  javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
&gt;&gt;&gt;  java.awt.Component.processEvent(Component.java:5806)
&gt;&gt;&gt;  java.awt.Container.processEvent(Container.java:2058)
&gt;&gt;&gt;  java.awt.Component.dispatchEventImpl(Component.java:4413)
&gt;&gt;&gt;  java.awt.Container.dispatchEventImpl(Container.java:2116)
&gt;&gt;&gt;  java.awt.Component.dispatchEvent(Component.java:4243)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.retargetMouseEvent(Container.java: 
&gt;&gt;&gt; 4322)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.processMouseEvent(Container.java: 
&gt;&gt;&gt; 3986)
&gt;&gt;&gt;  java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
&gt;&gt;&gt;  java.awt.Container.dispatchEventImpl(Container.java:2102)
&gt;&gt;&gt;  java.awt.Window.dispatchEventImpl(Window.java:2440)
&gt;&gt;&gt;  java.awt.Component.dispatchEvent(Component.java:4243)
&gt;&gt;&gt;  java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .netbeans 
&gt;&gt;&gt; .core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread 
&gt;&gt;&gt; .pumpOneEventForFilters(EventDispatchThread.java:273)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java: 
&gt;&gt;&gt; 183)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; java 
&gt;&gt;&gt; .awt 
&gt;&gt;&gt; .EventDispatchThread 
&gt;&gt;&gt; .pumpEventsForHierarchy(EventDispatchThread.java:173)
&gt;&gt;&gt;  java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
&gt;&gt;&gt; 168)
&gt;&gt;&gt;  java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
&gt;&gt;&gt; 160)
&gt;&gt;&gt;  java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
&gt;&gt;&gt;
&gt;&gt;&gt; Quintin Beukes
&gt;&gt;&gt;
&gt;&gt;
&gt;&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Connection Recovery</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c178008F4-E628-4385-A380-BEF84664E2A0@visi.com%3e"/>
<id>urn:uuid:%3c178008F4-E628-4385-A380-BEF84664E2A0@visi-com%3e</id>
<updated>2009-12-01T22:13:30Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

On Nov 24, 2009, at 12:48 AM, Quintin Beukes wrote:

&gt; :&gt; Original problem. I'm just trying to understand why it would take
&gt; so long even after newly started apps are working fine.

Not sure how long your app takes to undeploy and then fully deploy  
again.  The delay shouldn't be any longer than that.  If there is more  
delay beyond that, I'm not sure what would cause it.

If you want to dig in, the first thing I'd check is to see if the  
client is waiting to read or waiting to write, or exactly what the  
client is doing in this time.

-David

&gt; The "cross over server" sounds like a very good idea, though I would
&gt; still like to know how this works.
&gt;
&gt; Quintin Beukes
&gt;
&gt;
&gt;
&gt; On Tue, Nov 24, 2009 at 10:36 AM, David Blevins &lt;david.blevins@visi.com 
&gt; &gt; wrote:
&gt;&gt;
&gt;&gt; On Nov 24, 2009, at 12:14 AM, Quintin Beukes wrote:
&gt;&gt;
&gt;&gt;&gt; But the problem is that after I redeployed the requests fail for  
&gt;&gt;&gt; up to
&gt;&gt;&gt; 6 minutes there after if the app was running prior even while newly
&gt;&gt;&gt; booted clients are working fine? So I would do this:
&gt;&gt;&gt;
&gt;&gt;&gt; 1. Run clientA
&gt;&gt;&gt; 2. Undeploy, deploy app - deploy completed successfully
&gt;&gt;&gt; 3. ClientA fails
&gt;&gt;&gt; 4. Run ClientB
&gt;&gt;&gt; 5. ClientB succeeds
&gt;&gt;&gt; 6. ClientA fails stills
&gt;&gt;&gt; 7. 5-6 minutes later clientA starts succeeding.
&gt;&gt;&gt;
&gt;&gt;&gt; Why is this? After the 5 minute period, what triggers the recovery  
&gt;&gt;&gt; to
&gt;&gt;&gt; start?
&gt;&gt;
&gt;&gt; Just so I make sure I'm on the same page, the above is a recap of the
&gt;&gt; original problem?  Or are you now seeing 5-6 minute delays in the  
&gt;&gt; failover
&gt;&gt; logic from one server to the next?
&gt;&gt;
&gt;&gt; -David
&gt;&gt;
&gt;&gt;&gt; On Mon, Nov 23, 2009 at 10:32 PM, David Blevins &lt;david.blevins@visi.com 
&gt;&gt;&gt; &gt;
&gt;&gt;&gt; wrote:
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; This is because there is no concept of blocking connections for
&gt;&gt;&gt;&gt; applications
&gt;&gt;&gt;&gt; that are being redeployed.  In fact our (geronimo and openejb)  
&gt;&gt;&gt;&gt; redeploy
&gt;&gt;&gt;&gt; is
&gt;&gt;&gt;&gt; just an undeploy followed by a deploy, so there's no special  
&gt;&gt;&gt;&gt; concept
&gt;&gt;&gt;&gt; propagated throughout the architecture that something is only  
&gt;&gt;&gt;&gt; temporarily
&gt;&gt;&gt;&gt; gone and will be coming back.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; That said, if we added all that, you'd still have to wait the  
&gt;&gt;&gt;&gt; exact same
&gt;&gt;&gt;&gt; amount of time for the undeploy/deploy process plus a small shave  
&gt;&gt;&gt;&gt; off of
&gt;&gt;&gt;&gt; total throughput for the synchronization we'd have to add to make  
&gt;&gt;&gt;&gt; the
&gt;&gt;&gt;&gt; wait-for-redeploy logic work.  The bigger your app gets, the  
&gt;&gt;&gt;&gt; longer the
&gt;&gt;&gt;&gt; time
&gt;&gt;&gt;&gt; your client spends waiting, which is probably going to drive you to
&gt;&gt;&gt;&gt; splinter
&gt;&gt;&gt;&gt; your app into tiny fragments which only complicates things more  
&gt;&gt;&gt;&gt; and adds
&gt;&gt;&gt;&gt; even more overhead.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; This is one of those "change the problem" types of situations.   
&gt;&gt;&gt;&gt; Instead
&gt;&gt;&gt;&gt; enable multicast discovery on your server and just let it run.   
&gt;&gt;&gt;&gt; When you
&gt;&gt;&gt;&gt; want to "redeploy", just boot a new server with the new version  
&gt;&gt;&gt;&gt; of the
&gt;&gt;&gt;&gt; app.
&gt;&gt;&gt;&gt;  When you get that server running to your liking -- almost  
&gt;&gt;&gt;&gt; everyone has
&gt;&gt;&gt;&gt; some
&gt;&gt;&gt;&gt; sort of initialization they like to do in their apps -- just shut  
&gt;&gt;&gt;&gt; down
&gt;&gt;&gt;&gt; the
&gt;&gt;&gt;&gt; first server and the client will immediately roll over to the  
&gt;&gt;&gt;&gt; second
&gt;&gt;&gt;&gt; server.
&gt;&gt;&gt;&gt;  No time spent waiting on redeploy and you actually get a chance  
&gt;&gt;&gt;&gt; to pound
&gt;&gt;&gt;&gt; on
&gt;&gt;&gt;&gt; your new server a bit before it goes live, so no more risk that  
&gt;&gt;&gt;&gt; the app
&gt;&gt;&gt;&gt; doesn't quite work after the redeploy.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; You can do this all on the same machine with a shell script or  
&gt;&gt;&gt;&gt; ant script
&gt;&gt;&gt;&gt; that is only slightly fancier than your standard start, deploy,  
&gt;&gt;&gt;&gt; run type
&gt;&gt;&gt;&gt; of
&gt;&gt;&gt;&gt; script.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; -David
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; On Nov 23, 2009, at 6:20 AM, Quintin Beukes wrote:
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Hey,
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; One of the big motivations for shifting to OpenEJB 3.1.2 from GF  
&gt;&gt;&gt;&gt;&gt; was
&gt;&gt;&gt;&gt;&gt; the connection recovery built into it. My inquiry was specifically
&gt;&gt;&gt;&gt;&gt; about failed remote EJB connections because a server restarts or a
&gt;&gt;&gt;&gt;&gt; network hiccup. We've always had problems with this, especially  
&gt;&gt;&gt;&gt;&gt; with
&gt;&gt;&gt;&gt;&gt; networks running from surface to underground.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; This seems to be working. Great job!! Thanks alot. I'm aiming for
&gt;&gt;&gt;&gt;&gt; complete recovery in the following situations.
&gt;&gt;&gt;&gt;&gt; 1. System exception (any failure on the part of OpenEJB, even if  
&gt;&gt;&gt;&gt;&gt; the
&gt;&gt;&gt;&gt;&gt; cause was my own)
&gt;&gt;&gt;&gt;&gt; 2. Dropped connections due to network
&gt;&gt;&gt;&gt;&gt; 3. Dropped connections from server restart
&gt;&gt;&gt;&gt;&gt; 4. Dropped connections from redeploy (basically the same as (3) I
&gt;&gt;&gt;&gt;&gt; assume).
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Though I have a query though. Every time I redeploy, for ex, I  
&gt;&gt;&gt;&gt;&gt; have to
&gt;&gt;&gt;&gt;&gt; manually go and restart all services because it takes very long  
&gt;&gt;&gt;&gt;&gt; for
&gt;&gt;&gt;&gt;&gt; OpenEJB client to notice something is wrong and recover.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Here is an example: If I undeploy, I get something like the  
&gt;&gt;&gt;&gt;&gt; following
&gt;&gt;&gt;&gt;&gt; on a client.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java: 
&gt;&gt;&gt;&gt;&gt; 178)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client 
&gt;&gt;&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java: 
&gt;&gt;&gt;&gt;&gt; 52)
&gt;&gt;&gt;&gt;&gt;  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal  
&gt;&gt;&gt;&gt;&gt; error: No
&gt;&gt;&gt;&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt;&gt;&gt;&gt;       java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .ejbd 
&gt;&gt;&gt;&gt;&gt; .EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 196)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 149)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 71)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 66)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt;&gt;  java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 196)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 149)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 71)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 66)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt;&gt;  java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; 23 Nov 2009 15:59:20,039 ERROR -- Exception: Service
&gt;&gt;&gt;&gt;&gt; ConfigurationService failed for instance
&gt;&gt;&gt;&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt;&gt;&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure  
&gt;&gt;&gt;&gt;&gt; while
&gt;&gt;&gt;&gt;&gt; servicing a request.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java: 
&gt;&gt;&gt;&gt;&gt; 178)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client 
&gt;&gt;&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java: 
&gt;&gt;&gt;&gt;&gt; 52)
&gt;&gt;&gt;&gt;&gt;  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal  
&gt;&gt;&gt;&gt;&gt; error: No
&gt;&gt;&gt;&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt;&gt;&gt;&gt;       java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .ejbd 
&gt;&gt;&gt;&gt;&gt; .EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 196)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 149)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 71)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 66)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt;&gt;  java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 196)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt;&gt;&gt; 149)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 71)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt;&gt;&gt; 66)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt;&gt;  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt;&gt;  java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Then, for a while, even after the EJB service started up  
&gt;&gt;&gt;&gt;&gt; completely
&gt;&gt;&gt;&gt;&gt; and even though I'm creating new InitialContext instances I get  
&gt;&gt;&gt;&gt;&gt; the
&gt;&gt;&gt;&gt;&gt; following. This isn't too bad, though it does take a few minutes
&gt;&gt;&gt;&gt;&gt; (between 3 and 5) to recover.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; 23 Nov 2009 16:00:24,802 TRACE -- Received packet
&gt;&gt;&gt;&gt;&gt; [R0010088220000000000000000]
&gt;&gt;&gt;&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Unknown failure  
&gt;&gt;&gt;&gt;&gt; servicing
&gt;&gt;&gt;&gt;&gt; the request (javax.ejb.EJBException)
&gt;&gt;&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt;&gt;&gt; server:
&gt;&gt;&gt;&gt;&gt; -1
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java: 
&gt;&gt;&gt;&gt;&gt; 184)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client 
&gt;&gt;&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java: 
&gt;&gt;&gt;&gt;&gt; 52)
&gt;&gt;&gt;&gt;&gt;  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt;&gt;&gt; server: -1
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java: 
&gt;&gt;&gt;&gt;&gt; 157)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client 
&gt;&gt;&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java: 
&gt;&gt;&gt;&gt;&gt; 52)
&gt;&gt;&gt;&gt;&gt;  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Service
&gt;&gt;&gt;&gt;&gt; ConfigurationService failed for instance
&gt;&gt;&gt;&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt;&gt;&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure  
&gt;&gt;&gt;&gt;&gt; while
&gt;&gt;&gt;&gt;&gt; servicing a request.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt;&gt;&gt; server:
&gt;&gt;&gt;&gt;&gt; -1
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java: 
&gt;&gt;&gt;&gt;&gt; 184)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client 
&gt;&gt;&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java: 
&gt;&gt;&gt;&gt;&gt; 52)
&gt;&gt;&gt;&gt;&gt;  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt;&gt;&gt; server: -1
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java: 
&gt;&gt;&gt;&gt;&gt; 157)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; org 
&gt;&gt;&gt;&gt;&gt; .apache 
&gt;&gt;&gt;&gt;&gt; .openejb 
&gt;&gt;&gt;&gt;&gt; .client 
&gt;&gt;&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java: 
&gt;&gt;&gt;&gt;&gt; 52)
&gt;&gt;&gt;&gt;&gt;  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye 
&gt;&gt;&gt;&gt;&gt; .vds 
&gt;&gt;&gt;&gt;&gt; .server 
&gt;&gt;&gt;&gt;&gt; .services 
&gt;&gt;&gt;&gt;&gt; .configuration 
&gt;&gt;&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt;&gt;   
&gt;&gt;&gt;&gt;&gt; net 
&gt;&gt;&gt;&gt;&gt; .kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; After it recovers from the above, all is back to normal.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; This is quite serious. How I can get around this, even if I have  
&gt;&gt;&gt;&gt;&gt; to
&gt;&gt;&gt;&gt;&gt; make some code changes?
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Thanks again. I'm so relieved this problem is finally over.  
&gt;&gt;&gt;&gt;&gt; Previously
&gt;&gt;&gt;&gt;&gt; I've had to do some serious recovery just because a client was  
&gt;&gt;&gt;&gt;&gt; left
&gt;&gt;&gt;&gt;&gt; running and Glassfish's client library opened so many file  
&gt;&gt;&gt;&gt;&gt; descriptors
&gt;&gt;&gt;&gt;&gt; for each failure that the server crashed with a No Space Left on
&gt;&gt;&gt;&gt;&gt; Device error.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Quintin Beukes
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;
&gt;&gt;
&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb-client has OSGi Require-Bundle without a maven dependency.</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200912.mbox/%3c3D532476-51AF-47E8-B510-F9B9115AC8B4@visi.com%3e"/>
<id>urn:uuid:%3c3D532476-51AF-47E8-B510-F9B9115AC8B4@visi-com%3e</id>
<updated>2009-12-01T21:58:45Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

On Nov 3, 2009, at 12:12 PM, David Blevins wrote:

&gt;
&gt; On Nov 3, 2009, at 7:27 AM, Rick McGuire wrote:
&gt;
&gt;&gt; I ran into a little issue with the bundlized version of the openejb- 
&gt;&gt; client jar.  This jar has a Require-Bundle dependency on  
&gt;&gt; org.apache.openejb.openebj-core, but the project pom does not  
&gt;&gt; specify a maven dependency on openejb-core.  This is causing a bit  
&gt;&gt; of an issue when used in Geronimo 3.0 because the framework is  
&gt;&gt; using the maven dependencies to determine the install/start order  
&gt;&gt; for the different bundles we're using.  Since there's no maven  
&gt;&gt; dependency, the openejb-client is giving a resolution constraint  
&gt;&gt; failure on the required jar depending on the relative order the  
&gt;&gt; different openejb bundles get started.  Having the correct maven  
&gt;&gt; dependency in the pom would sort all of that out.
&gt;&gt;
&gt;&gt; Is there some reason why this was done this way, or is it just an  
&gt;&gt; oversight?
&gt;
&gt; I'm not sure why there is a Require-Bundle dep on openejb-core.   
&gt; Maybe someone else can comment on that.
&gt;
&gt; Code-wise, the client jar is designed to work without any other  
&gt; OpenEJB libraries or third party dependencies (except for specs), so  
&gt; that explains why there is not a maven dep.

Still looking for some followup.  As mentioned the openejb-client  
module does not need and should not be allowed to use the code in  
openejb-core.  Going to remove that dependency.

-David



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Connection Recovery</title>
<author><name>Quintin Beukes &lt;quintin@skywalk.co.za&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1f3854d50911240048x6b5424c2y53da75f7384a9617@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1f3854d50911240048x6b5424c2y53da75f7384a9617@mail-gmail-com%3e</id>
<updated>2009-11-24T08:48:39Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
:&gt; Original problem. I'm just trying to understand why it would take
so long even after newly started apps are working fine.

The "cross over server" sounds like a very good idea, though I would
still like to know how this works.

Quintin Beukes



On Tue, Nov 24, 2009 at 10:36 AM, David Blevins &lt;david.blevins@visi.com&gt; wrote:
&gt;
&gt; On Nov 24, 2009, at 12:14 AM, Quintin Beukes wrote:
&gt;
&gt;&gt; But the problem is that after I redeployed the requests fail for up to
&gt;&gt; 6 minutes there after if the app was running prior even while newly
&gt;&gt; booted clients are working fine? So I would do this:
&gt;&gt;
&gt;&gt; 1. Run clientA
&gt;&gt; 2. Undeploy, deploy app - deploy completed successfully
&gt;&gt; 3. ClientA fails
&gt;&gt; 4. Run ClientB
&gt;&gt; 5. ClientB succeeds
&gt;&gt; 6. ClientA fails stills
&gt;&gt; 7. 5-6 minutes later clientA starts succeeding.
&gt;&gt;
&gt;&gt; Why is this? After the 5 minute period, what triggers the recovery to
&gt;&gt; start?
&gt;
&gt; Just so I make sure I'm on the same page, the above is a recap of the
&gt; original problem? Â Or are you now seeing 5-6 minute delays in the failover
&gt; logic from one server to the next?
&gt;
&gt; -David
&gt;
&gt;&gt; On Mon, Nov 23, 2009 at 10:32 PM, David Blevins &lt;david.blevins@visi.com&gt;
&gt;&gt; wrote:
&gt;&gt;&gt;
&gt;&gt;&gt; This is because there is no concept of blocking connections for
&gt;&gt;&gt; applications
&gt;&gt;&gt; that are being redeployed. Â In fact our (geronimo and openejb) redeploy
&gt;&gt;&gt; is
&gt;&gt;&gt; just an undeploy followed by a deploy, so there's no special concept
&gt;&gt;&gt; propagated throughout the architecture that something is only temporarily
&gt;&gt;&gt; gone and will be coming back.
&gt;&gt;&gt;
&gt;&gt;&gt; That said, if we added all that, you'd still have to wait the exact same
&gt;&gt;&gt; amount of time for the undeploy/deploy process plus a small shave off of
&gt;&gt;&gt; total throughput for the synchronization we'd have to add to make the
&gt;&gt;&gt; wait-for-redeploy logic work. Â The bigger your app gets, the longer the
&gt;&gt;&gt; time
&gt;&gt;&gt; your client spends waiting, which is probably going to drive you to
&gt;&gt;&gt; splinter
&gt;&gt;&gt; your app into tiny fragments which only complicates things more and adds
&gt;&gt;&gt; even more overhead.
&gt;&gt;&gt;
&gt;&gt;&gt; This is one of those "change the problem" types of situations. Â Instead
&gt;&gt;&gt; enable multicast discovery on your server and just let it run. Â When you
&gt;&gt;&gt; want to "redeploy", just boot a new server with the new version of the
&gt;&gt;&gt; app.
&gt;&gt;&gt; Â When you get that server running to your liking -- almost everyone has
&gt;&gt;&gt; some
&gt;&gt;&gt; sort of initialization they like to do in their apps -- just shut down
&gt;&gt;&gt; the
&gt;&gt;&gt; first server and the client will immediately roll over to the second
&gt;&gt;&gt; server.
&gt;&gt;&gt; Â No time spent waiting on redeploy and you actually get a chance to pound
&gt;&gt;&gt; on
&gt;&gt;&gt; your new server a bit before it goes live, so no more risk that the app
&gt;&gt;&gt; doesn't quite work after the redeploy.
&gt;&gt;&gt;
&gt;&gt;&gt; You can do this all on the same machine with a shell script or ant script
&gt;&gt;&gt; that is only slightly fancier than your standard start, deploy, run type
&gt;&gt;&gt; of
&gt;&gt;&gt; script.
&gt;&gt;&gt;
&gt;&gt;&gt; -David
&gt;&gt;&gt;
&gt;&gt;&gt; On Nov 23, 2009, at 6:20 AM, Quintin Beukes wrote:
&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Hey,
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; One of the big motivations for shifting to OpenEJB 3.1.2 from GF was
&gt;&gt;&gt;&gt; the connection recovery built into it. My inquiry was specifically
&gt;&gt;&gt;&gt; about failed remote EJB connections because a server restarts or a
&gt;&gt;&gt;&gt; network hiccup. We've always had problems with this, especially with
&gt;&gt;&gt;&gt; networks running from surface to underground.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; This seems to be working. Great job!! Thanks alot. I'm aiming for
&gt;&gt;&gt;&gt; complete recovery in the following situations.
&gt;&gt;&gt;&gt; 1. System exception (any failure on the part of OpenEJB, even if the
&gt;&gt;&gt;&gt; cause was my own)
&gt;&gt;&gt;&gt; 2. Dropped connections due to network
&gt;&gt;&gt;&gt; 3. Dropped connections from server restart
&gt;&gt;&gt;&gt; 4. Dropped connections from redeploy (basically the same as (3) I
&gt;&gt;&gt;&gt; assume).
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Though I have a query though. Every time I redeploy, for ex, I have to
&gt;&gt;&gt;&gt; manually go and restart all services because it takes very long for
&gt;&gt;&gt;&gt; OpenEJB client to notice something is wrong and recover.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Here is an example: If I undeploy, I get something like the following
&gt;&gt;&gt;&gt; on a client.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;&gt; Â $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal error: No
&gt;&gt;&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt;&gt;&gt; Â  Â  Â  java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt; Â java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt; Â java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; 23 Nov 2009 15:59:20,039 ERROR -- Exception: Service
&gt;&gt;&gt;&gt; ConfigurationService failed for instance
&gt;&gt;&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt;&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure while
&gt;&gt;&gt;&gt; servicing a request.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;&gt; Â $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal error: No
&gt;&gt;&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt;&gt;&gt; Â  Â  Â  java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt; Â java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;&gt; Â org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;&gt; Â java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Then, for a while, even after the EJB service started up completely
&gt;&gt;&gt;&gt; and even though I'm creating new InitialContext instances I get the
&gt;&gt;&gt;&gt; following. This isn't too bad, though it does take a few minutes
&gt;&gt;&gt;&gt; (between 3 and 5) to recover.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; 23 Nov 2009 16:00:24,802 TRACE -- Received packet
&gt;&gt;&gt;&gt; [R0010088220000000000000000]
&gt;&gt;&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Unknown failure servicing
&gt;&gt;&gt;&gt; the request (javax.ejb.EJBException)
&gt;&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from server:
&gt;&gt;&gt;&gt; -1
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;&gt; Â $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from server: -1
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;&gt; Â $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Service
&gt;&gt;&gt;&gt; ConfigurationService failed for instance
&gt;&gt;&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt;&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure while
&gt;&gt;&gt;&gt; servicing a request.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from server:
&gt;&gt;&gt;&gt; -1
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;&gt; Â $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from server: -1
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;&gt; Â $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;&gt; Â net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; After it recovers from the above, all is back to normal.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; This is quite serious. How I can get around this, even if I have to
&gt;&gt;&gt;&gt; make some code changes?
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Thanks again. I'm so relieved this problem is finally over. Previously
&gt;&gt;&gt;&gt; I've had to do some serious recovery just because a client was left
&gt;&gt;&gt;&gt; running and Glassfish's client library opened so many file descriptors
&gt;&gt;&gt;&gt; for each failure that the server crashed with a No Space Left on
&gt;&gt;&gt;&gt; Device error.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Quintin Beukes
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;
&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Connection Recovery</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1822D2DE-E377-4A5A-A6DC-3020ABAA97DB@visi.com%3e"/>
<id>urn:uuid:%3c1822D2DE-E377-4A5A-A6DC-3020ABAA97DB@visi-com%3e</id>
<updated>2009-11-24T08:36:16Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

On Nov 24, 2009, at 12:14 AM, Quintin Beukes wrote:

&gt; But the problem is that after I redeployed the requests fail for up to
&gt; 6 minutes there after if the app was running prior even while newly
&gt; booted clients are working fine? So I would do this:
&gt;
&gt; 1. Run clientA
&gt; 2. Undeploy, deploy app - deploy completed successfully
&gt; 3. ClientA fails
&gt; 4. Run ClientB
&gt; 5. ClientB succeeds
&gt; 6. ClientA fails stills
&gt; 7. 5-6 minutes later clientA starts succeeding.
&gt;
&gt; Why is this? After the 5 minute period, what triggers the recovery  
&gt; to start?

Just so I make sure I'm on the same page, the above is a recap of the  
original problem?  Or are you now seeing 5-6 minute delays in the  
failover logic from one server to the next?

-David

&gt; On Mon, Nov 23, 2009 at 10:32 PM, David Blevins &lt;david.blevins@visi.com 
&gt; &gt; wrote:
&gt;&gt; This is because there is no concept of blocking connections for  
&gt;&gt; applications
&gt;&gt; that are being redeployed.  In fact our (geronimo and openejb)  
&gt;&gt; redeploy is
&gt;&gt; just an undeploy followed by a deploy, so there's no special concept
&gt;&gt; propagated throughout the architecture that something is only  
&gt;&gt; temporarily
&gt;&gt; gone and will be coming back.
&gt;&gt;
&gt;&gt; That said, if we added all that, you'd still have to wait the exact  
&gt;&gt; same
&gt;&gt; amount of time for the undeploy/deploy process plus a small shave  
&gt;&gt; off of
&gt;&gt; total throughput for the synchronization we'd have to add to make the
&gt;&gt; wait-for-redeploy logic work.  The bigger your app gets, the longer  
&gt;&gt; the time
&gt;&gt; your client spends waiting, which is probably going to drive you to  
&gt;&gt; splinter
&gt;&gt; your app into tiny fragments which only complicates things more and  
&gt;&gt; adds
&gt;&gt; even more overhead.
&gt;&gt;
&gt;&gt; This is one of those "change the problem" types of situations.   
&gt;&gt; Instead
&gt;&gt; enable multicast discovery on your server and just let it run.   
&gt;&gt; When you
&gt;&gt; want to "redeploy", just boot a new server with the new version of  
&gt;&gt; the app.
&gt;&gt;  When you get that server running to your liking -- almost everyone  
&gt;&gt; has some
&gt;&gt; sort of initialization they like to do in their apps -- just shut  
&gt;&gt; down the
&gt;&gt; first server and the client will immediately roll over to the  
&gt;&gt; second server.
&gt;&gt;  No time spent waiting on redeploy and you actually get a chance to  
&gt;&gt; pound on
&gt;&gt; your new server a bit before it goes live, so no more risk that the  
&gt;&gt; app
&gt;&gt; doesn't quite work after the redeploy.
&gt;&gt;
&gt;&gt; You can do this all on the same machine with a shell script or ant  
&gt;&gt; script
&gt;&gt; that is only slightly fancier than your standard start, deploy, run  
&gt;&gt; type of
&gt;&gt; script.
&gt;&gt;
&gt;&gt; -David
&gt;&gt;
&gt;&gt; On Nov 23, 2009, at 6:20 AM, Quintin Beukes wrote:
&gt;&gt;
&gt;&gt;&gt; Hey,
&gt;&gt;&gt;
&gt;&gt;&gt; One of the big motivations for shifting to OpenEJB 3.1.2 from GF was
&gt;&gt;&gt; the connection recovery built into it. My inquiry was specifically
&gt;&gt;&gt; about failed remote EJB connections because a server restarts or a
&gt;&gt;&gt; network hiccup. We've always had problems with this, especially with
&gt;&gt;&gt; networks running from surface to underground.
&gt;&gt;&gt;
&gt;&gt;&gt; This seems to be working. Great job!! Thanks alot. I'm aiming for
&gt;&gt;&gt; complete recovery in the following situations.
&gt;&gt;&gt; 1. System exception (any failure on the part of OpenEJB, even if the
&gt;&gt;&gt; cause was my own)
&gt;&gt;&gt; 2. Dropped connections due to network
&gt;&gt;&gt; 3. Dropped connections from server restart
&gt;&gt;&gt; 4. Dropped connections from redeploy (basically the same as (3) I  
&gt;&gt;&gt; assume).
&gt;&gt;&gt;
&gt;&gt;&gt; Though I have a query though. Every time I redeploy, for ex, I  
&gt;&gt;&gt; have to
&gt;&gt;&gt; manually go and restart all services because it takes very long for
&gt;&gt;&gt; OpenEJB client to notice something is wrong and recover.
&gt;&gt;&gt;
&gt;&gt;&gt; Here is an example: If I undeploy, I get something like the  
&gt;&gt;&gt; following
&gt;&gt;&gt; on a client.
&gt;&gt;&gt;
&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;
&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;   $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal  
&gt;&gt;&gt; error: No
&gt;&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt;&gt;        java.rmi.RemoteException: No deployment:
&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java: 
&gt;&gt;&gt; 425)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt; 149)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 71)
&gt;&gt;&gt;
&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java: 
&gt;&gt;&gt; 233)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 66)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;   java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java: 
&gt;&gt;&gt; 191)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt; 149)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 71)
&gt;&gt;&gt;
&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java: 
&gt;&gt;&gt; 233)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 66)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;   java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; 23 Nov 2009 15:59:20,039 ERROR -- Exception: Service
&gt;&gt;&gt; ConfigurationService failed for instance
&gt;&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure  
&gt;&gt;&gt; while
&gt;&gt;&gt; servicing a request.
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;   $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal  
&gt;&gt;&gt; error: No
&gt;&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt;&gt;        java.rmi.RemoteException: No deployment:
&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java: 
&gt;&gt;&gt; 425)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt; 149)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 71)
&gt;&gt;&gt;
&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java: 
&gt;&gt;&gt; 233)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 66)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;   java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java: 
&gt;&gt;&gt; 191)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt;&gt;&gt; 149)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 71)
&gt;&gt;&gt;
&gt;&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer 
&gt;&gt;&gt; $Session.service(KeepAliveServer.java:213)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java: 
&gt;&gt;&gt; 233)
&gt;&gt;&gt;   org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java: 
&gt;&gt;&gt; 66)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt;&gt;   org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;&gt;
&gt;&gt;&gt; java.util.concurrent.ThreadPoolExecutor 
&gt;&gt;&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt;&gt;   java.lang.Thread.run(Thread.java:619)
&gt;&gt;&gt;
&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;
&gt;&gt;&gt; Then, for a while, even after the EJB service started up completely
&gt;&gt;&gt; and even though I'm creating new InitialContext instances I get the
&gt;&gt;&gt; following. This isn't too bad, though it does take a few minutes
&gt;&gt;&gt; (between 3 and 5) to recover.
&gt;&gt;&gt;
&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;
&gt;&gt;&gt; 23 Nov 2009 16:00:24,802 TRACE -- Received packet
&gt;&gt;&gt; [R0010088220000000000000000]
&gt;&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Unknown failure  
&gt;&gt;&gt; servicing
&gt;&gt;&gt; the request (javax.ejb.EJBException)
&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt; server:
&gt;&gt;&gt; -1
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;   $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt; server: -1
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;   $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Service
&gt;&gt;&gt; ConfigurationService failed for instance
&gt;&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure  
&gt;&gt;&gt; while
&gt;&gt;&gt; servicing a request.
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt; server:
&gt;&gt;&gt; -1
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;   $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; java.rmi.RemoteException: Received invalid response code from  
&gt;&gt;&gt; server: -1
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;&gt;
&gt;&gt;&gt; org 
&gt;&gt;&gt; .apache 
&gt;&gt;&gt; .openejb 
&gt;&gt;&gt; .client 
&gt;&gt;&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt;&gt;   $Proxy2.captureLamp(Unknown Source)
&gt;&gt;&gt;
&gt;&gt;&gt; net 
&gt;&gt;&gt; .kunye 
&gt;&gt;&gt; .vds 
&gt;&gt;&gt; .server 
&gt;&gt;&gt; .services 
&gt;&gt;&gt; .configuration 
&gt;&gt;&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt;&gt;    
&gt;&gt;&gt; net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt;&gt;&gt; 86)
&gt;&gt;&gt;
&gt;&gt;&gt; --------- SNIP -----------
&gt;&gt;&gt;
&gt;&gt;&gt; After it recovers from the above, all is back to normal.
&gt;&gt;&gt;
&gt;&gt;&gt; This is quite serious. How I can get around this, even if I have to
&gt;&gt;&gt; make some code changes?
&gt;&gt;&gt;
&gt;&gt;&gt; Thanks again. I'm so relieved this problem is finally over.  
&gt;&gt;&gt; Previously
&gt;&gt;&gt; I've had to do some serious recovery just because a client was left
&gt;&gt;&gt; running and Glassfish's client library opened so many file  
&gt;&gt;&gt; descriptors
&gt;&gt;&gt; for each failure that the server crashed with a No Space Left on
&gt;&gt;&gt; Device error.
&gt;&gt;&gt;
&gt;&gt;&gt; Quintin Beukes
&gt;&gt;&gt;
&gt;&gt;
&gt;&gt;
&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Connection Recovery</title>
<author><name>Quintin Beukes &lt;quintin@skywalk.co.za&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1f3854d50911240014s3627f9ffv102b6f3fe2816bb6@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1f3854d50911240014s3627f9ffv102b6f3fe2816bb6@mail-gmail-com%3e</id>
<updated>2009-11-24T08:14:12Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
But the problem is that after I redeployed the requests fail for up to
6 minutes there after if the app was running prior even while newly
booted clients are working fine? So I would do this:

1. Run clientA
2. Undeploy, deploy app - deploy completed successfully
3. ClientA fails
4. Run ClientB
5. ClientB succeeds
6. ClientA fails stills
7. 5-6 minutes later clientA starts succeeding.

Why is this? After the 5 minute period, what triggers the recovery to start?

Quintin Beukes



On Mon, Nov 23, 2009 at 10:32 PM, David Blevins &lt;david.blevins@visi.com&gt; wrote:
&gt; This is because there is no concept of blocking connections for applications
&gt; that are being redeployed. Â In fact our (geronimo and openejb) redeploy is
&gt; just an undeploy followed by a deploy, so there's no special concept
&gt; propagated throughout the architecture that something is only temporarily
&gt; gone and will be coming back.
&gt;
&gt; That said, if we added all that, you'd still have to wait the exact same
&gt; amount of time for the undeploy/deploy process plus a small shave off of
&gt; total throughput for the synchronization we'd have to add to make the
&gt; wait-for-redeploy logic work. Â The bigger your app gets, the longer the time
&gt; your client spends waiting, which is probably going to drive you to splinter
&gt; your app into tiny fragments which only complicates things more and adds
&gt; even more overhead.
&gt;
&gt; This is one of those "change the problem" types of situations. Â Instead
&gt; enable multicast discovery on your server and just let it run. Â When you
&gt; want to "redeploy", just boot a new server with the new version of the app.
&gt; Â When you get that server running to your liking -- almost everyone has some
&gt; sort of initialization they like to do in their apps -- just shut down the
&gt; first server and the client will immediately roll over to the second server.
&gt; Â No time spent waiting on redeploy and you actually get a chance to pound on
&gt; your new server a bit before it goes live, so no more risk that the app
&gt; doesn't quite work after the redeploy.
&gt;
&gt; You can do this all on the same machine with a shell script or ant script
&gt; that is only slightly fancier than your standard start, deploy, run type of
&gt; script.
&gt;
&gt; -David
&gt;
&gt; On Nov 23, 2009, at 6:20 AM, Quintin Beukes wrote:
&gt;
&gt;&gt; Hey,
&gt;&gt;
&gt;&gt; One of the big motivations for shifting to OpenEJB 3.1.2 from GF was
&gt;&gt; the connection recovery built into it. My inquiry was specifically
&gt;&gt; about failed remote EJB connections because a server restarts or a
&gt;&gt; network hiccup. We've always had problems with this, especially with
&gt;&gt; networks running from surface to underground.
&gt;&gt;
&gt;&gt; This seems to be working. Great job!! Thanks alot. I'm aiming for
&gt;&gt; complete recovery in the following situations.
&gt;&gt; 1. System exception (any failure on the part of OpenEJB, even if the
&gt;&gt; cause was my own)
&gt;&gt; 2. Dropped connections due to network
&gt;&gt; 3. Dropped connections from server restart
&gt;&gt; 4. Dropped connections from redeploy (basically the same as (3) I assume).
&gt;&gt;
&gt;&gt; Though I have a query though. Every time I redeploy, for ex, I have to
&gt;&gt; manually go and restart all services because it takes very long for
&gt;&gt; OpenEJB client to notice something is wrong and recover.
&gt;&gt;
&gt;&gt; Here is an example: If I undeploy, I get something like the following
&gt;&gt; on a client.
&gt;&gt;
&gt;&gt; --------- SNIP -----------
&gt;&gt;
&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt; Â  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal error: No
&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt; Â  Â  Â  Â java.rmi.RemoteException: No deployment:
&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt; Â  java.lang.Thread.run(Thread.java:619)
&gt;&gt;
&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt; Â  java.lang.Thread.run(Thread.java:619)
&gt;&gt;
&gt;&gt;
&gt;&gt; 23 Nov 2009 15:59:20,039 ERROR -- Exception: Service
&gt;&gt; ConfigurationService failed for instance
&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure while
&gt;&gt; servicing a request.
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt; Â  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; java.rmi.RemoteException: The server has encountered a fatal error: No
&gt;&gt; such deployment java.rmi.RemoteException: No deployment:
&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt;&gt; Â  Â  Â  Â java.rmi.RemoteException: No deployment:
&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt; Â  java.lang.Thread.run(Thread.java:619)
&gt;&gt;
&gt;&gt; java.rmi.RemoteException: No deployment:
&gt;&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
&gt;&gt;
&gt;&gt; org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;&gt; Â  org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;&gt; Â  org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
&gt;&gt;
&gt;&gt; java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
&gt;&gt; Â  java.lang.Thread.run(Thread.java:619)
&gt;&gt;
&gt;&gt; --------- SNIP -----------
&gt;&gt;
&gt;&gt; Then, for a while, even after the EJB service started up completely
&gt;&gt; and even though I'm creating new InitialContext instances I get the
&gt;&gt; following. This isn't too bad, though it does take a few minutes
&gt;&gt; (between 3 and 5) to recover.
&gt;&gt;
&gt;&gt; --------- SNIP -----------
&gt;&gt;
&gt;&gt; 23 Nov 2009 16:00:24,802 TRACE -- Received packet
&gt;&gt; [R0010088220000000000000000]
&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Unknown failure servicing
&gt;&gt; the request (javax.ejb.EJBException)
&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt; java.rmi.RemoteException: Received invalid response code from server:
&gt;&gt; -1
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt; Â  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; java.rmi.RemoteException: Received invalid response code from server: -1
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt; Â  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt;
&gt;&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Service
&gt;&gt; ConfigurationService failed for instance
&gt;&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt;&gt; java.lang.Exception: ConfigurationService has an unknown failure while
&gt;&gt; servicing a request.
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:84)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt;&gt; java.rmi.RemoteException: Received invalid response code from server:
&gt;&gt; -1
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt; Â  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; java.rmi.RemoteException: Received invalid response code from server: -1
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;&gt;
&gt;&gt; org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;&gt; Â  $Proxy2.captureLamp(Unknown Source)
&gt;&gt;
&gt;&gt; net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
&gt;&gt; Â  net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)
&gt;&gt;
&gt;&gt; --------- SNIP -----------
&gt;&gt;
&gt;&gt; After it recovers from the above, all is back to normal.
&gt;&gt;
&gt;&gt; This is quite serious. How I can get around this, even if I have to
&gt;&gt; make some code changes?
&gt;&gt;
&gt;&gt; Thanks again. I'm so relieved this problem is finally over. Previously
&gt;&gt; I've had to do some serious recovery just because a client was left
&gt;&gt; running and Glassfish's client library opened so many file descriptors
&gt;&gt; for each failure that the server crashed with a No Space Left on
&gt;&gt; Device error.
&gt;&gt;
&gt;&gt; Quintin Beukes
&gt;&gt;
&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Connection Recovery</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3cC08F635E-CF58-4310-BCCA-DD26046BD259@visi.com%3e"/>
<id>urn:uuid:%3cC08F635E-CF58-4310-BCCA-DD26046BD259@visi-com%3e</id>
<updated>2009-11-23T20:32:45Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
This is because there is no concept of blocking connections for  
applications that are being redeployed.  In fact our (geronimo and  
openejb) redeploy is just an undeploy followed by a deploy, so there's  
no special concept propagated throughout the architecture that  
something is only temporarily gone and will be coming back.

That said, if we added all that, you'd still have to wait the exact  
same amount of time for the undeploy/deploy process plus a small shave  
off of total throughput for the synchronization we'd have to add to  
make the wait-for-redeploy logic work.  The bigger your app gets, the  
longer the time your client spends waiting, which is probably going to  
drive you to splinter your app into tiny fragments which only  
complicates things more and adds even more overhead.

This is one of those "change the problem" types of situations.   
Instead enable multicast discovery on your server and just let it  
run.  When you want to "redeploy", just boot a new server with the new  
version of the app.  When you get that server running to your liking  
-- almost everyone has some sort of initialization they like to do in  
their apps -- just shut down the first server and the client will  
immediately roll over to the second server.  No time spent waiting on  
redeploy and you actually get a chance to pound on your new server a  
bit before it goes live, so no more risk that the app doesn't quite  
work after the redeploy.

You can do this all on the same machine with a shell script or ant  
script that is only slightly fancier than your standard start, deploy,  
run type of script.

-David

On Nov 23, 2009, at 6:20 AM, Quintin Beukes wrote:

&gt; Hey,
&gt;
&gt; One of the big motivations for shifting to OpenEJB 3.1.2 from GF was
&gt; the connection recovery built into it. My inquiry was specifically
&gt; about failed remote EJB connections because a server restarts or a
&gt; network hiccup. We've always had problems with this, especially with
&gt; networks running from surface to underground.
&gt;
&gt; This seems to be working. Great job!! Thanks alot. I'm aiming for
&gt; complete recovery in the following situations.
&gt; 1. System exception (any failure on the part of OpenEJB, even if the
&gt; cause was my own)
&gt; 2. Dropped connections due to network
&gt; 3. Dropped connections from server restart
&gt; 4. Dropped connections from redeploy (basically the same as (3) I  
&gt; assume).
&gt;
&gt; Though I have a query though. Every time I redeploy, for ex, I have to
&gt; manually go and restart all services because it takes very long for
&gt; OpenEJB client to notice something is wrong and recover.
&gt;
&gt; Here is an example: If I undeploy, I get something like the following
&gt; on a client.
&gt;
&gt; --------- SNIP -----------
&gt;
&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client 
&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;    $Proxy2.captureLamp(Unknown Source)
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; java.rmi.RemoteException: The server has encountered a fatal error: No
&gt; such deployment java.rmi.RemoteException: No deployment:
&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt; 	java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/ 
&gt; LampCaptureBean
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .server 
&gt; .ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java: 
&gt; 425)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java: 
&gt; 81)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt; 149)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;    org.apache.openejb.server.ejbd.KeepAliveServer 
&gt; $Session.service(KeepAliveServer.java:213)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;    java.lang.Thread.run(Thread.java:619)
&gt;
&gt; java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/ 
&gt; LampCaptureBean
&gt;     
&gt; org 
&gt; .apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java: 
&gt; 191)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java: 
&gt; 79)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt; 149)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;    org.apache.openejb.server.ejbd.KeepAliveServer 
&gt; $Session.service(KeepAliveServer.java:213)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;    java.lang.Thread.run(Thread.java:619)
&gt;
&gt;
&gt; 23 Nov 2009 15:59:20,039 ERROR -- Exception: Service
&gt; ConfigurationService failed for instance
&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt; java.lang.Exception: ConfigurationService has an unknown failure while
&gt; servicing a request.
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:84)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; javax.ejb.EJBException: Container has suffered a SystemException
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client 
&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;    $Proxy2.captureLamp(Unknown Source)
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; java.rmi.RemoteException: The server has encountered a fatal error: No
&gt; such deployment java.rmi.RemoteException: No deployment:
&gt; VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
&gt; 	java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/ 
&gt; LampCaptureBean
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .server 
&gt; .ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java: 
&gt; 425)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java: 
&gt; 81)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt; 149)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;    org.apache.openejb.server.ejbd.KeepAliveServer 
&gt; $Session.service(KeepAliveServer.java:213)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;    java.lang.Thread.run(Thread.java:619)
&gt;
&gt; java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/ 
&gt; LampCaptureBean
&gt;     
&gt; org 
&gt; .apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java: 
&gt; 191)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java: 
&gt; 79)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
&gt;    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java: 
&gt; 149)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
&gt;    org.apache.openejb.server.ejbd.KeepAliveServer 
&gt; $Session.service(KeepAliveServer.java:213)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
&gt;    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
&gt;    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
&gt;    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.runTask(ThreadPoolExecutor.java:886)
&gt;    java.util.concurrent.ThreadPoolExecutor 
&gt; $Worker.run(ThreadPoolExecutor.java:908)
&gt;    java.lang.Thread.run(Thread.java:619)
&gt;
&gt; --------- SNIP -----------
&gt;
&gt; Then, for a while, even after the EJB service started up completely
&gt; and even though I'm creating new InitialContext instances I get the
&gt; following. This isn't too bad, though it does take a few minutes
&gt; (between 3 and 5) to recover.
&gt;
&gt; --------- SNIP -----------
&gt;
&gt; 23 Nov 2009 16:00:24,802 TRACE -- Received packet  
&gt; [R0010088220000000000000000]
&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Unknown failure servicing
&gt; the request (javax.ejb.EJBException)
&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt; java.rmi.RemoteException: Received invalid response code from server:
&gt; -1
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client 
&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;    $Proxy2.captureLamp(Unknown Source)
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; java.rmi.RemoteException: Received invalid response code from  
&gt; server: -1
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client 
&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;    $Proxy2.captureLamp(Unknown Source)
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt;
&gt; 23 Nov 2009 16:00:24,804 ERROR -- Exception: Service
&gt; ConfigurationService failed for instance
&gt; ConfigurationService[/10.0.0.25] (java.lang.Exception)
&gt; java.lang.Exception: ConfigurationService has an unknown failure while
&gt; servicing a request.
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:84)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; javax.ejb.EJBException: Unknown Container Exception:
&gt; java.rmi.RemoteException: Received invalid response code from server:
&gt; -1
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client 
&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;    $Proxy2.captureLamp(Unknown Source)
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; java.rmi.RemoteException: Received invalid response code from  
&gt; server: -1
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
&gt;     
&gt; org 
&gt; .apache 
&gt; .openejb 
&gt; .client 
&gt; .proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
&gt;    $Proxy2.captureLamp(Unknown Source)
&gt;     
&gt; net 
&gt; .kunye 
&gt; .vds 
&gt; .server 
&gt; .services 
&gt; .configuration 
&gt; .ConfigurationService.service(ConfigurationService.java:73)
&gt;    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java: 
&gt; 86)
&gt;
&gt; --------- SNIP -----------
&gt;
&gt; After it recovers from the above, all is back to normal.
&gt;
&gt; This is quite serious. How I can get around this, even if I have to
&gt; make some code changes?
&gt;
&gt; Thanks again. I'm so relieved this problem is finally over. Previously
&gt; I've had to do some serious recovery just because a client was left
&gt; running and Glassfish's client library opened so many file descriptors
&gt; for each failure that the server crashed with a No Space Left on
&gt; Device error.
&gt;
&gt; Quintin Beukes
&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>Connection Recovery</title>
<author><name>Quintin Beukes &lt;quintin@last.za.net&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1f3854d50911230620i4427658v113d05a7a692e248@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1f3854d50911230620i4427658v113d05a7a692e248@mail-gmail-com%3e</id>
<updated>2009-11-23T14:20:26Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hey,

One of the big motivations for shifting to OpenEJB 3.1.2 from GF was
the connection recovery built into it. My inquiry was specifically
about failed remote EJB connections because a server restarts or a
network hiccup. We've always had problems with this, especially with
networks running from surface to underground.

This seems to be working. Great job!! Thanks alot. I'm aiming for
complete recovery in the following situations.
1. System exception (any failure on the part of OpenEJB, even if the
cause was my own)
2. Dropped connections due to network
3. Dropped connections from server restart
4. Dropped connections from redeploy (basically the same as (3) I assume).

Though I have a query though. Every time I redeploy, for ex, I have to
manually go and restart all services because it takes very long for
OpenEJB client to notice something is wrong and recover.

Here is an example: If I undeploy, I get something like the following
on a client.

--------- SNIP -----------

javax.ejb.EJBException: Container has suffered a SystemException
    org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
    org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
    org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
    $Proxy2.captureLamp(Unknown Source)
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

java.rmi.RemoteException: The server has encountered a fatal error: No
such deployment java.rmi.RemoteException: No deployment:
VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
	java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/LampCaptureBean
    org.apache.openejb.server.ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
    org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
    org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
    org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
    org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    java.lang.Thread.run(Thread.java:619)

java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/LampCaptureBean
    org.apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
    org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
    org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
    org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
    org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    java.lang.Thread.run(Thread.java:619)


23 Nov 2009 15:59:20,039 ERROR -- Exception: Service
ConfigurationService failed for instance
ConfigurationService[/10.0.0.25] (java.lang.Exception)
java.lang.Exception: ConfigurationService has an unknown failure while
servicing a request.
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:84)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

javax.ejb.EJBException: Container has suffered a SystemException
    org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:178)
    org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
    org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
    $Proxy2.captureLamp(Unknown Source)
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

java.rmi.RemoteException: The server has encountered a fatal error: No
such deployment java.rmi.RemoteException: No deployment:
VDS-lamps-ejb-3.0.jar/LampCaptureBean; nested exception is:
	java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/LampCaptureBean
    org.apache.openejb.server.ejbd.EjbRequestHandler.replyWithFatalError(EjbRequestHandler.java:425)
    org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:81)
    org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
    org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
    org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    java.lang.Thread.run(Thread.java:619)

java.rmi.RemoteException: No deployment: VDS-lamps-ejb-3.0.jar/LampCaptureBean
    org.apache.openejb.server.ejbd.EjbDaemon.getDeployment(EjbDaemon.java:191)
    org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:79)
    org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:196)
    org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:149)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
    org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
    org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
    org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
    org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
    org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    java.lang.Thread.run(Thread.java:619)

--------- SNIP -----------

Then, for a while, even after the EJB service started up completely
and even though I'm creating new InitialContext instances I get the
following. This isn't too bad, though it does take a few minutes
(between 3 and 5) to recover.

--------- SNIP -----------

23 Nov 2009 16:00:24,802 TRACE -- Received packet [R0010088220000000000000000]
23 Nov 2009 16:00:24,804 ERROR -- Exception: Unknown failure servicing
the request (javax.ejb.EJBException)
javax.ejb.EJBException: Unknown Container Exception:
java.rmi.RemoteException: Received invalid response code from server:
-1
    org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
    org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
    org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
    $Proxy2.captureLamp(Unknown Source)
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

java.rmi.RemoteException: Received invalid response code from server: -1
    org.apache.openejb.client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
    org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
    org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
    org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
    $Proxy2.captureLamp(Unknown Source)
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)


23 Nov 2009 16:00:24,804 ERROR -- Exception: Service
ConfigurationService failed for instance
ConfigurationService[/10.0.0.25] (java.lang.Exception)
java.lang.Exception: ConfigurationService has an unknown failure while
servicing a request.
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:84)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

javax.ejb.EJBException: Unknown Container Exception:
java.rmi.RemoteException: Received invalid response code from server:
-1
    org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:184)
    org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
    org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
    $Proxy2.captureLamp(Unknown Source)
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

java.rmi.RemoteException: Received invalid response code from server: -1
    org.apache.openejb.client.EJBObjectHandler.businessMethod(EJBObjectHandler.java:239)
    org.apache.openejb.client.EJBObjectHandler._invoke(EJBObjectHandler.java:157)
    org.apache.openejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:117)
    org.apache.openejb.client.proxy.Jdk13InvocationHandler.invoke(Jdk13InvocationHandler.java:52)
    $Proxy2.captureLamp(Unknown Source)
    net.kunye.vds.server.services.configuration.ConfigurationService.service(ConfigurationService.java:73)
    net.kunye.services.tcp.TCPServiceThread.run(TCPServiceThread.java:86)

--------- SNIP -----------

After it recovers from the above, all is back to normal.

This is quite serious. How I can get around this, even if I have to
make some code changes?

Thanks again. I'm so relieved this problem is finally over. Previously
I've had to do some serious recovery just because a client was left
running and Glassfish's client library opened so many file descriptors
for each failure that the server crashed with a No Space Left on
Device error.

Quintin Beukes


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3cC6CE8B32-313B-424A-AA56-07FB679D2C97@visi.com%3e"/>
<id>urn:uuid:%3cC6CE8B32-313B-424A-AA56-07FB679D2C97@visi-com%3e</id>
<updated>2009-11-20T21:57:55Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

On Nov 19, 2009, at 3:46 AM, Luis Fernando Planella Gonzalez wrote:

&gt; I'd love to keep helping on this issue...
&gt; However I have an imminent issue: My daughter will be born on  
&gt; saturday, so
&gt; I'll be off for a week or so.
&gt; Afterwards, we can resume the subject.

Wow!  Congratulations!  A week or so?  Guessing this is not your first  
kid, you sound like a pro!

&gt; Anyway, that algorithm should be used only when neither  
&gt; jtaDataSource nor
&gt; nonJtaDataSource are used, right? At least for what I saw in code,  
&gt; it's
&gt; possible to have only nonJtaDataSource (making a new jta datasource  
&gt; to be
&gt; deployed).

Yeah, I'm not sure.  I'd have to take a look at our current  
"fanciness" and see what makes the most sense.  We'd want this sort of  
"matching loop" to work for resolving any resource ID, so that might  
change how we code it.

&gt; So, my guess would be to make the chunk of code I added to deploy(app,
&gt; persistenceModule) a private method, let's say,  
&gt; locateDataSource(id), which
&gt; would look for a jta data source with that name, then a non-jta,  
&gt; then an
&gt; unespecified.
&gt;
&gt; So, could it be something like:
&gt; * if explicit datasources are used, use them
&gt; * if neither jta-data-source nor non-jta-data-source, try to guess:
&gt; *** try locateDataSource(persitenceUnit.getName())
&gt; *** if not found, try  
&gt; locateDataSource(persistenceModule.getModuleId()) // Is
&gt; it really necessary? As I saw, PersistenceModule.getModuleId() is  
&gt; always null
&gt; *** if not found, for each WebModule try
&gt; locateDataSource(webModule.getContextRoot())


Wasn't referring to the PersistenceModule.getModuleId(), but the  
module in which the persistence unit was found.  *Most* the time the  
persistence.xml is inside an ejb jar or webapp.  We don't retain that  
information when we create the PersistenceModule now, but we could  
maybe link it to the EjbModule or WebModule if it was.  But we can add  
that as a separate step.

Definitely we would want this as some sort of loop of strings to check  
rather than as a bunch of nested if statements.  Then the same logical  
routine could work for resolving any resource ref.  For a plain  
resource ref the list of strings might be something like this:

   1. mappedName
   2. jndi name
   3. variable name
   4. module name
   5. app name

Thinking out loud of course, the code might disagree with me :)  Some  
ideas sound really good and then turn out to be too much work given  
the code.


-David




</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Luis Fernando Planella Gonzalez &lt;lfpg.dev@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c200911190946.59980.lfpg.dev@gmail.com%3e"/>
<id>urn:uuid:%3c200911190946-59980-lfpg-dev@gmail-com%3e</id>
<updated>2009-11-19T11:46:59Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
I'd love to keep helping on this issue...
However I have an imminent issue: My daughter will be born on saturday, so 
I'll be off for a week or so.
Afterwards, we can resume the subject.

Anyway, that algorithm should be used only when neither jtaDataSource nor 
nonJtaDataSource are used, right? At least for what I saw in code, it's 
possible to have only nonJtaDataSource (making a new jta datasource to be 
deployed).

So, my guess would be to make the chunk of code I added to deploy(app, 
persistenceModule) a private method, let's say, locateDataSource(id), which 
would look for a jta data source with that name, then a non-jta, then an 
unespecified.

So, could it be something like:
* if explicit datasources are used, use them
* if neither jta-data-source nor non-jta-data-source, try to guess:
*** try locateDataSource(persitenceUnit.getName())
*** if not found, try locateDataSource(persistenceModule.getModuleId()) // Is 
it really necessary? As I saw, PersistenceModule.getModuleId() is always null
*** if not found, for each WebModule try 
locateDataSource(webModule.getContextRoot())

What do you think?

--
Luis Fernando Planella Gonzalez



Em Quinta-feira 19 Novembro 2009, às 01:20:19, David Blevins escreveu:
&gt; On Nov 16, 2009, at 5:21 AM, Luis Fernando Planella Gonzalez wrote:
&gt; &gt; Well, assuming that my assumptions are right, I've patched AutoConfig
&gt; &gt; to use the first WebModule's root context name as a guess to the
&gt; &gt; DataSource name.
&gt; &gt; I've attached the patch, as well as complete files for AutoConfig and
&gt; &gt; AutoConfigPersistenceUnitsTest in
&gt; &gt; https://issues.apache.org/jira/browse/OPENEJB-1027
&gt; &gt; As this is my first code contribution to OpenEJB. So, please, correct
&gt; &gt; me if I did anything wrong...
&gt; &gt; Feedbacks are appreciated.
&gt; 
&gt; This is a great start, thanks!  I've gone ahead and committed it.
&gt; 
&gt; Would be great to get the other searches in there described in
&gt; OPENEJB-1027 such as linking based on the persistence unit name, etc.
&gt; I'm not sure the code is setup to make this easy now because the
&gt; getResourceId() method is perhaps too aggressive -- it always finds an
&gt; id no matter what -- but but at a high level it seems like something
&gt; like this would be really cool.
&gt; 
&gt;      List&lt;String&gt; strings = new ArrayList&lt;String&gt;();
&gt;      strings.add(jtaDataSourceName);
&gt;      strings.add(persistenceUnitName);
&gt;      strings.add(moduleName);
&gt;      strings.add(applicationName);
&gt; 
&gt;      String resourceId;
&gt; 
&gt;      for (String string : strings) {
&gt;          resourceId = getResourceId(string);
&gt; 
&gt;          if (resourceId != null) break;
&gt;      }
&gt; 
&gt;      // use the resourceId ....
&gt; 
&gt; That's the high level thought at least.  Lot's of ways that could be
&gt; rolled out with the existing code.  Maybe we just change
&gt; getResourceId() so that the 'String resourceId' is actually a var-arg
&gt; and move it to the end of the signature.  Or something.
&gt; 
&gt; Open to ideas.
&gt; 
&gt; And just as a side note, you're under no obligation to keep working on
&gt; this, but you're doing great and we can always use the help! :)
&gt; 
&gt; -David
&gt; 


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c7EA0E49C-665D-4276-87A8-7F06F9E52E10@visi.com%3e"/>
<id>urn:uuid:%3c7EA0E49C-665D-4276-87A8-7F06F9E52E10@visi-com%3e</id>
<updated>2009-11-19T03:20:19Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

On Nov 16, 2009, at 5:21 AM, Luis Fernando Planella Gonzalez wrote:

&gt; Well, assuming that my assumptions are right, I've patched AutoConfig
&gt; to use the first WebModule's root context name as a guess to the
&gt; DataSource name.
&gt; I've attached the patch, as well as complete files for AutoConfig and
&gt; AutoConfigPersistenceUnitsTest in
&gt; https://issues.apache.org/jira/browse/OPENEJB-1027
&gt; As this is my first code contribution to OpenEJB. So, please, correct
&gt; me if I did anything wrong...
&gt; Feedbacks are appreciated.

This is a great start, thanks!  I've gone ahead and committed it.

Would be great to get the other searches in there described in  
OPENEJB-1027 such as linking based on the persistence unit name, etc.   
I'm not sure the code is setup to make this easy now because the  
getResourceId() method is perhaps too aggressive -- it always finds an  
id no matter what -- but but at a high level it seems like something  
like this would be really cool.

     List&lt;String&gt; strings = new ArrayList&lt;String&gt;();
     strings.add(jtaDataSourceName);
     strings.add(persistenceUnitName);
     strings.add(moduleName);
     strings.add(applicationName);

     String resourceId;

     for (String string : strings) {
         resourceId = getResourceId(string);

         if (resourceId != null) break;
     }

     // use the resourceId ....

That's the high level thought at least.  Lot's of ways that could be  
rolled out with the existing code.  Maybe we just change  
getResourceId() so that the 'String resourceId' is actually a var-arg  
and move it to the end of the signature.  Or something.

Open to ideas.

And just as a side note, you're under no obligation to keep working on  
this, but you're doing great and we can always use the help! :)

-David



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: svn commit: r881730 - in /openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util:	Logger.java PaxLogStreamFactory.java</title>
<author><name>Jacek Laskowski &lt;jacek@laskowski.net.pl&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1b5bfeb50911181551w54b5c49ag7266f4add632a2a8@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1b5bfeb50911181551w54b5c49ag7266f4add632a2a8@mail-gmail-com%3e</id>
<updated>2009-11-18T23:51:47Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Wed, Nov 18, 2009 at 12:35 PM,  &lt;rickmcguire@apache.org&gt; wrote:

&gt; -            if (factoryClass != null) {
&gt; +            if (factoryClass == null) {

Hi Rick,

That change was easy to grasp, but...

&gt; Added: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/PaxLogStreamFactory.java

...that one wasn't. How is it used? By whom? When? Please elaborate...

Jacek

-- 
Jacek Laskowski
Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Further actions for OSGi'fication</title>
<author><name>Jacek Laskowski &lt;jacek@laskowski.net.pl&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1b5bfeb50911170554w43750b06udfdb5351d9ab71a9@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1b5bfeb50911170554w43750b06udfdb5351d9ab71a9@mail-gmail-com%3e</id>
<updated>2009-11-17T13:54:23Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Thu, Nov 12, 2009 at 8:20 PM, Jay D. McHugh &lt;jay@jnwd.net&gt; wrote:

&gt; Is there an up to date 'jumpstart' for getting OpenEJB running in Karaf?

Sorry for a late response.

There's no docs about OpenEJB on Karaf. I've been playing with bare
Felix and have only been pointed into this direction recently. I hope
to have sth in upcoming days. Ping me if it takes longer :)

Jacek

-- 
Jacek Laskowski
Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl


</pre>
</div>
</content>
</entry>
<entry>
<title>@ManagedBean support</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c0D52D627-1EEE-4544-B8DF-1071672CA5EC@visi.com%3e"/>
<id>urn:uuid:%3c0D52D627-1EEE-4544-B8DF-1071672CA5EC@visi-com%3e</id>
<updated>2009-11-17T12:41:22Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Been looking at support for the java ee 6 @ManagedBean.  Essentially,  
this is a stateful bean without the ability to have @Remove,  
@TransactionManagement, @RolesAllowed, @ConcurrencyManagement,  
@Schedule, @Asynchronous etc.  But it can use @Resource and related EE  
injection annotations, @PostConstruct/@PreDestroy, and interceptors.   
It's created on lookup or injection just like a Stateful bean and its  
lifecycle is the same.

Creating a container for it would basically entail copying the  
stateful container and making a few additions to the deployment  
system.  Pretty much identical to when we made the singleton container  
which is a copy of the stateless container.

All that is really fairly easy.  The innovative part comes in finding  
clean ways to add back in the @TransactionManagement, @RolesAllowed,  
@ConcurrencyManagement, @Schedule, @Asynchronous etc should a user  
want any of them.  By default they would *not* be there, but we have  
all the code to do those functionalities (except some of the new ejb  
3.1 stuff) and it really is just a matter of finding a clean way to  
design it internally.

-David



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb as a osgi service?</title>
<author><name>Jean-Louis MONTEIRO &lt;jean-louis.monteiro@atosorigin.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c26386948.post@talk.nabble.com%3e"/>
<id>urn:uuid:%3c26386948-post@talk-nabble-com%3e</id>
<updated>2009-11-17T09:43:22Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

Fully agree. 
We definitely have to make some changes in OpenEJB to make it a fully
OSGi-based solution.

Some days ago, Guillaume pointed me some interesting code.

I have been very busy, but will try to help you as much as possible.

Jean-Louis



Jacek Laskowski wrote:
&gt; 
&gt; On Sat, Nov 14, 2009 at 1:30 AM, Jay D. McHugh &lt;jay@jnwd.net&gt; wrote:
&gt; 
&gt;&gt; So, I was thinking of the JEE container as being a black box that would
&gt;&gt; allow a user to deploy JEE artifacts (EJB jars, WAR files, and EARs)
&gt;&gt; without knowing or caring that the server was internally implemented as
&gt;&gt; a collection of OSGi bundles.
&gt;&gt;
&gt;&gt; In this scenario, the server would need to have an EJB container that
&gt;&gt; would receive a non-OSGi artifact and would then need to make all of the
&gt;&gt; EJBs contained in it injectable (or findable through JNDI).
&gt;&gt;
&gt;&gt; To accomplish this, OpenEJB would then (need to?) be deployed as a
&gt;&gt; bundle that provided the EJB supporting services and a second bundle
&gt;&gt; that created a container utilizing those services. Â Is that what you
&gt;&gt; (and others) were thinking?
&gt; 
&gt; Hi Jay et al,
&gt; 
&gt; I was busy with Clojure lately which turned out have made me busy for
&gt; longer than I expected. On to OSGi...
&gt; 
&gt; The approach above is just one way to claim a EJB container is based
&gt; upon OSGi and most application servers (WAS, GlassFish, perhaps JOnAS)
&gt; does exactly this. OSGi serves as a componentization layer and is used
&gt; internally. There's no change from a user's perspective.
&gt; 
&gt; What I thought of to implement in OpenEJB was a different approach. Do
&gt; the above, but let OpenEJB's services be exposed as OSGi services and
&gt; therefore become a truly OSGi-based solution. If a developer wants to
&gt; play according to Java EE rules - appropriate packaging and placing
&gt; libraries in *the* directories - let him/her be with it. What makes me
&gt; more appealing to OSGi is the way OpenEJB should handle hot
&gt; redeployment of dependent libraries without stopping the server
&gt; itself. If OpenEJB let enterprise applications be built with their
&gt; libraries deployed as bundles, it would greatly minimize memory
&gt; requirements and allow end users redeploy them without touching the
&gt; apps themselves. If these enterprise applications were able to
&gt; leverage OpenEJB services *and* OSGi componentization that'd be way
&gt; better. That's my goal for OSGi integration.
&gt; 
&gt; Running an app atop OSGi is simple, just create a single bundle with
&gt; all that's needed and that's it. I'd prefer OpenEJB be built
&gt; dynamically at runtime. You want a SLSB container just install
&gt; appropriate bundle and have fun. If the container is no longer needed
&gt; just uninstall it. No more expensive (=time consuming) restarts or
&gt; redeployments. The same I'd like to see for EJBs deployed onto
&gt; OpenEJB. Their interfaces wouldn't have to be redeployed (provided
&gt; they haven't changed) so they could become a separate bundle (with
&gt; imports) and their implementation become another bundle (set). If it
&gt; needed a change refresh would do the job. Of course, under the covers
&gt; the redeployment would take place, but encouraging our users to
&gt; leverage the OSGi standard and build EJBs in a modular fashion would
&gt; made a huge difference.
&gt; 
&gt; Jacek
&gt; 
&gt; -- 
&gt; Jacek Laskowski
&gt; Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl
&gt; 
&gt; 

-- 
View this message in context: http://old.nabble.com/openejb-as-a-osgi-service--tp25992634p26386948.html
Sent from the OpenEJB Dev mailing list archive at Nabble.com.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb as a osgi service?</title>
<author><name>Jacek Laskowski &lt;jacek@laskowski.net.pl&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1b5bfeb50911170117s7f6b09a3pf574ff59fac2b27a@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1b5bfeb50911170117s7f6b09a3pf574ff59fac2b27a@mail-gmail-com%3e</id>
<updated>2009-11-17T09:17:29Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Sat, Nov 14, 2009 at 1:30 AM, Jay D. McHugh &lt;jay@jnwd.net&gt; wrote:

&gt; So, I was thinking of the JEE container as being a black box that would
&gt; allow a user to deploy JEE artifacts (EJB jars, WAR files, and EARs)
&gt; without knowing or caring that the server was internally implemented as
&gt; a collection of OSGi bundles.
&gt;
&gt; In this scenario, the server would need to have an EJB container that
&gt; would receive a non-OSGi artifact and would then need to make all of the
&gt; EJBs contained in it injectable (or findable through JNDI).
&gt;
&gt; To accomplish this, OpenEJB would then (need to?) be deployed as a
&gt; bundle that provided the EJB supporting services and a second bundle
&gt; that created a container utilizing those services.  Is that what you
&gt; (and others) were thinking?

Hi Jay et al,

I was busy with Clojure lately which turned out have made me busy for
longer than I expected. On to OSGi...

The approach above is just one way to claim a EJB container is based
upon OSGi and most application servers (WAS, GlassFish, perhaps JOnAS)
does exactly this. OSGi serves as a componentization layer and is used
internally. There's no change from a user's perspective.

What I thought of to implement in OpenEJB was a different approach. Do
the above, but let OpenEJB's services be exposed as OSGi services and
therefore become a truly OSGi-based solution. If a developer wants to
play according to Java EE rules - appropriate packaging and placing
libraries in *the* directories - let him/her be with it. What makes me
more appealing to OSGi is the way OpenEJB should handle hot
redeployment of dependent libraries without stopping the server
itself. If OpenEJB let enterprise applications be built with their
libraries deployed as bundles, it would greatly minimize memory
requirements and allow end users redeploy them without touching the
apps themselves. If these enterprise applications were able to
leverage OpenEJB services *and* OSGi componentization that'd be way
better. That's my goal for OSGi integration.

Running an app atop OSGi is simple, just create a single bundle with
all that's needed and that's it. I'd prefer OpenEJB be built
dynamically at runtime. You want a SLSB container just install
appropriate bundle and have fun. If the container is no longer needed
just uninstall it. No more expensive (=time consuming) restarts or
redeployments. The same I'd like to see for EJBs deployed onto
OpenEJB. Their interfaces wouldn't have to be redeployed (provided
they haven't changed) so they could become a separate bundle (with
imports) and their implementation become another bundle (set). If it
needed a change refresh would do the job. Of course, under the covers
the redeployment would take place, but encouraging our users to
leverage the OSGi standard and build EJBs in a modular fashion would
made a huge difference.

Jacek

-- 
Jacek Laskowski
Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Luis Fernando Planella Gonzalez &lt;lfpg.dev@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3cd12c1890911160521g2370ba32j4b4aa946aabc871f@mail.gmail.com%3e"/>
<id>urn:uuid:%3cd12c1890911160521g2370ba32j4b4aa946aabc871f@mail-gmail-com%3e</id>
<updated>2009-11-16T13:21:47Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Well, assuming that my assumptions are right, I've patched AutoConfig
to use the first WebModule's root context name as a guess to the
DataSource name.
I've attached the patch, as well as complete files for AutoConfig and
AutoConfigPersistenceUnitsTest in
https://issues.apache.org/jira/browse/OPENEJB-1027
As this is my first code contribution to OpenEJB. So, please, correct
me if I did anything wrong...
Feedbacks are appreciated.
--
Luis Fernando Planella Gonzalez


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb as a osgi service?</title>
<author><name>&quot;Jay D. McHugh&quot; &lt;jay@jnwd.net&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c4AFDFA23.50603@jnwd.net%3e"/>
<id>urn:uuid:%3c4AFDFA23-50603@jnwd-net%3e</id>
<updated>2009-11-14T00:30:27Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
I have been trying to think of this in terms of how a JEE application
server that is implemented completely as OSGi bundles would need its EJB
support to be implemented.

So, I was thinking of the JEE container as being a black box that would
allow a user to deploy JEE artifacts (EJB jars, WAR files, and EARs)
without knowing or caring that the server was internally implemented as
a collection of OSGi bundles.

In this scenario, the server would need to have an EJB container that
would receive a non-OSGi artifact and would then need to make all of the
EJBs contained in it injectable (or findable through JNDI).

To accomplish this, OpenEJB would then (need to?) be deployed as a
bundle that provided the EJB supporting services and a second bundle
that created a container utilizing those services.  Is that what you
(and others) were thinking?

Jay

Guillaume Nodet wrote:
&gt; I guess the first question is the goal of this OSGi integration.  Is
&gt; the aim to be JEE compatible while the JEE container is deployed in
&gt; OSGi or is the goal to be OSGi friendly in the standalone mode (no JEE
&gt; container, so no full compatibility) ?
&gt; In the first case, we know what need to be done and just need to find
&gt; the best way to do it, while in the second case, we need to find the
&gt; best integration.  Those might lead to different paths.
&gt; 
&gt; 2009/11/12 Jay D. McHugh &lt;jay@jnwd.net&gt;:
&gt;&gt; Hello all,
&gt;&gt;
&gt;&gt; I have been thinking about what an EJB provider and container should
&gt;&gt; look like in OSGi too.  And here is what I have come up with (please
&gt;&gt; respond with corrections, alternate opinions, and agreement where
&gt;&gt; applicable).
&gt;&gt;
&gt;&gt; Provider issues:
&gt;&gt; First, OpenEJB would need to provide a set of services that would allow
&gt;&gt; for the scanning of a bundle to determine if there are EJBs in it.  I
&gt;&gt; believe Jacek has this or something like it done already.
&gt;&gt;
&gt;&gt; Upon finding EJBs in a bundle, OpenEJB would either need to publish JNDI
&gt;&gt; references to each of the interfaces provided by those EJBs -or- the
&gt;&gt; provider would build and maintain a list of EJBs that are available for
&gt;&gt; inclusion in a container.
&gt;&gt;
&gt;&gt; Container issues:
&gt;&gt; From the container side we would need to figure out how an EJB container
&gt;&gt; is deployed.  Is a container a bundle in itself or could a container be
&gt;&gt; created within a larger bundle (or both)?
&gt;&gt;
&gt;&gt; And then, how are those EJBs injected/looked up once they are available
&gt;&gt; in a container.  If the JNDI is build up when EJB bundles are started in
&gt;&gt; the OSGi container - then how are the beans that are actually in the
&gt;&gt; container differentiated from the 'prototype' JNDI entries?  Or, are the
&gt;&gt; JNDI entries only created when EJBs are included in a container?
&gt;&gt;
&gt;&gt; Lastly, what happens when an EJB is injected or looked up?  Does a proxy
&gt;&gt; get returned so that stopped bundles can be handled somewhat gracefully?
&gt;&gt;   It seems to me that this is what we would need to do.  This would
&gt;&gt; probably overlap with what they have done over in the Tuscany project
&gt;&gt; though.
&gt;&gt;
&gt;&gt; I just remembered that there is an OSGi RFC (142 - which I have not
&gt;&gt; finished reading yet) that deals with the JNDI and probably gives some
&gt;&gt; direction on all of this.
&gt;&gt;
&gt;&gt; So, I've got to get reading - but if anyone has already read the spec,
&gt;&gt; do you have any comments?
&gt;&gt;
&gt;&gt; I have not heard of any spec on how EJB containers should behave in an
&gt;&gt; OSGi environment.  Does anyone else have any thoughts (or access to a
&gt;&gt; spec) on how they should?
&gt;&gt;
&gt;&gt;
&gt;&gt; Jay
&gt;&gt;
&gt;&gt; Jacek Laskowski wrote:
&gt;&gt;&gt; Hi,
&gt;&gt;&gt;
&gt;&gt;&gt; I've lately been wondering about the other pieces for openejb
&gt;&gt;&gt; osgi'fication and am stuck. I'll need your help or I won't do any
&gt;&gt;&gt; further step as thinking has grabbed my free cycles completely.
&gt;&gt;&gt;
&gt;&gt;&gt; OSGi may seem as quite a different technology, but what it does with
&gt;&gt;&gt; our development perspective is to think about classloaders and
&gt;&gt;&gt; services. Everything in OSGi is just about classloaders/services and
&gt;&gt;&gt; its implication to the app.
&gt;&gt;&gt;
&gt;&gt;&gt; There're the openejb bundles, but they're nothing more than just a
&gt;&gt;&gt; collection of classes. If you run a osgi provider and staff it with
&gt;&gt;&gt; these bundles, they're started, but it doesn't mean openejb is started
&gt;&gt;&gt; itself. When a bundle is started, it just means that the
&gt;&gt;&gt; imports/exports are resolved and available. OpenEJB could not be
&gt;&gt;&gt; started yet. It's an activator (an instance of
&gt;&gt;&gt; org.osgi.framework.BundleActivator) that's responsible for doing
&gt;&gt;&gt; what's required to fully start the bundlized application (in our case
&gt;&gt;&gt; - openejb). A bundle gives its classes/interfaces via exports or
&gt;&gt;&gt; services. The exports are to let others compose their classloaders
&gt;&gt;&gt; with necessary classes provided by other bundles. So, once the bundles
&gt;&gt;&gt; are started, the activator kicks in and do the job of starting the
&gt;&gt;&gt; app. That's where I'm stack. I need to create necessary openejb
&gt;&gt;&gt; services (in OSGi terms). Can you point me to the simplest way to boot
&gt;&gt;&gt; openejb? The about-to-be-created OSGi service for OpenEJB is just like
&gt;&gt;&gt; LocalInitialContextFactory that boots openejb when a lookup is fired
&gt;&gt;&gt; and holds a reference to it - exactly what the future osgi service
&gt;&gt;&gt; will do.
&gt;&gt;&gt;
&gt;&gt;&gt; ...after a while...
&gt;&gt;&gt;
&gt;&gt;&gt; After a couple of minutes reading the email of mine over and over
&gt;&gt;&gt; again, I think I'll figure out what I was after. I just need to copy
&gt;&gt;&gt; what's in LocalInitialContextFactory! :) So, here goes another
&gt;&gt;&gt; question - how do I deploy an ejb? A test case would be of much help.
&gt;&gt;&gt; I need a way to get a reference to the just-deployed ejb, so I'll be
&gt;&gt;&gt; able to expose it as a osgi service. It should work, doesn't it?
&gt;&gt;&gt;
&gt;&gt;&gt; Jacek
&gt;&gt;&gt;
&gt; 
&gt; 
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Resolve datasource from the application name</title>
<author><name>Luis Fernando Planella Gonzalez &lt;lfpg.dev@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3cd12c1890911130906r4300ed03w2352c1bbc23c8e95@mail.gmail.com%3e"/>
<id>urn:uuid:%3cd12c1890911130906r4300ed03w2352c1bbc23c8e95@mail-gmail-com%3e</id>
<updated>2009-11-13T17:06:40Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Well, I'm starting to look at this issue today.

Just a small recap: I'm starting to write a patch to automatically
configure data sources in a persistence unit which match the deployed
web application context name. SO, if I have N instances of the same
app in the same server, all I need to do is setup N data sources, each
with the exact name of the web application context for each instance.

&gt;From my previous post, you've answered the "Where is this heuristic
implemented?" question: in AutoConfig.
But I still need the answer for the second one "How to get the current
application name?".
My first idea would be to pick up the first WebModule in
AppModule.getWebModules() (if any) and invoke it's getContextRoot().
Is this ok? If that is the way to go, I would also have to change the
deploy(PersistenceModule) into deploy(AppModule, PersistenceModule),
so that the web applications may be read.

Am I in the right path?

For now, I'm also creating a new test in AutoConfigPersistenceUnitsTest:
    public void testFromWebApp() throws Exception {

        ResourceInfo jta = addDataSource("OrangeWeb",
OrangeDriver.class, "jdbc:orange-web:some:stuff", null);
        ResourceInfo nonJta = addDataSource("OrangeWebUnmanaged",
OrangeDriver.class, "jdbc:orange-web:some:stuff", null);

        PersistenceUnit persistenceUnit = new PersistenceUnit("orange");

        ClassLoader cl = this.getClass().getClassLoader();
        AppModule app = new AppModule(cl, "orange-app");
        app.getPersistenceModules().add(new PersistenceModule("root",
new Persistence(persistenceUnit)));
        WebApp webApp = new WebApp();
        webApp.setMetadataComplete(true);
        app.getWebModules().add(new WebModule(webApp, "orange-web",
cl, "war", "orange-web"));

        // Create app
        AppInfo appInfo = config.configureApplication(app);
        assembler.createApplication(appInfo);

        // Check results
        PersistenceUnitInfo orangeUnit = appInfo.persistenceUnits.get(0);

        assertEquals(jta.id, orangeUnit.jtaDataSource);
        assertEquals(nonJta.id, orangeUnit.nonJtaDataSource);
    }

--
Luis Fernando Planella Gonzalez
lfpg.dev@gmail.com


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb as a osgi service?</title>
<author><name>Guillaume Nodet &lt;gnodet@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3cb23ecedc0911122309j58cbf096rc59b66dc9fc55445@mail.gmail.com%3e"/>
<id>urn:uuid:%3cb23ecedc0911122309j58cbf096rc59b66dc9fc55445@mail-gmail-com%3e</id>
<updated>2009-11-13T07:09:00Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
I guess the first question is the goal of this OSGi integration.  Is
the aim to be JEE compatible while the JEE container is deployed in
OSGi or is the goal to be OSGi friendly in the standalone mode (no JEE
container, so no full compatibility) ?
In the first case, we know what need to be done and just need to find
the best way to do it, while in the second case, we need to find the
best integration.  Those might lead to different paths.

2009/11/12 Jay D. McHugh &lt;jay@jnwd.net&gt;:
&gt; Hello all,
&gt;
&gt; I have been thinking about what an EJB provider and container should
&gt; look like in OSGi too.  And here is what I have come up with (please
&gt; respond with corrections, alternate opinions, and agreement where
&gt; applicable).
&gt;
&gt; Provider issues:
&gt; First, OpenEJB would need to provide a set of services that would allow
&gt; for the scanning of a bundle to determine if there are EJBs in it.  I
&gt; believe Jacek has this or something like it done already.
&gt;
&gt; Upon finding EJBs in a bundle, OpenEJB would either need to publish JNDI
&gt; references to each of the interfaces provided by those EJBs -or- the
&gt; provider would build and maintain a list of EJBs that are available for
&gt; inclusion in a container.
&gt;
&gt; Container issues:
&gt; From the container side we would need to figure out how an EJB container
&gt; is deployed.  Is a container a bundle in itself or could a container be
&gt; created within a larger bundle (or both)?
&gt;
&gt; And then, how are those EJBs injected/looked up once they are available
&gt; in a container.  If the JNDI is build up when EJB bundles are started in
&gt; the OSGi container - then how are the beans that are actually in the
&gt; container differentiated from the 'prototype' JNDI entries?  Or, are the
&gt; JNDI entries only created when EJBs are included in a container?
&gt;
&gt; Lastly, what happens when an EJB is injected or looked up?  Does a proxy
&gt; get returned so that stopped bundles can be handled somewhat gracefully?
&gt;   It seems to me that this is what we would need to do.  This would
&gt; probably overlap with what they have done over in the Tuscany project
&gt; though.
&gt;
&gt; I just remembered that there is an OSGi RFC (142 - which I have not
&gt; finished reading yet) that deals with the JNDI and probably gives some
&gt; direction on all of this.
&gt;
&gt; So, I've got to get reading - but if anyone has already read the spec,
&gt; do you have any comments?
&gt;
&gt; I have not heard of any spec on how EJB containers should behave in an
&gt; OSGi environment.  Does anyone else have any thoughts (or access to a
&gt; spec) on how they should?
&gt;
&gt;
&gt; Jay
&gt;
&gt; Jacek Laskowski wrote:
&gt;&gt; Hi,
&gt;&gt;
&gt;&gt; I've lately been wondering about the other pieces for openejb
&gt;&gt; osgi'fication and am stuck. I'll need your help or I won't do any
&gt;&gt; further step as thinking has grabbed my free cycles completely.
&gt;&gt;
&gt;&gt; OSGi may seem as quite a different technology, but what it does with
&gt;&gt; our development perspective is to think about classloaders and
&gt;&gt; services. Everything in OSGi is just about classloaders/services and
&gt;&gt; its implication to the app.
&gt;&gt;
&gt;&gt; There're the openejb bundles, but they're nothing more than just a
&gt;&gt; collection of classes. If you run a osgi provider and staff it with
&gt;&gt; these bundles, they're started, but it doesn't mean openejb is started
&gt;&gt; itself. When a bundle is started, it just means that the
&gt;&gt; imports/exports are resolved and available. OpenEJB could not be
&gt;&gt; started yet. It's an activator (an instance of
&gt;&gt; org.osgi.framework.BundleActivator) that's responsible for doing
&gt;&gt; what's required to fully start the bundlized application (in our case
&gt;&gt; - openejb). A bundle gives its classes/interfaces via exports or
&gt;&gt; services. The exports are to let others compose their classloaders
&gt;&gt; with necessary classes provided by other bundles. So, once the bundles
&gt;&gt; are started, the activator kicks in and do the job of starting the
&gt;&gt; app. That's where I'm stack. I need to create necessary openejb
&gt;&gt; services (in OSGi terms). Can you point me to the simplest way to boot
&gt;&gt; openejb? The about-to-be-created OSGi service for OpenEJB is just like
&gt;&gt; LocalInitialContextFactory that boots openejb when a lookup is fired
&gt;&gt; and holds a reference to it - exactly what the future osgi service
&gt;&gt; will do.
&gt;&gt;
&gt;&gt; ...after a while...
&gt;&gt;
&gt;&gt; After a couple of minutes reading the email of mine over and over
&gt;&gt; again, I think I'll figure out what I was after. I just need to copy
&gt;&gt; what's in LocalInitialContextFactory! :) So, here goes another
&gt;&gt; question - how do I deploy an ejb? A test case would be of much help.
&gt;&gt; I need a way to get a reference to the just-deployed ejb, so I'll be
&gt;&gt; able to expose it as a osgi service. It should work, doesn't it?
&gt;&gt;
&gt;&gt; Jacek
&gt;&gt;
&gt;



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb as a osgi service?</title>
<author><name>&quot;Jay D. McHugh&quot; &lt;jay@jnwd.net&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c4AFC6E30.7010408@jnwd.net%3e"/>
<id>urn:uuid:%3c4AFC6E30-7010408@jnwd-net%3e</id>
<updated>2009-11-12T20:21:04Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hello all,

I have been thinking about what an EJB provider and container should
look like in OSGi too.  And here is what I have come up with (please
respond with corrections, alternate opinions, and agreement where
applicable).

Provider issues:
First, OpenEJB would need to provide a set of services that would allow
for the scanning of a bundle to determine if there are EJBs in it.  I
believe Jacek has this or something like it done already.

Upon finding EJBs in a bundle, OpenEJB would either need to publish JNDI
references to each of the interfaces provided by those EJBs -or- the
provider would build and maintain a list of EJBs that are available for
inclusion in a container.

Container issues:
&gt;From the container side we would need to figure out how an EJB container
is deployed.  Is a container a bundle in itself or could a container be
created within a larger bundle (or both)?

And then, how are those EJBs injected/looked up once they are available
in a container.  If the JNDI is build up when EJB bundles are started in
the OSGi container - then how are the beans that are actually in the
container differentiated from the 'prototype' JNDI entries?  Or, are the
JNDI entries only created when EJBs are included in a container?

Lastly, what happens when an EJB is injected or looked up?  Does a proxy
get returned so that stopped bundles can be handled somewhat gracefully?
   It seems to me that this is what we would need to do.  This would
probably overlap with what they have done over in the Tuscany project
though.

I just remembered that there is an OSGi RFC (142 - which I have not
finished reading yet) that deals with the JNDI and probably gives some
direction on all of this.

So, I've got to get reading - but if anyone has already read the spec,
do you have any comments?

I have not heard of any spec on how EJB containers should behave in an
OSGi environment.  Does anyone else have any thoughts (or access to a
spec) on how they should?


Jay

Jacek Laskowski wrote:
&gt; Hi,
&gt; 
&gt; I've lately been wondering about the other pieces for openejb
&gt; osgi'fication and am stuck. I'll need your help or I won't do any
&gt; further step as thinking has grabbed my free cycles completely.
&gt; 
&gt; OSGi may seem as quite a different technology, but what it does with
&gt; our development perspective is to think about classloaders and
&gt; services. Everything in OSGi is just about classloaders/services and
&gt; its implication to the app.
&gt; 
&gt; There're the openejb bundles, but they're nothing more than just a
&gt; collection of classes. If you run a osgi provider and staff it with
&gt; these bundles, they're started, but it doesn't mean openejb is started
&gt; itself. When a bundle is started, it just means that the
&gt; imports/exports are resolved and available. OpenEJB could not be
&gt; started yet. It's an activator (an instance of
&gt; org.osgi.framework.BundleActivator) that's responsible for doing
&gt; what's required to fully start the bundlized application (in our case
&gt; - openejb). A bundle gives its classes/interfaces via exports or
&gt; services. The exports are to let others compose their classloaders
&gt; with necessary classes provided by other bundles. So, once the bundles
&gt; are started, the activator kicks in and do the job of starting the
&gt; app. That's where I'm stack. I need to create necessary openejb
&gt; services (in OSGi terms). Can you point me to the simplest way to boot
&gt; openejb? The about-to-be-created OSGi service for OpenEJB is just like
&gt; LocalInitialContextFactory that boots openejb when a lookup is fired
&gt; and holds a reference to it - exactly what the future osgi service
&gt; will do.
&gt; 
&gt; ...after a while...
&gt; 
&gt; After a couple of minutes reading the email of mine over and over
&gt; again, I think I'll figure out what I was after. I just need to copy
&gt; what's in LocalInitialContextFactory! :) So, here goes another
&gt; question - how do I deploy an ejb? A test case would be of much help.
&gt; I need a way to get a reference to the just-deployed ejb, so I'll be
&gt; able to expose it as a osgi service. It should work, doesn't it?
&gt; 
&gt; Jacek
&gt; 


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: openejb as a osgi service?</title>
<author><name>&quot;Jay D. McHugh&quot; &lt;jay@jnwd.net&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c4AFC62D2.8000806@jnwd.net%3e"/>
<id>urn:uuid:%3c4AFC62D2-8000806@jnwd-net%3e</id>
<updated>2009-11-12T19:32:34Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Jacek,

Have you seen the JNDI bundles provided by Aries?

I have avoided the implementation OpenEJB up until now and for the most
part, I have used injection to get bean instances (rather than looking
them up).  But, it seems like we should be able to use what they
developed there rather than having to develop it here.

But like I said - this is the (hopeful) opinion who does not have any of
the facts.

Jay

Jacek Laskowski wrote:
&gt; On Wed, Oct 21, 2009 at 4:26 PM, Quintin Beukes &lt;quintin@skywalk.co.za&gt; wrote:
&gt; 
&gt;&gt; Hope it helps.
&gt; 
&gt; Yes, it did, but I had a vague idea of what I should have been doing
&gt; and didn't pay much attention to these classes.
&gt; 
&gt; I've just committed a working activator to boot up openejb to
&gt; https://svn.apache.org/repos/asf/openejb/trunk/sandbox/openejb-osgi.
&gt; 
&gt; The necessary bundles are as follows:
&gt; 
&gt; -&gt; ps
&gt; START LEVEL 1
&gt;    ID   State         Level  Name
&gt; [   0] [Active     ] [    0] System Bundle (2.0.0)
&gt; [   1] [Active     ] [    1] Apache Felix Bundle Repository (1.4.1)
&gt; [   2] [Active     ] [    1] Apache Felix Shell Service (1.4.0)
&gt; [   3] [Active     ] [    1] Apache Felix Shell TUI (1.4.0)
&gt; [   7] [Active     ] [    1] Apache OpenEJB :: Container :: Java EE
&gt; (3.1.2.SNAPSHOT)
&gt; [   8] [Active     ] [    1] file:/C:/.m2/wsdl4j/wsdl4j/1.6.1/wsdl4j-1.6.1.jar
&gt; [   9] [Active     ] [    1] Apache XBean :: Naming (3.6.0.SNAPSHOT)
&gt; [  14] [Active     ] [    1] Apache XBean :: ASM shaded (repackaged)
&gt; (3.7.0.SNAPSHOT)
&gt; [  15] [Active     ] [    1] Apache XBean :: Reflect (3.6.0.SNAPSHOT)
&gt; [  23] [Active     ] [    1] Apache OpenEJB :: Container :: Loader
&gt; (3.1.2.SNAPSHOT)
&gt; [  25] [Active     ] [    1] OPS4J Pax Url - wrap: (0.3.2)
&gt; [  26] [Active     ] [    1] Apache Felix Configuration Admin Service (1.2.4)
&gt; [  27] [Active     ] [    1]
&gt; wrap_http___repo1.maven.org_maven2_wsdl4j_wsdl4j_1.6.2_wsdl4j-1.6.2.jar
&gt; (0)
&gt; [  30] [Active     ] [    1]
&gt; wrap_file__C__.m2_commons-cli_commons-cli_1.1_commons-cli-1.1.jar (0)
&gt; [  33] [Active     ] [    1]
&gt; wrap_file__C__.m2_log4j_log4j_1.2.12_log4j-1.2.12.jar (0)
&gt; [  34] [Active     ] [    1] openejb-api (3.1.2.SNAPSHOT)
&gt; [  35] [Active     ] [    1] Apache OpenEJB :: Container :: Java Agent
&gt; (3.1.2.SNAPSHOT)
&gt; [  36] [Active     ] [    1] Apache XBean :: Finder shaded
&gt; (repackaged) (3.7.0.SNAPSHOT)
&gt; [  37] [Active     ] [    1] Apache OpenEJB :: Container :: Core
&gt; (3.1.2.SNAPSHOT)
&gt; [  57] [Active     ] [    1] Ejb_stateless (1.0.0)
&gt; [  58] [Active     ] [    1] Ejb_deployer (1.0.0)
&gt; [  62] [Active     ] [    1] Apache OpenEJB :: Container :: Core ::
&gt; OSGi (3.1.2.SNAPSHOT)
&gt; [  64] [Active     ] [    1] Apache ServiceMix Features :: Transaction
&gt; (4.0.0.m1)
&gt; [  65] [Active     ] [    1] Jencks (2.2)
&gt; [  66] [Active     ] [    1] geronimo-jms_1.1_spec (1.1.1)
&gt; [  67] [Active     ] [    1] geronimo-j2ee-connector_1.5_spec (2.0.0)
&gt; [  68] [Active     ] [    1] geronimo-servlet_2.5_spec (1.2)
&gt; [  69] [Active     ] [    1]
&gt; wrap_http___repo2.maven.org_maven2_commons-logging_commons-logging_1.1.1_commons-logging-1.1.1.jar
&gt; (0)
&gt; [  71] [Active     ] [    1] OPS4J Pax Logging - API (1.4)
&gt; [  73] [Active     ] [    1] Geronimo TxManager :: Connector (2.1.3)
&gt; [  74] [Active     ] [    1] Geronimo TxManager :: Transaction (2.1.3)
&gt; [  75] [Active     ] [    1] Spring AOP (2.5.6.SEC01)
&gt; [  76] [Active     ] [    1] Spring Beans (2.5.6.SEC01)
&gt; [  77] [Active     ] [    1] Spring Context (2.5.6.SEC01)
&gt; [  78] [Active     ] [    1] Spring Transaction (2.5.6.SEC01)
&gt; [  79] [Active     ] [    1] geronimo-annotation_1.0_spec (1.1.1)
&gt; [  80] [Active     ] [    1] geronimo-ejb_3.0_spec (1.0.1)
&gt; [  81] [Active     ] [    1] geronimo-interceptor_3.0_spec (1.0.1)
&gt; [  82] [Active     ] [    1] geronimo-javamail_1.4_spec (1.6)
&gt; [  83] [Active     ] [    1] geronimo-j2ee-management_1.1_spec (1.0.1)
&gt; [  84] [Active     ] [    1] geronimo-jpa_3.0_spec (1.1.1)
&gt; [  85] [Active     ] [    1] J2EE JACC 1.1 (1.0.2)
&gt; [  86] [Active     ] [    1] geronimo-jta_1.1_spec (1.1.1)
&gt; [  87] [Active     ] [    1] OPS4J Pax Logging - Service (1.4)
&gt; [  90] [Active     ] [    1] Apache Commons Pool (1.4.0)
&gt; [  95] [Active     ] [    1] Commons DBCP (1.3.0.r699049)
&gt; [  99] [Active     ] [    1]
&gt; wrap_http___repo2.maven.org_maven2_org_apache_activemq_activemq-ra_4.1.1_activemq-ra-4.1.1.jar
&gt; (0)
&gt; [ 100] [Active     ] [    1]
&gt; wrap_http___repo2.maven.org_maven2_org_apache_activemq_activemq-core_4.1.1_activemq-core-4.1.1.jar
&gt; (0)
&gt; [ 101] [Active     ] [    1]
&gt; wrap_http___repo1.maven.org_maven2_backport-util-concurrent_backport-util-concurrent_3.1_backport-util-concurrent-3.1.jar
&gt; (0)
&gt; 
&gt; I'll need to give it a try again and filter out what's unnecessary
&gt; (perhaps 1-2 bundles only).
&gt; 
&gt; The output upon openejb startup is as follows:
&gt; 
&gt; Activator started
&gt; DEBUG: org/apache/openejb/util/resources/Messages_pl.properties
&gt; DEBUG: org/apache/openejb/util/resources/Messages_pl_PL.properties
&gt; Apache OpenEJB ${pom.version}    build:
&gt; @DATE-REPLACED-BY-MAVEN@-@TIME-REPLACED-BY-MAVEN@
&gt; http://openejb.apache.org/
&gt; DEBUG: org/apache/openejb/util/Messages.properties
&gt; DEBUG: org/apache/openejb/util/Messages_pl.properties
&gt; DEBUG: org/apache/openejb/util/Messages_pl_PL.properties
&gt; DEBUG: org/apache/openejb/Messages.properties
&gt; DEBUG: org/apache/openejb/Messages_pl.properties
&gt; DEBUG: org/apache/openejb/Messages_pl_PL.properties
&gt; DEBUG: org/apache/openejb/assembler/classic/Messages_pl.properties
&gt; DEBUG: org/apache/openejb/assembler/classic/Messages_pl_PL.properties
&gt; DEBUG: org/apache/openejb/config/Messages_pl.properties
&gt; DEBUG: org/apache/openejb/config/Messages_pl_PL.properties
&gt; DEBUG: META-INF/services/javax.xml.parsers.SAXParserFactory
&gt; DEBUG: org/apache/openejb/config/sys/jaxb.properties
&gt; DEBUG: META-INF/services/javax.xml.bind.JAXBContext
&gt; DEBUG: META-INF/services/javax.xml.datatype.DatatypeFactory
&gt; DEBUG: META-INF/services/javax.xml.datatype.DatatypeFactory
&gt; DEBUG: META-INF/services/javax.xml.datatype.DatatypeFactory
&gt; DEBUG: META-INF/services/javax.xml.parsers.SAXParserFactory
&gt; DEBUG: META-INF/services/org/apache/activemq/broker/broker
&gt; [org.apache.activemq.broker.BrokerService] : ActiveMQ 4.1.1 JMS
&gt; Message Broker (localhost) is starting
&gt; [org.apache.activemq.broker.BrokerService] : For help or more
&gt; information please see: http://incubator.apache.org/activemq/
&gt; DEBUG: META-INF/services/org/apache/activemq/transport/tcp
&gt; DEBUG: META-INF/services/org/apache/activemq/wireformat/default
&gt; [org.apache.activemq.transport.TransportServerThreadSupport] :
&gt; Listening for connections at: tcp://work:61616
&gt; [org.apache.activemq.broker.TransportConnector] : Connector
&gt; tcp://work:61616 Started
&gt; [org.apache.activemq.broker.BrokerService] : ActiveMQ JMS Message
&gt; Broker (localhost, ID:work-3337-1256173063703-0:0) started
&gt; ...A bundle has been started: org.apache.openejb.core-osgi
&gt; 
&gt; I'm going to work on a osgi'fied client JNDI lookup now that will
&gt; require a openejb service. Then deployment and it should be ready for
&gt; polishing.
&gt; 
&gt; Jacek
&gt; 


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Further actions for OSGi'fication</title>
<author><name>&quot;Jay D. McHugh&quot; &lt;jay@jnwd.net&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c4AFC5FF9.9@jnwd.net%3e"/>
<id>urn:uuid:%3c4AFC5FF9-9@jnwd-net%3e</id>
<updated>2009-11-12T19:20:25Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hello all,

I would like to help out with this if I am able.

Is there an up to date 'jumpstart' for getting OpenEJB running in Karaf?

Thanks,

Jay

Jacek Laskowski wrote:
&gt; Hi,
&gt; 
&gt; I have given much thought of what's necessary to be able to deploy an
&gt; ejb to openejb as osgi-based ejb container and access it from another
&gt; osgi bundle (a ejb client) and here is what I came up with.
&gt; 
&gt; We need a bundle - let's call it openejb-osgi-deployer - that will
&gt; listen to starting events so when an ejb (regular ejb jar file with
&gt; some manifest changes + META-INF/ejb-jar.xml) is started (aka
&gt; deployed) it will get noticed. The o-o-deployer will do what's
&gt; necessary from openejb's PoV and register OSGi services for each ejb
&gt; bean - both, the remote and local interface. That's the server's part.
&gt; 
&gt;&gt;&gt;From the client's PoV we'll need another JNDI initial context factory
&gt; - possibly in a openejb-osgi-client bundle - so instead of booting up
&gt; openejb (local initialcontext) or connecting to a port (remote
&gt; initialcontext) it will look up necessary interfaces in OSGi Service
&gt; Registry. All beans will get registered in the registry during
&gt; deployment via o-o-deployer as described earlier.
&gt; 
&gt; I'm doing a first prototype and am wondering where I should place the
&gt; interim work. I'm not going to touch any part of the codebase so it
&gt; ought to be as little disruptive to what we've got so far as possible
&gt; (if at all visible). I've been wondering if I should create a osgi
&gt; directory where the bundles will have their maven projects or pick
&gt; another directory?
&gt; 
&gt; I'm going to create a series of JIRA tasks so we can track the
&gt; progress of the openejb osgification.
&gt; 
&gt; Comments?
&gt; 
&gt; Jacek
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Propagating extra context information in remote EJB calls</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c3A59F45D-9DD0-4D8E-BD12-283EF0FC59CD@visi.com%3e"/>
<id>urn:uuid:%3c3A59F45D-9DD0-4D8E-BD12-283EF0FC59CD@visi-com%3e</id>
<updated>2009-11-10T18:27:32Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

On Nov 10, 2009, at 7:36 AM, Jack Cai wrote:

&gt; Are you suggesting that I shall write a servlet to
&gt; receive the client call and then forward to the openejb server?

Right, exactly.  On the client side you'd point to the servlet address.

The servlet could be added to an existing webapp for now.  For the  
long term it would be really great to have a servlet like the one I  
posted as a standard part of the Geronimo integration.

This is the one we use in the Tomcat integration:

  http://svn.apache.org/repos/asf/openejb/trunk/openejb3/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java

It doesn't do anything with the HTTP headers yet, but it could.

-David



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Propagating extra context information in remote EJB calls</title>
<author><name>Jack Cai &lt;greensight@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c5e7fd1eb0911100736rbd647c3j6cf418b5c268168b@mail.gmail.com%3e"/>
<id>urn:uuid:%3c5e7fd1eb0911100736rbd647c3j6cf418b5c268168b@mail-gmail-com%3e</id>
<updated>2009-11-10T15:36:56Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Since I'm using the OpenEJB that comes with Geronimo, which port shall I
connect to if http protocol is used? Still 4201 where the EJB daemon is
listening? I did try setting the url to something like "http://hostname:4201"
but didn't work out. Are you suggesting that I shall write a servlet to
receive the client call and then forward to the openejb server?

-Jack


On Sat, Nov 7, 2009 at 4:17 AM, David Blevins &lt;david.blevins@visi.com&gt;wrote:

&gt; On Oct 29, 2009, at 1:16 AM, Jack Cai wrote:
&gt;
&gt;  I want to propagate some context information in remote EJB calls, and
&gt;&gt; hopefully this can be done transparently, i.e., does not require code
&gt;&gt; change
&gt;&gt; to existing applications. Is this possible?
&gt;&gt;
&gt;&gt; I understand transaction and security context are already being propagated
&gt;&gt; as part of an EJB container impl. Can I just inject the extra data into
&gt;&gt; the
&gt;&gt; security context for example to do the trick?
&gt;&gt;
&gt;&gt; Appreciate some insight in this area!
&gt;&gt;
&gt;
&gt; The idea that comes to mind is modifying the HttpConnectionFactory to in
&gt; some way set headers into the HttpURLConnection.  In the 3.1.x codebase it's
&gt; actually possible to replace the HttpConnectionFactory on an existing
&gt; client:
&gt;
&gt;
&gt; http://mail-archives.apache.org/mod_mbox/openejb-users/200911.mbox/%3CB003CC7A-74F0-4E88-AB61-F8C7A80F7F3B@visi.com%3E
&gt;
&gt; On the server side if there was a Servlet like this:
&gt;
&gt;  import org.apache.openejb.loader.SystemInstance;
&gt;  import org.apache.openejb.server.ServiceException;
&gt;  import org.apache.openejb.server.ejbd.EjbServer;
&gt;
&gt;  import javax.servlet.ServletConfig;
&gt;  import javax.servlet.ServletException;
&gt;  import javax.servlet.ServletInputStream;
&gt;  import javax.servlet.ServletOutputStream;
&gt;  import javax.servlet.http.HttpServlet;
&gt;  import javax.servlet.http.HttpServletRequest;
&gt;  import javax.servlet.http.HttpServletResponse;
&gt;  import java.io.IOException;
&gt;
&gt;  public class ServerServlet extends HttpServlet {
&gt;      private EjbServer ejbServer;
&gt;
&gt;      public void init(ServletConfig config) {
&gt;          ejbServer = SystemInstance.get().getComponent(EjbServer.class);
&gt;      }
&gt;
&gt;      protected void service(HttpServletRequest request, HttpServletResponse
&gt; response) throws ServletException, IOException {
&gt;          ServletInputStream in = request.getInputStream();
&gt;          ServletOutputStream out = response.getOutputStream();
&gt;          try {
&gt;              ejbServer.service(in, out);
&gt;          } catch (ServiceException e) {
&gt;              throw new ServletException("ServerService error: " +
&gt; ejbServer.getClass().getName() + " -- " + e.getMessage(), e);
&gt;          }
&gt;      }
&gt;  }
&gt;
&gt;
&gt; You could get the headers and put them on a ThreadLocal or something.
&gt;
&gt; If the state is going to be the same on a per connection basis, then we can
&gt; maybe make some standard way to put the headers in the connection URI and
&gt; pull them out of that "params" map we create.
&gt;
&gt; We'd need some more creativity to make it really nice and easy for people.
&gt;  But this is a rough approach to get the ideas started.
&gt;
&gt; -David
&gt;
&gt;
&gt;
&gt;
&gt;
&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Propagating extra context information in remote EJB calls</title>
<author><name>Jack Cai &lt;greensight@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c5e7fd1eb0911100721u77d3bf9j2fc4b8117337da03@mail.gmail.com%3e"/>
<id>urn:uuid:%3c5e7fd1eb0911100721u77d3bf9j2fc4b8117337da03@mail-gmail-com%3e</id>
<updated>2009-11-10T15:21:04Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Thanks David! I did try CORBA interceptors and it works well with RMI/IIOP
calls, exactly what I want. Unfortunately OpenEJB does not use the IIOP
library that comes with JDK, so intercepting IIOP calls cannot intercept
remote OpenEJB calls.

What I want to propagate is actually a simple ID string.

-Jack

On Fri, Nov 6, 2009 at 10:43 AM, David Jencks &lt;david_jencks@yahoo.com&gt;wrote:

&gt; AFAIK openejb does not propagate transaction context.  I thought about it
&gt; for corba a long time ago but I have never found anyone who actually wants
&gt; distributed transactions so never made the time to implement it.
&gt;
&gt; With Corba I believe you can add client and server interceptors and tack
&gt; whatever info you want onto the request, but I found it a difficult
&gt; programming model to understand.
&gt;
&gt; What context information do you want to transmit?
&gt;
&gt; thanks
&gt; david jencks
&gt;
&gt;
&gt; On Oct 29, 2009, at 4:15 AM, Jacek Laskowski wrote:
&gt;
&gt;  On Thu, Oct 29, 2009 at 10:16 AM, Jack Cai &lt;greensight@gmail.com&gt; wrote:
&gt;&gt;
&gt;&gt;  1. At the client side, intercept the client call before it's sent out,
&gt;&gt;&gt; and
&gt;&gt;&gt; attach some extra context information with the call;
&gt;&gt;&gt; 2. At the server side, intercept the business method call before the
&gt;&gt;&gt; method
&gt;&gt;&gt; is actually executed, so that I can retrieve the extra context
&gt;&gt;&gt; information
&gt;&gt;&gt; coming with the call and set it into the server thread's context.
&gt;&gt;&gt;
&gt;&gt;&gt; I need to transparently do this for all EJBs. I was hoping I could do the
&gt;&gt;&gt; trick only once in the code, instead of having to take care of all EJBs
&gt;&gt;&gt; (e.g., use AOP to specify to intecept each invidiual remote interface).
&gt;&gt;&gt;
&gt;&gt;&gt; So in a word, I guess this is pretty much the same as how
&gt;&gt;&gt; transaction/security context gets propagated today. Does this make more
&gt;&gt;&gt; sense now?
&gt;&gt;&gt;
&gt;&gt;
&gt;&gt; Nope :] I still don't know what exactly you'd like to add to a call.
&gt;&gt; Yet, you're right that OpenEJB adds some additional data for security
&gt;&gt; and tx mgmt, but I don't think it was exposed for public consumption.
&gt;&gt;
&gt;&gt; Jacek
&gt;&gt;
&gt;&gt; --
&gt;&gt; Jacek Laskowski
&gt;&gt; Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl
&gt;&gt;
&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Maven Quickstart Archetypes</title>
<author><name>Jonathan Gallimore &lt;jonathan.gallimore@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c8a884a800911080403p2ddefd56k3ca5dc969dca220c@mail.gmail.com%3e"/>
<id>urn:uuid:%3c8a884a800911080403p2ddefd56k3ca5dc969dca220c@mail-gmail-com%3e</id>
<updated>2009-11-08T12:03:49Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hi Quintin,

I think my quickstart archetype will do everything you're after - it's
gives you a sample ejb and test using the embedded container with all
the dependencies.

If you give it a go, I'd love to know how you get on and if there's
anything else you'd like to see in there - I'd quite like to get it
working with your new test runner.


Jon

On Saturday, November 7, 2009, Quintin Beukes &lt;quintin@skywalk.co.za&gt; wrote:
&gt; Hey,
&gt;
&gt; A generic archetypes for only OpenEJB would be really useful. Just one for
&gt; an OpenEJB embedded client - where you get a sample EJB, the dependencies
&gt; and a unit test that loads up the embedded container. Many times i find
&gt; myself just wanting to create a quick project for trying/testing something.
&gt; Such an archetype would save a lot of time.
&gt;
&gt; I've never done this, so the source code in quickstart.zip. Does that
&gt; contain everything I would need to make such an archetype?
&gt;
&gt; Quintin Beukes
&gt;
&gt;
&gt; On Fri, Nov 6, 2009 at 2:09 AM, Jonathan Gallimore &lt;
&gt; jonathan.gallimore@gmail.com&gt; wrote:
&gt;
&gt;&gt; Hi All,
&gt;&gt;
&gt;&gt; I don't know if anyone will find this useful, but I've been playing around
&gt;&gt; a
&gt;&gt; bit with Maven Archetypes, and I created a couple of quickstart archetypes
&gt;&gt; for OpenEJB. One creates a simple EJB project, complete with a simple
&gt;&gt; stateless bean, a unit test, includes all the necessary dependencies and
&gt;&gt; will add the right Eclipse WTP configuration to work with the OpenEJB
&gt;&gt; Eclipse Plugin. The other does the same for a complete EAR project. The
&gt;&gt; latter still needs a bit of work (and I'd quite like to add the functional
&gt;&gt; testing stuff I wrote about here:
&gt;&gt;
&gt;&gt; http://openejb.apache.org/functional-testing-with-openejb-jetty-and-selenium.html
&gt;&gt; )
&gt;&gt; but I thought I'd post them up in case anyone had any comments.
&gt;&gt;
&gt;&gt; Currently I've deployed a mini-repository on my website with the necessary
&gt;&gt; stuff, and you can generate a project by doing the following:
&gt;&gt;
&gt;&gt; $ mvn -DarchetypeCatalog=http://jrg.me.uk/repository/-DarchetypeRepository=
&gt;&gt; http://jrg.me.uk/repository/ archetype:generate (the trailing / on the URL
&gt;&gt; is necessary for some reason)
&gt;&gt;
&gt;&gt; [INFO] Scanning for projects...
&gt;&gt; [INFO] Searching repository for plugin with prefix: 'archetype'.
&gt;&gt; [INFO]
&gt;&gt; ------------------------------------------------------------------------
&gt;&gt; [INFO] Building Maven Default Project
&gt;&gt; [INFO]    task-segment: [archetype:generate] (aggregator-style)
&gt;&gt; [INFO]
&gt;&gt; ------------------------------------------------------------------------
&gt;&gt; [INFO] Preparing archetype:generate
&gt;&gt; [INFO] No goals needed for project - skipping
&gt;&gt; [INFO] Setting property: classpath.resource.loader.class =&gt;
&gt;&gt; 'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
&gt;&gt; [INFO] Setting property: velocimacro.messages.on =&gt; 'false'.
&gt;&gt; [INFO] Setting property: resource.loader =&gt; 'classpath'.
&gt;&gt; [INFO] Setting property: resource.manager.logwhenfound =&gt; 'false'.
&gt;&gt; [INFO] [archetype:generate]
&gt;&gt; [INFO] Generating project in Interactive mode
&gt;&gt; [INFO] No archetype defined. Using maven-archetype-quickstart
&gt;&gt; (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
&gt;&gt; Choose archetype:
&gt;&gt; 1: http://jrg.me.uk/repository/ -&gt; maven-openejb-quickstart
&gt;&gt; (maven-openejb-quickstart)
&gt;&gt; 2: http://jrg.me.uk/repository/ -&gt; maven-openejb-quickstart-ear
&gt;&gt; (maven-openejb-quickstart-ear)
&gt;&gt; Choose a number:  (1/2):
&gt;&gt;
&gt;&gt; Once you've followed the wizard, you should be able to cd to the newly
&gt;&gt; created project, and run:
&gt;&gt;
&gt;&gt; $ mvn install eclipse:eclipse
&gt;&gt;
&gt;&gt; This should compile everything, run the tests and create an Eclipse project
&gt;&gt; ready to be imported to your workspace.
&gt;&gt;
&gt;&gt; I've put some source code up here: http://jrg.me.uk/assets/quickstart.zip-
&gt;&gt; I'm more than happy to check it into SVN if anyone thinks its useful. Any
&gt;&gt; comments will be gratefully received.
&gt;&gt;
&gt;&gt; Cheers,
&gt;&gt;
&gt;&gt; Jon
&gt;&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: More fine grained undeploy (Fwd: Override Porvider property via	system properties)</title>
<author><name>Quintin Beukes &lt;quintin@skywalk.co.za&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1f3854d50911070407n6a3730f1o5e8c056bd1279fa7@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1f3854d50911070407n6a3730f1o5e8c056bd1279fa7@mail-gmail-com%3e</id>
<updated>2009-11-07T12:07:51Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
That does explain something I've been experiencing. I've been meaning to
investigate it, as I thought it was a bug :&gt;

Quintin Beukes


On Wed, Nov 4, 2009 at 1:59 AM, David Blevins &lt;david.blevins@visi.com&gt;wrote:

&gt; Just a side note if someone is looking for something to work on.
&gt;
&gt; When an application fails to deploy, we don't really know how much work
&gt; we've done in the assembler.creatApplication phase, so as a result we try
&gt; and undo everything.  That of course results in a lot of exceptions saying
&gt; that we couldn't cleanly undeploy the application.  Notice how many items
&gt; are in the undeploy exception before we finally get to the real exception
&gt; which is this:
&gt;
&gt; ERROR - Application could not be deployed:  classpath.ear
&gt; org.apache.openejb.OpenEJBException: Creating application failed:
&gt; classpath.ear: java.lang.ClassNotFoundException:
&gt; org.hibernate.ejb.HibernatePersistence:
&gt; org.hibernate.ejb.HibernatePersistence
&gt;   at
&gt;
&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:666)
&gt;   at
&gt;
&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;   at
&gt;
&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;   at
&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;
&gt;
&gt; We could do something simple and put an object on the thread in the
&gt; createApplication method that records the steps we've taken; maybe stuff it
&gt; full of enum values -- or even better, just remember the last enum value as
&gt; there is an order to them and we could assume all previous steps were done.
&gt;  Then in destroyApplication we can check for it and use it to only know how
&gt; far to go in our destroy logic.
&gt;
&gt; Added a JIRA for it:  https://issues.apache.org/jira/browse/OPENEJB-1101
&gt;
&gt;
&gt; -David
&gt;
&gt;
&gt; Begin forwarded message:
&gt;
&gt;  Resent-From: &lt;dblevins@visi.com&gt;
&gt;&gt; From: El Arbi Aboussoror &lt;aboussoror@gmail.com&gt;
&gt;&gt; Date: November 3, 2009 1:55:18 PM PST
&gt;&gt; To: users@openejb.apache.org
&gt;&gt; Subject: Re: Override Porvider property via system properties
&gt;&gt; Reply-To: users@openejb.apache.org
&gt;&gt;
&gt;&gt; I've 2 decriptors: persistence.xml and test.persistence.xml
&gt;&gt; In the first one the provider is set as follow:
&gt;&gt;   &lt;persistence-unit name="educaPU"&gt;
&gt;&gt;       &lt;provider&gt;org.hibernate.ejb.HibernatePersistence&lt;/provider&gt;
&gt;&gt; And in the 2nd one:
&gt;&gt;   &lt;persistence-unit name="educaPU"&gt;
&gt;&gt;   &lt;provider&gt;org.eclipse.persistence.jpa.PersistenceProvider&lt;/provider&gt;
&gt;&gt;
&gt;&gt; In the jndi.properties I put:
&gt;&gt; openejb.altdd.prefix=test
&gt;&gt; openejb.deployments.classpath.filter.descriptors=true
&gt;&gt; openejb.deployments.classpath.include=.*/Educa-serveur/build/classes/
&gt;&gt; openejb.deployments.classpath.exclude=.*
&gt;&gt; openejb.jndiname.format = {ejbName}/{interfaceType.annotationName}
&gt;&gt; openejb.descriptors.output = true
&gt;&gt; openejb.validation.output.level = verbose
&gt;&gt;
&gt;&gt;
&gt;&gt; And this is the result (It doesn't work):
&gt;&gt;
&gt;&gt; DEBUG - Using default 'openejb.nobanner=true'
&gt;&gt; Apache OpenEJB 3.1.2    build: 20091010-03:11
&gt;&gt; http://openejb.apache.org/
&gt;&gt; INFO - openejb.home = G:\data\eclipse\workspace_0\Educa-serveur-test
&gt;&gt; INFO - openejb.base = G:\data\eclipse\workspace_0\Educa-serveur-test
&gt;&gt; DEBUG - Using default
&gt;&gt; 'openejb.assembler=org.apache.openejb.assembler.classic.Assembler'
&gt;&gt; DEBUG - Instantiating assembler class
&gt;&gt; org.apache.openejb.assembler.classic.Assembler
&gt;&gt; DEBUG - Using default 'openejb.jndiname.failoncollision=true'
&gt;&gt; DEBUG - Using default
&gt;&gt; 'openejb.configurator=org.apache.openejb.config.ConfigurationFactory'
&gt;&gt; DEBUG - Using default 'openejb.validation.skip=false'
&gt;&gt; DEBUG - Using default 'openejb.deploymentId.format={ejbName}'
&gt;&gt; DEBUG - Using default 'openejb.debuggable-vm-hackery=false'
&gt;&gt; DEBUG - Using default 'openejb.webservices.enabled=true'
&gt;&gt; DEBUG - Using default 'openejb.vendor.config=ALL'  Possible values are:
&gt;&gt; geronimo, glassfish, jboss, weblogic or NONE or ALL
&gt;&gt; DEBUG - Using default
&gt;&gt; 'openejb.provider.default=org.apache.openejb.embedded'
&gt;&gt; INFO - Configuring Service(id=Default Security Service,
&gt;&gt; type=SecurityService, provider-id=Default Security Service)
&gt;&gt; INFO - Configuring Service(id=Default Transaction Manager,
&gt;&gt; type=TransactionManager, provider-id=Default Transaction Manager)
&gt;&gt; INFO - Configuring Service(id=educaDatabase, type=Resource,
&gt;&gt; provider-id=Default JDBC Database)
&gt;&gt; DEBUG - Override [Password=&lt;hidden&gt;]
&gt;&gt; DEBUG - Override [JdbcUrl=jdbc:oracle:thin:@localhost:1521:xe]
&gt;&gt; DEBUG - Override [UserName=system]
&gt;&gt; DEBUG - Override [JdbcDriver=oracle.jdbc.OracleDriver]
&gt;&gt; DEBUG - Using default 'openejb.deployments.classpath=true'
&gt;&gt; INFO - Using
&gt;&gt; 'openejb.deployments.classpath.include=.*/Educa-serveur/build/classes/'
&gt;&gt; INFO - Using 'openejb.deployments.classpath.exclude=.*'
&gt;&gt; DEBUG - Using default
&gt;&gt; 'openejb.deployments.classpath.require.descriptor=false'
&gt;&gt; INFO - Using 'openejb.deployments.classpath.filter.descriptors=true'
&gt;&gt; DEBUG - Using default
&gt;&gt; 'openejb.deployments.classpath.filter.systemapps=true'
&gt;&gt; DEBUG - Inspecting classpath for applications: 1 urls.
&gt;&gt; INFO - Found EjbModule in classpath:
&gt;&gt; G:\data\eclipse\workspace_0\Educa-serveur\build\classes
&gt;&gt; DEBUG - URLs after filtering: 10
&gt;&gt; DEBUG - Annotations path:
&gt;&gt; file:/G:/data/eclipse/workspace_0/Educa-serveur/build/classes/
&gt;&gt; DEBUG - Searched 1 classpath urls in 35 milliseconds.  Average 35
&gt;&gt; milliseconds per url.
&gt;&gt; DEBUG - Using default 'openejb.deployments.classpath.ear=true'
&gt;&gt; INFO - Beginning load:
&gt;&gt; G:\data\eclipse\workspace_0\Educa-serveur\build\classes
&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible values
&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible values
&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt; INFO - Configuring enterprise application: classpath.ear
&gt;&gt; DEBUG - No ejb-jar.xml found assuming annotated beans present:
&gt;&gt; classpath.ear, module: classes
&gt;&gt; DEBUG - Searching for inherited application exceptions (see OPENEJB-980) -
&gt;&gt; it doesn't care whether inherited is true/false
&gt;&gt; DEBUG - ...handling class ma.orca.educa.exception.ValidationException
&gt;&gt; DEBUG - ...adding class ma.orca.educa.exception.ValidationException with
&gt;&gt; rollback=true
&gt;&gt; INFO - Configuring Service(id=Default Stateless Container, type=Container,
&gt;&gt; provider-id=Default Stateless Container)
&gt;&gt; INFO - Auto-creating a container for bean AnnuaireSA:
&gt;&gt; Container(type=STATELESS, id=Default Stateless Container)
&gt;&gt; INFO - Configuring PersistenceUnit(name=educaPU,
&gt;&gt; provider=org.hibernate.ejb.HibernatePersistence)
&gt;&gt; DEBUG - raw &lt;jta-data-source&gt;java:/OracleDS&lt;/jta-datasource&gt;
&gt;&gt; DEBUG - raw &lt;non-jta-data-source&gt;null&lt;/non-jta-datasource&gt;
&gt;&gt; DEBUG - normalized &lt;jta-data-source&gt;java:/OracleDS&lt;/jta-datasource&gt;
&gt;&gt; DEBUG - normalized &lt;non-jta-data-source&gt;null&lt;/non-jta-datasource&gt;
&gt;&gt; DEBUG - Available DataSources
&gt;&gt; DEBUG - DataSource(name=educaDatabase, JtaManaged=true)
&gt;&gt; INFO - Auto-creating a Resource with id 'educaDatabaseNonJta' of type
&gt;&gt; 'DataSource for 'educaPU'.
&gt;&gt; INFO - Configuring Service(id=educaDatabaseNonJta, type=Resource,
&gt;&gt; provider-id=educaDatabase)
&gt;&gt; INFO - Adjusting PersistenceUnit educaPU &lt;jta-data-source&gt; to Resource ID
&gt;&gt; 'educaDatabase' from 'java:/OracleDS'
&gt;&gt; INFO - Adjusting PersistenceUnit educaPU &lt;non-jta-data-source&gt; to Resource
&gt;&gt; ID 'educaDatabaseNonJta' from 'null'
&gt;&gt; INFO - Using 'openejb.descriptors.output=true'
&gt;&gt; INFO - Using 'openejb.descriptors.output=true'
&gt;&gt; INFO - Dumping Generated ejb-jar.xml to:
&gt;&gt;
&gt;&gt; C:\Users\ELARBI~1\AppData\Local\Temp\ejb-jar-5983584300064536573classes.xml
&gt;&gt; INFO - Dumping Generated openejb-jar.xml to:
&gt;&gt;
&gt;&gt; C:\Users\ELARBI~1\AppData\Local\Temp\openejb-jar-3542212472572389109classes.xml
&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;
&gt;&gt; eclipselink.target-database=org.eclipse.persistence.platform.database.oracle.OraclePlatform
&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt; non-jta-data-source=educaDatabase
&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt; jta-data-source=educaDatabase
&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt; eclipselink.ddl-generation=drop-and-create-tables
&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;
&gt;&gt; eclipselink.application-location=G:/data/eclipse/workspace_0/Educa-serveur-test/scriptDB
&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt; eclipselink.ddl-generation.output-mode=both
&gt;&gt; DEBUG - Adjusting PersistenceUnit(name=educaPU) property to
&gt;&gt;
&gt;&gt; hibernate.transaction.manager_lookup_class=org.apache.openejb.hibernate.TransactionManagerLookup
&gt;&gt; INFO - Using 'openejb.validation.output.level=VERBOSE'
&gt;&gt; INFO - Enterprise application "classpath.ear" loaded.
&gt;&gt; INFO - Assembling app: classpath.ear
&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible values
&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt; INFO - Undeploying app: classpath.ear
&gt;&gt; DEBUG - App failing deployment may not have undeployed cleanly:
&gt;&gt; classpath.ear
&gt;&gt; org.apache.openejb.UndeployException: Failed undeploying application:
&gt;&gt; id=classpath.ear
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:802)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: AnnuaireSA
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: InsriptionSA
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: ConfigurationCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: AnnuaireCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: RessourceCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: FiliereCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: GroupeCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: NiveauCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: PieceCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: PieceJustificativeCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: SpecialiteCRUD
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: DocumentAdministratifSF
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: deployment not found: InscriptionSF
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Nested caused by:
&gt;&gt; java.lang.Exception: persistence-unit: educaPU 495723823: Name
&gt;&gt; "openejb/PersistenceUnit/educaPU 495723823" not found.
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:893)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Caused by: javax.naming.NameNotFoundException: Name
&gt;&gt; "openejb/PersistenceUnit/educaPU 495723823" not found.
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:193)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:150)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:886)
&gt;&gt;   ... 37 more
&gt;&gt; ERROR - Application could not be deployed:  classpath.ear
&gt;&gt; org.apache.openejb.OpenEJBException: Creating application failed:
&gt;&gt; classpath.ear: java.lang.ClassNotFoundException:
&gt;&gt; org.hibernate.ejb.HibernatePersistence:
&gt;&gt; org.hibernate.ejb.HibernatePersistence
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:666)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
&gt;&gt;   at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;   at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;   at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;   at
&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;   at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;   at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; ma.orca.educa.service.crud.configuration.ConfigurationCRUDTest.setUp(ConfigurationCRUDTest.java:21)
&gt;&gt;   at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;   at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;   at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;   at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;   at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;   at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
&gt;&gt; Caused by: org.apache.openejb.OpenEJBException:
&gt;&gt; java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence:
&gt;&gt; org.hibernate.ejb.HibernatePersistence
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:494)
&gt;&gt;   ... 36 more
&gt;&gt; Caused by: java.lang.ClassNotFoundException:
&gt;&gt; org.hibernate.ejb.HibernatePersistence
&gt;&gt;   at java.net.URLClassLoader$1.run(Unknown Source)
&gt;&gt;   at java.security.AccessController.doPrivileged(Native Method)
&gt;&gt;   at java.net.URLClassLoader.findClass(Unknown Source)
&gt;&gt;   at java.lang.ClassLoader.loadClass(Unknown Source)
&gt;&gt;   at java.lang.ClassLoader.loadClass(Unknown Source)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.PersistenceBuilder.createEntityManagerFactory(PersistenceBuilder.java:178)
&gt;&gt;   at
&gt;&gt;
&gt;&gt; org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:489)
&gt;&gt;   ... 36 more
&gt;&gt; DEBUG - Containers        : 1
&gt;&gt; DEBUG - Type        Container ID
&gt;&gt; DEBUG -    STATELESS   Default Stateless Container
&gt;&gt; DEBUG - Deployments       : 0
&gt;&gt; DEBUG - SecurityService   :
&gt;&gt; org.apache.openejb.core.security.SecurityServiceImpl
&gt;&gt; DEBUG - TransactionManager:
&gt;&gt; org.apache.geronimo.transaction.manager.GeronimoTransactionManager
&gt;&gt; DEBUG - OpenEJB Container System ready.
&gt;&gt;
&gt;&gt;
&gt;&gt; 2009/11/3 David Blevins &lt;david.blevins@visi.com&gt;
&gt;&gt;
&gt;&gt;
&gt;&gt;&gt; On Nov 3, 2009, at 10:08 AM, hypnosat7 wrote:
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt;  Is it working with the persistence.xml file ?
&gt;&gt;&gt;&gt; I mean if I have a 'test.persistence.xml' file in my test project, will
&gt;&gt;&gt;&gt; this
&gt;&gt;&gt;&gt; file 'override' the persistence.xml in my production project ?
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt; It *should* for the version you are using (3.1.2).  There was a bug in
&gt;&gt;&gt; 3.1.1 that prevented it from working for persistence.xml files
&gt;&gt;&gt; specifically.
&gt;&gt;&gt;
&gt;&gt;&gt; If it isn't working, post the debug log output and we'll take a look.
&gt;&gt;&gt;
&gt;&gt;&gt; -David
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt; David Blevins wrote:
&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Don't know if you've gotten passed this yet, but this feature should
&gt;&gt;&gt;&gt;&gt; help with this:
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; http://openejb.apache.org/3.0/alternate-descriptors.html
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Seems your situation falls into the "catch all" we mention at the top
&gt;&gt;&gt;&gt;&gt; of that page.  The override support is really aimed at just tweaking
&gt;&gt;&gt;&gt;&gt; properties of your provider.  But in your case you want a completely
&gt;&gt;&gt;&gt;&gt; different provider and a completely different set of properties, so
&gt;&gt;&gt;&gt;&gt; the AltDD support is probably best.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; -David
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; On Oct 23, 2009, at 10:02 AM, hypnosat7 wrote:
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;  Yes I want to use a different provider for tests than I do for
&gt;&gt;&gt;&gt;&gt;&gt; production. In
&gt;&gt;&gt;&gt;&gt;&gt; fact I have this persistence.xml for producation:
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; &lt;?xml version="1.0" encoding="UTF-8"?&gt;
&gt;&gt;&gt;&gt;&gt;&gt; &lt;persistence version="1.0"
&gt;&gt;&gt;&gt;&gt;&gt;      xmlns="http://java.sun.com/xml/ns/persistence"
&gt;&gt;&gt;&gt;&gt;&gt; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
&gt;&gt;&gt;&gt;&gt;&gt;      xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
&gt;&gt;&gt;&gt;&gt;&gt; http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"&gt;
&gt;&gt;&gt;&gt;&gt;&gt;      &lt;persistence-unit name="educaPU"&gt;
&gt;&gt;&gt;&gt;&gt;&gt;              &lt;!--
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; &lt;provider&gt;org.eclipse.persistence.jpa.PersistenceProvider&lt;/provider&gt;
&gt;&gt;&gt;&gt;&gt;&gt;               --&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; &lt;provider&gt;org.hibernate.ejb.HibernatePersistence&lt;/provider&gt;
&gt;&gt;&gt;&gt;&gt;&gt;              &lt;jta-data-source&gt;java:/OracleDS&lt;/jta-data-source&gt;
&gt;&gt;&gt;&gt;&gt;&gt;              &lt;properties&gt;
&gt;&gt;&gt;&gt;&gt;&gt;                      &lt;property name="hibernate.hbm2ddl.auto"
&gt;&gt;&gt;&gt;&gt;&gt; value="update" /&gt;
&gt;&gt;&gt;&gt;&gt;&gt;                      &lt;property name="hibernate.dialect"
&gt;&gt;&gt;&gt;&gt;&gt; value="org.hibernate.dialect.Oracle10gDialect" /&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;              &lt;/properties&gt;
&gt;&gt;&gt;&gt;&gt;&gt;      &lt;/persistence-unit&gt;
&gt;&gt;&gt;&gt;&gt;&gt; &lt;/persistence&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; And to override the Hibernate provider I launch my test from eclipse
&gt;&gt;&gt;&gt;&gt;&gt; with
&gt;&gt;&gt;&gt;&gt;&gt; "Run Configurations ..." and then I specify in the "Program
&gt;&gt;&gt;&gt;&gt;&gt; arguments" text
&gt;&gt;&gt;&gt;&gt;&gt; area :
&gt;&gt;&gt;&gt;&gt;&gt; "-
&gt;&gt;&gt;&gt;&gt;&gt; Djavax
&gt;&gt;&gt;&gt;&gt;&gt; .persistence.provider=org.eclipse.persistence.jpa.PersistenceProvider"
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; And this is the error:
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.nobanner=true'
&gt;&gt;&gt;&gt;&gt;&gt; Apache OpenEJB 3.1.2    build: 20091010-03:11
&gt;&gt;&gt;&gt;&gt;&gt; http://openejb.apache.org/
&gt;&gt;&gt;&gt;&gt;&gt; INFO - openejb.home = G:\data\eclipse\workspace_0\Educa-serveur-test
&gt;&gt;&gt;&gt;&gt;&gt; INFO - openejb.base = G:\data\eclipse\workspace_0\Educa-serveur-test
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.assembler=org.apache.openejb.assembler.classic.Assembler'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Instantiating assembler class
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.jndiname.failoncollision=true'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.configurator=org.apache.openejb.config.ConfigurationFactory'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.validation.skip=false'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.deploymentId.format={ejbName}'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.debuggable-vm-hackery=false'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.webservices.enabled=true'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.vendor.config=ALL'  Possible values
&gt;&gt;&gt;&gt;&gt;&gt; are:
&gt;&gt;&gt;&gt;&gt;&gt; geronimo, glassfish, jboss, weblogic or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.provider.default=org.apache.openejb.embedded'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring Service(id=Default Security Service,
&gt;&gt;&gt;&gt;&gt;&gt; type=SecurityService, provider-id=Default Security Service)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring Service(id=Default Transaction Manager,
&gt;&gt;&gt;&gt;&gt;&gt; type=TransactionManager, provider-id=Default Transaction Manager)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring Service(id=educaDatabase, type=Resource,
&gt;&gt;&gt;&gt;&gt;&gt; provider-id=Default JDBC Database)
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Override
&gt;&gt;&gt;&gt;&gt;&gt; [JdbcUrl=jdbc:hsqldb:file:G:/database/hsql/hsqldb_1_8_0_10/hsqldb/
&gt;&gt;&gt;&gt;&gt;&gt; data/educadb]
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Override [UserName=sa]
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Override [JdbcDriver=org.hsqldb.jdbcDriver]
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.deployments.classpath=true'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.deployments.classpath.include='
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Using
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.deployments.classpath.exclude="file:///G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/
&gt;&gt;&gt;&gt;&gt;&gt; jboss-5.1.0.GA/.*
&gt;&gt;&gt;&gt;&gt;&gt; "'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.deployments.classpath.require.descriptor=false'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.deployments.classpath.filter.descriptors=false'
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default
&gt;&gt;&gt;&gt;&gt;&gt; 'openejb.deployments.classpath.filter.systemapps=true'
&gt;&gt;&gt;&gt;&gt;&gt; WARN - Inspecting classpath for applications: 78 urls.
&gt;&gt;&gt;&gt;&gt;&gt; WARN - ADJUST THE EXCLUDE/INCLUDE!!!.  Current settings:
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; openejb.deployments.classpath.exclude='"file:///G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/
&gt;&gt;&gt;&gt;&gt;&gt; jboss-5.1.0.GA/.*
&gt;&gt;&gt;&gt;&gt;&gt; "',
&gt;&gt;&gt;&gt;&gt;&gt; openejb.deployments.classpath.include=''
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found EjbModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\data\eclipse\workspace_0\Educa-serveur-test\bin
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found EjbModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\data\eclipse\workspace_0\Educa-serveur\build\classes
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found ClientModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\jboss\as\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\client
&gt;&gt;&gt;&gt;&gt;&gt; \javassist.jar
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found ClientModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\apache\openejb\openejb-3.1.2\openejb-3.1.2\lib\xml-
&gt;&gt;&gt;&gt;&gt;&gt; resolver-1.2.jar
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found ClientModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\jboss\as\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\client
&gt;&gt;&gt;&gt;&gt;&gt; \jboss-serialization.jar
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found ClientModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\jboss\as\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\client
&gt;&gt;&gt;&gt;&gt;&gt; \jboss-remoting.jar
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Found ClientModule in classpath:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\apache\openejb\openejb-3.1.2\openejb-3.1.2\lib
&gt;&gt;&gt;&gt;&gt;&gt; \serializer-2.7.1.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - URLs after filtering: 780
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-common-core.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jbosssx-as-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-srp-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-integration.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-mdr.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; file:/G:/data/eclipse/workspace_0/Educa-serveur-test/bin/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/quartz-1.5.2.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/plugins/
&gt;&gt;&gt;&gt;&gt;&gt; javax.persistence_1.99.0.v200906021518.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-deployers-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; file:/G:/data/eclipse/workspace_0/Educa-serveur/build/classes/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/plugins/
&gt;&gt;&gt;&gt;&gt;&gt; org.eclipse.persistence.asm_1.1.2.v20090612-r4475.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-security-spi.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/slf4j-api.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-aspect-jdk50-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-proxy-impl-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/xbean-finder-shaded-3.6.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-deployers-core-spi.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-system-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ha-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-security-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/neethi-2.0.4.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/commons-logging.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-logging-spi.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/javassist.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jbosssx-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/hibernate-annotations.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jmx-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jbossall-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-logging-jdk.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/
&gt;&gt;&gt;&gt;&gt;&gt; configuration/org.eclipse.osgi/bundles/329/1/.cp/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-j2se.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-logging-log4j.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-proxy-clustered-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-deployment.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/log4j.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-iiop-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/slf4j-api-1.3.1.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-ext-api.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/plugins/
&gt;&gt;&gt;&gt;&gt;&gt; org.eclipse.persistence.jpa_1.1.2.v20090612-r4475.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/plugins/
&gt;&gt;&gt;&gt;&gt;&gt; org.eclipse.persistence.antlr_1.1.2.v20090612-r4475.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/ejb3-persistence.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-core-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-appclient.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/xml-resolver-1.2.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-messaging-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-serialization.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/slf4j-jboss-logging.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jbossjts-integration.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-javaee.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jnp-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jbossjts.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/commons-dbcp-all-1.3-r699049.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/trove.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-proxy-spi-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/XmlSchema-1.4.2.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-deployers-client-spi.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/wss4j-1.5.4.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jmx-invoker-adaptor-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ejb3-common-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/slf4j-jdk14-1.3.1.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-ha-legacy-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/plugins/
&gt;&gt;&gt;&gt;&gt;&gt; org.junit_3.8.2.v20090203-1005/junit.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/plugins/
&gt;&gt;&gt;&gt;&gt;&gt; org.eclipse.persistence.core_1.1.2.v20090612-r4475.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/saaj-impl-1.3.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/opensaml-1.1.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; file:/G:/data/eclipse/eclipse-jee-galileo-win32/eclipse/
&gt;&gt;&gt;&gt;&gt;&gt; configuration/org.eclipse.osgi/bundles/328/1/.cp/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/bcprov-jdk15-140.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/xmlsec-1.4.0.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-system-jmx-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-remoting.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-jsr77-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/xbean-asm-shaded-3.6.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-aop-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/apache/openejb/openejb-3.1.2/openejb-3.1.2/
&gt;&gt;&gt;&gt;&gt;&gt; lib/serializer-2.7.1.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jboss-deployers-core.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/xmlsec.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Annotations path:
&gt;&gt;&gt;&gt;&gt;&gt; jar:file:/G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/jboss-5.1.0.GA/
&gt;&gt;&gt;&gt;&gt;&gt; client/jbosscx-client.jar!/
&gt;&gt;&gt;&gt;&gt;&gt; WARN - Searched 78 classpath urls in 7013 milliseconds.  Average 89
&gt;&gt;&gt;&gt;&gt;&gt; milliseconds per url.
&gt;&gt;&gt;&gt;&gt;&gt; WARN - Consider adjusting your openejb.deployments.classpath.exclude
&gt;&gt;&gt;&gt;&gt;&gt; and
&gt;&gt;&gt;&gt;&gt;&gt; openejb.deployments.classpath.include settings.  Current settings:
&gt;&gt;&gt;&gt;&gt;&gt; exclude='"file:///G:/repository/jboss/as/jboss-5.1.0.GA-jdk6/
&gt;&gt;&gt;&gt;&gt;&gt; jboss-5.1.0.GA/.*
&gt;&gt;&gt;&gt;&gt;&gt; "',
&gt;&gt;&gt;&gt;&gt;&gt; include=''
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.deployments.classpath.ear=true'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load: G:\data\eclipse\workspace_0\Educa-serveur-test
&gt;&gt;&gt;&gt;&gt;&gt; \bin
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load:
&gt;&gt;&gt;&gt;&gt;&gt; G:\data\eclipse\workspace_0\Educa-serveur\build\classes
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\jboss\as\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\client
&gt;&gt;&gt;&gt;&gt;&gt; \javassist.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\apache\openejb\openejb-3.1.2\openejb-3.1.2\lib\xml-
&gt;&gt;&gt;&gt;&gt;&gt; resolver-1.2.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\jboss\as\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\client
&gt;&gt;&gt;&gt;&gt;&gt; \jboss-serialization.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\jboss\as\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\client
&gt;&gt;&gt;&gt;&gt;&gt; \jboss-remoting.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Beginning load:
&gt;&gt;&gt;&gt;&gt;&gt; G:\repository\apache\openejb\openejb-3.1.2\openejb-3.1.2\lib
&gt;&gt;&gt;&gt;&gt;&gt; \serializer-2.7.1.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring enterprise application: classpath.ear
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - No ejb-jar.xml found assuming annotated beans present:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear, module: classes
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - No application-client.xml found assuming annotations present:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear, module: javassist.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - No application-client.xml found assuming annotations present:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear, module: xml-resolver-1.2.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - No application-client.xml found assuming annotations present:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear, module: jboss-serialization.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - No application-client.xml found assuming annotations present:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear, module: jboss-remoting.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - No application-client.xml found assuming annotations present:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear, module: serializer-2.7.1.jar
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Searching for inherited application exceptions (see
&gt;&gt;&gt;&gt;&gt;&gt; OPENEJB-980) -
&gt;&gt;&gt;&gt;&gt;&gt; it doesn't care whether inherited is true/false
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Searching for inherited application exceptions (see
&gt;&gt;&gt;&gt;&gt;&gt; OPENEJB-980) -
&gt;&gt;&gt;&gt;&gt;&gt; it doesn't care whether inherited is true/false
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - ...handling class ma.orca.educa.exception.ValidationException
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - ...adding class ma.orca.educa.exception.ValidationException
&gt;&gt;&gt;&gt;&gt;&gt; with
&gt;&gt;&gt;&gt;&gt;&gt; rollback=true
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring Service(id=Default Stateless Container,
&gt;&gt;&gt;&gt;&gt;&gt; type=Container,
&gt;&gt;&gt;&gt;&gt;&gt; provider-id=Default Stateless Container)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Auto-creating a container for bean ConfigurationBean:
&gt;&gt;&gt;&gt;&gt;&gt; Container(type=STATELESS, id=Default Stateless Container)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring PersistenceUnit(name=Educa-serveur-test)
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - raw &lt;jta-data-source&gt;null&lt;/jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - raw &lt;non-jta-data-source&gt;null&lt;/non-jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - normalized &lt;jta-data-source&gt;null&lt;/jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - normalized &lt;non-jta-data-source&gt;null&lt;/non-jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Available DataSources
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - DataSource(name=educaDatabase, JtaManaged=true)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Auto-creating a Resource with id 'educaDatabaseNonJta' of type
&gt;&gt;&gt;&gt;&gt;&gt; 'DataSource for 'Educa-serveur-test'.
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring Service(id=educaDatabaseNonJta, type=Resource,
&gt;&gt;&gt;&gt;&gt;&gt; provider-id=educaDatabase)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Adjusting PersistenceUnit Educa-serveur-test &lt;jta-data-
&gt;&gt;&gt;&gt;&gt;&gt; source&gt; to
&gt;&gt;&gt;&gt;&gt;&gt; Resource ID 'educaDatabase' from 'null'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Adjusting PersistenceUnit Educa-serveur-test &lt;non-jta-data-
&gt;&gt;&gt;&gt;&gt;&gt; source&gt; to
&gt;&gt;&gt;&gt;&gt;&gt; Resource ID 'educaDatabaseNonJta' from 'null'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Configuring PersistenceUnit(name=educaPU,
&gt;&gt;&gt;&gt;&gt;&gt; provider=org.hibernate.ejb.HibernatePersistence)
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - raw &lt;jta-data-source&gt;java:/OracleDS&lt;/jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - raw &lt;non-jta-data-source&gt;null&lt;/non-jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - normalized &lt;jta-data-source&gt;java:/OracleDS&lt;/jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - normalized &lt;non-jta-data-source&gt;null&lt;/non-jta-datasource&gt;
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Available DataSources
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - DataSource(name=educaDatabase, JtaManaged=true)
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - DataSource(name=educaDatabaseNonJta, JtaManaged=false)
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Adjusting PersistenceUnit educaPU &lt;jta-data-source&gt; to
&gt;&gt;&gt;&gt;&gt;&gt; Resource ID
&gt;&gt;&gt;&gt;&gt;&gt; 'educaDatabase' from 'java:/OracleDS'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Adjusting PersistenceUnit educaPU &lt;non-jta-data-source&gt; to
&gt;&gt;&gt;&gt;&gt;&gt; Resource
&gt;&gt;&gt;&gt;&gt;&gt; ID 'educaDatabaseNonJta' from 'null'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Using 'openejb.descriptors.output=true'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Using 'openejb.descriptors.output=true'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Dumping Generated ejb-jar.xml to:
&gt;&gt;&gt;&gt;&gt;&gt; C:\Users\ELARBI~1\AppData\Local\Temp\ejb-
&gt;&gt;&gt;&gt;&gt;&gt; jar-4519594178483779556bin.xml
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Dumping Generated openejb-jar.xml to:
&gt;&gt;&gt;&gt;&gt;&gt; C:\Users\ELARBI~1\AppData\Local\Temp\openejb-
&gt;&gt;&gt;&gt;&gt;&gt; jar-2046724989127448680bin.xml
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Using 'openejb.descriptors.output=true'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Dumping Generated ejb-jar.xml to:
&gt;&gt;&gt;&gt;&gt;&gt; C:\Users\ELARBI~1\AppData\Local\Temp\ejb-
&gt;&gt;&gt;&gt;&gt;&gt; jar-7664296864725927732classes.xml
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Dumping Generated openejb-jar.xml to:
&gt;&gt;&gt;&gt;&gt;&gt; C:\Users\ELARBI~1\AppData\Local\Temp\openejb-
&gt;&gt;&gt;&gt;&gt;&gt; jar-1100372600686023701classes.xml
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;&gt;&gt;&gt;&gt; eclipselink.target-
&gt;&gt;&gt;&gt;&gt;&gt; database=org.eclipse.persistence.platform.database.HSQLPlatform
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;&gt;&gt;&gt;&gt; non-jta-data-source=educaDatabase
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;&gt;&gt;&gt;&gt; jta-data-source=educaDatabase
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;&gt;&gt;&gt;&gt; eclipselink.ddl-generation=drop-and-create-tables
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;&gt;&gt;&gt;&gt; eclipselink.application-location=G:/data/eclipse/workspace_0/Educa-
&gt;&gt;&gt;&gt;&gt;&gt; serveur-test/scriptDB
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adding persistence-unit educaPU property
&gt;&gt;&gt;&gt;&gt;&gt; eclipselink.ddl-generation.output-mode=both
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Adjusting PersistenceUnit(name=educaPU) property to
&gt;&gt;&gt;&gt;&gt;&gt; hibernate
&gt;&gt;&gt;&gt;&gt;&gt; .transaction
&gt;&gt;&gt;&gt;&gt;&gt; .manager_lookup_class
&gt;&gt;&gt;&gt;&gt;&gt; =org.apache.openejb.hibernate.TransactionManagerLookup
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Using 'openejb.validation.output.level=VERBOSE'
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Enterprise application "classpath.ear" loaded.
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Assembling app: classpath.ear
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; INFO - PersistenceUnit(name=Educa-serveur-test,
&gt;&gt;&gt;&gt;&gt;&gt; provider=org.apache.openjpa.persistence.PersistenceProviderImpl)
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
&gt;&gt;&gt;&gt;&gt;&gt; values
&gt;&gt;&gt;&gt;&gt;&gt; are: none, annotations, enums or NONE or ALL
&gt;&gt;&gt;&gt;&gt;&gt; ERROR - JAVA AGENT NOT INSTALLED. The JPA Persistence Provider
&gt;&gt;&gt;&gt;&gt;&gt; requested
&gt;&gt;&gt;&gt;&gt;&gt; installation of a ClassFileTransformer which requires a JavaAgent.
&gt;&gt;&gt;&gt;&gt;&gt; See
&gt;&gt;&gt;&gt;&gt;&gt; http://openejb.apache.org/3.0/javaagent.html
&gt;&gt;&gt;&gt;&gt;&gt; INFO - Undeploying app: classpath.ear
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - App failing deployment may not have undeployed cleanly:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.UndeployException: Failed undeploying application:
&gt;&gt;&gt;&gt;&gt;&gt; id=classpath.ear
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:802)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: ConfigurationBean
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: AnnuaireBean
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: RessourceBean
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: InscriptionBean
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: ScolariteBean
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: RessourceWS
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: deployment not found: ScolariteWS
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:820)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Nested caused by:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.Exception: persistence-unit: educaPU 495723823: Name
&gt;&gt;&gt;&gt;&gt;&gt; "openejb/PersistenceUnit/educaPU 495723823" not found.
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:893)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:662)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Caused by: javax.naming.NameNotFoundException: Name
&gt;&gt;&gt;&gt;&gt;&gt; "openejb/PersistenceUnit/educaPU 495723823" not found.
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:
&gt;&gt;&gt;&gt;&gt;&gt; 193)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:
&gt;&gt;&gt;&gt;&gt;&gt; 150)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.destroyApplication(Assembler.java:886)
&gt;&gt;&gt;&gt;&gt;&gt;      ... 33 more
&gt;&gt;&gt;&gt;&gt;&gt; ERROR - Application could not be deployed:  classpath.ear
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.OpenEJBException: Creating application failed:
&gt;&gt;&gt;&gt;&gt;&gt; classpath.ear: java.lang.ClassNotFoundException:
&gt;&gt;&gt;&gt;&gt;&gt; org.hibernate.ejb.HibernatePersistence:
&gt;&gt;&gt;&gt;&gt;&gt; org.hibernate.ejb.HibernatePersistence
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:666)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:449)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:
&gt;&gt;&gt;&gt;&gt;&gt; 279)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB$Instance.&lt;init&gt;(OpenEJB.java:137)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:286)
&gt;&gt;&gt;&gt;&gt;&gt;      at org.apache.openejb.OpenEJB.init(OpenEJB.java:265)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.reflect.Method.invoke(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:
&gt;&gt;&gt;&gt;&gt;&gt; 36)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .client
&gt;&gt;&gt;&gt;&gt;&gt; .LocalInitialContextFactory
&gt;&gt;&gt;&gt;&gt;&gt; .getInitialContext(LocalInitialContextFactory.java:42)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.spi.NamingManager.getInitialContext(Unknown
&gt;&gt;&gt;&gt;&gt;&gt; Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.init(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at javax.naming.InitialContext.&lt;init&gt;(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; ma.orca.educa.service.RessourceBeanTest.setUp(RessourceBeanTest.java:
&gt;&gt;&gt;&gt;&gt;&gt; 22)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.runBare(TestCase.java:128)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult$1.protect(TestResult.java:106)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.runProtected(TestResult.java:124)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestResult.run(TestResult.java:109)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestCase.run(TestCase.java:120)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.runTest(TestSuite.java:230)
&gt;&gt;&gt;&gt;&gt;&gt;      at junit.framework.TestSuite.run(TestSuite.java:225)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit
&gt;&gt;&gt;&gt;&gt;&gt; .runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal
&gt;&gt;&gt;&gt;&gt;&gt; .junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .eclipse
&gt;&gt;&gt;&gt;&gt;&gt; .jdt
&gt;&gt;&gt;&gt;&gt;&gt; .internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
&gt;&gt;&gt;&gt;&gt;&gt; 197)
&gt;&gt;&gt;&gt;&gt;&gt; Caused by: org.apache.openejb.OpenEJBException:
&gt;&gt;&gt;&gt;&gt;&gt; java.lang.ClassNotFoundException:
&gt;&gt;&gt;&gt;&gt;&gt; org.hibernate.ejb.HibernatePersistence:
&gt;&gt;&gt;&gt;&gt;&gt; org.hibernate.ejb.HibernatePersistence
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:494)
&gt;&gt;&gt;&gt;&gt;&gt;      ... 32 more
&gt;&gt;&gt;&gt;&gt;&gt; Caused by: java.lang.ClassNotFoundException:
&gt;&gt;&gt;&gt;&gt;&gt; org.hibernate.ejb.HibernatePersistence
&gt;&gt;&gt;&gt;&gt;&gt;      at java.net.URLClassLoader$1.run(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.security.AccessController.doPrivileged(Native Method)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.net.URLClassLoader.findClass(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.ClassLoader.loadClass(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at java.lang.ClassLoader.loadClass(Unknown Source)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler
&gt;&gt;&gt;&gt;&gt;&gt; .classic
&gt;&gt;&gt;&gt;&gt;&gt; .PersistenceBuilder
&gt;&gt;&gt;&gt;&gt;&gt; .createEntityManagerFactory(PersistenceBuilder.java:178)
&gt;&gt;&gt;&gt;&gt;&gt;      at
&gt;&gt;&gt;&gt;&gt;&gt; org
&gt;&gt;&gt;&gt;&gt;&gt; .apache
&gt;&gt;&gt;&gt;&gt;&gt; .openejb
&gt;&gt;&gt;&gt;&gt;&gt; .assembler.classic.Assembler.createApplication(Assembler.java:489)
&gt;&gt;&gt;&gt;&gt;&gt;      ... 32 more
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Containers        : 1
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Type        Container ID
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG -    STATELESS   Default Stateless Container
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - Deployments       : 0
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - SecurityService   :
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.openejb.core.security.SecurityServiceImpl
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - TransactionManager:
&gt;&gt;&gt;&gt;&gt;&gt; org.apache.geronimo.transaction.manager.GeronimoTransactionManager
&gt;&gt;&gt;&gt;&gt;&gt; DEBUG - OpenEJB Container System ready.
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; Quintin Beukes-2 wrote:
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Can you please paste the error you receive?
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt; I'm not sure how to override it, will have a look now. Though, what
&gt;&gt;&gt;&gt;&gt;&gt;&gt; are you trying to achieve with this? Maybe there is another way to
&gt;&gt;&gt;&gt;&gt;&gt;&gt; get
&gt;&gt;&gt;&gt;&gt;&gt;&gt; the same thing. I assume you're just trying to use a different
&gt;&gt;&gt;&gt;&gt;&gt;&gt; provider for tests than you do for production?
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Quintin Beukes
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt; On Fri, Oct 23, 2009 at 7:50 AM, hypnosat7 &lt;ablarbi@yahoo.fr&gt; wrote:
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Hello,
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; If I set the provider property in the persistence.xml of my EJB
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; project
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; in
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; works. But if I set the provider via system properties (to
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; override the
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; persistence.xml) my tests fail and the reason is that the data are
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; not
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; stored to the database.
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; So this is my persistence.xml:
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;?xml version="1.0" encoding="UTF-8"?&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;persistence version="1.0"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; xmlns="http://java.sun.com/xml/ns/persistence"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;persistence-unit name="educaPU"&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;    &lt;!--
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;    &lt;provider&gt;org.hibernate.ejb.HibernatePersistence&lt;/provider&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;     --&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;provider&gt;org.eclipse.persistence.jpa.PersistenceProvider&lt;/
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; provider&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;    &lt;jta-data-source&gt;java:/OracleDS&lt;/jta-data-source&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;    &lt;properties&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;        &lt;property name="hibernate.hbm2ddl.auto" value="update" /&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;        &lt;property name="hibernate.dialect"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; value="org.hibernate.dialect.Oracle10gDialect" /&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;        &lt;!--
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;            MySQL &lt;property name="hibernate.hbm2ddl.auto"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; value="create-drop" /&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;            &lt;property name="hibernate.dialect"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;            value="org.hibernate.dialect.MySQLInnoDBDialect" /&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;        --&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;    &lt;/properties&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;/persistence-unit&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;/persistence&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I've add the line:
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &lt;provider&gt;org.eclipse.persistence.jpa.PersistenceProvider&lt;/provider&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; because using the
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; "-
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Djavax
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; .persistence
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; .provider=org.eclipse.persistence.jpa.PersistenceProvider"
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; as VM arguments make my tests failing.
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Thanks for any help.
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; --
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; View this message in context:
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; http://www.nabble.com/Override-Porvider-property-via-system-properties-tp26021215p26021215.html
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Sent from the OpenEJB User mailing list archive at Nabble.com.
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;  --
&gt;&gt;&gt;&gt;&gt;&gt; View this message in context:
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt; http://www.nabble.com/Override-Porvider-property-via-system-properties-tp26021215p26029996.html
&gt;&gt;&gt;&gt;&gt;&gt; Sent from the OpenEJB User mailing list archive at Nabble.com.
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt;  --
&gt;&gt;&gt;&gt; View this message in context:
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; http://old.nabble.com/Override-Porvider-property-via-system-properties-tp26021215p26160653.html
&gt;&gt;&gt;&gt; Sent from the OpenEJB User mailing list archive at Nabble.com.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Maven Quickstart Archetypes</title>
<author><name>Quintin Beukes &lt;quintin@skywalk.co.za&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c1f3854d50911070330u31348f8h895ad0af018fdaaa@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1f3854d50911070330u31348f8h895ad0af018fdaaa@mail-gmail-com%3e</id>
<updated>2009-11-07T11:30:16Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hey,

A generic archetypes for only OpenEJB would be really useful. Just one for
an OpenEJB embedded client - where you get a sample EJB, the dependencies
and a unit test that loads up the embedded container. Many times i find
myself just wanting to create a quick project for trying/testing something.
Such an archetype would save a lot of time.

I've never done this, so the source code in quickstart.zip. Does that
contain everything I would need to make such an archetype?

Quintin Beukes


On Fri, Nov 6, 2009 at 2:09 AM, Jonathan Gallimore &lt;
jonathan.gallimore@gmail.com&gt; wrote:

&gt; Hi All,
&gt;
&gt; I don't know if anyone will find this useful, but I've been playing around
&gt; a
&gt; bit with Maven Archetypes, and I created a couple of quickstart archetypes
&gt; for OpenEJB. One creates a simple EJB project, complete with a simple
&gt; stateless bean, a unit test, includes all the necessary dependencies and
&gt; will add the right Eclipse WTP configuration to work with the OpenEJB
&gt; Eclipse Plugin. The other does the same for a complete EAR project. The
&gt; latter still needs a bit of work (and I'd quite like to add the functional
&gt; testing stuff I wrote about here:
&gt;
&gt; http://openejb.apache.org/functional-testing-with-openejb-jetty-and-selenium.html
&gt; )
&gt; but I thought I'd post them up in case anyone had any comments.
&gt;
&gt; Currently I've deployed a mini-repository on my website with the necessary
&gt; stuff, and you can generate a project by doing the following:
&gt;
&gt; $ mvn -DarchetypeCatalog=http://jrg.me.uk/repository/-DarchetypeRepository=
&gt; http://jrg.me.uk/repository/ archetype:generate (the trailing / on the URL
&gt; is necessary for some reason)
&gt;
&gt; [INFO] Scanning for projects...
&gt; [INFO] Searching repository for plugin with prefix: 'archetype'.
&gt; [INFO]
&gt; ------------------------------------------------------------------------
&gt; [INFO] Building Maven Default Project
&gt; [INFO]    task-segment: [archetype:generate] (aggregator-style)
&gt; [INFO]
&gt; ------------------------------------------------------------------------
&gt; [INFO] Preparing archetype:generate
&gt; [INFO] No goals needed for project - skipping
&gt; [INFO] Setting property: classpath.resource.loader.class =&gt;
&gt; 'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
&gt; [INFO] Setting property: velocimacro.messages.on =&gt; 'false'.
&gt; [INFO] Setting property: resource.loader =&gt; 'classpath'.
&gt; [INFO] Setting property: resource.manager.logwhenfound =&gt; 'false'.
&gt; [INFO] [archetype:generate]
&gt; [INFO] Generating project in Interactive mode
&gt; [INFO] No archetype defined. Using maven-archetype-quickstart
&gt; (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
&gt; Choose archetype:
&gt; 1: http://jrg.me.uk/repository/ -&gt; maven-openejb-quickstart
&gt; (maven-openejb-quickstart)
&gt; 2: http://jrg.me.uk/repository/ -&gt; maven-openejb-quickstart-ear
&gt; (maven-openejb-quickstart-ear)
&gt; Choose a number:  (1/2):
&gt;
&gt; Once you've followed the wizard, you should be able to cd to the newly
&gt; created project, and run:
&gt;
&gt; $ mvn install eclipse:eclipse
&gt;
&gt; This should compile everything, run the tests and create an Eclipse project
&gt; ready to be imported to your workspace.
&gt;
&gt; I've put some source code up here: http://jrg.me.uk/assets/quickstart.zip-
&gt; I'm more than happy to check it into SVN if anyone thinks its useful. Any
&gt; comments will be gratefully received.
&gt;
&gt; Cheers,
&gt;
&gt; Jon
&gt;


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Propagating extra context information in remote EJB calls</title>
<author><name>David Blevins &lt;david.blevins@visi.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c120D6DB7-2831-4A7B-8C0D-FDECCD7DAFDD@visi.com%3e"/>
<id>urn:uuid:%3c120D6DB7-2831-4A7B-8C0D-FDECCD7DAFDD@visi-com%3e</id>
<updated>2009-11-06T20:17:37Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Oct 29, 2009, at 1:16 AM, Jack Cai wrote:

&gt; I want to propagate some context information in remote EJB calls, and
&gt; hopefully this can be done transparently, i.e., does not require  
&gt; code change
&gt; to existing applications. Is this possible?
&gt;
&gt; I understand transaction and security context are already being  
&gt; propagated
&gt; as part of an EJB container impl. Can I just inject the extra data  
&gt; into the
&gt; security context for example to do the trick?
&gt;
&gt; Appreciate some insight in this area!

The idea that comes to mind is modifying the HttpConnectionFactory to  
in some way set headers into the HttpURLConnection.  In the 3.1.x  
codebase it's actually possible to replace the HttpConnectionFactory  
on an existing client:

   http://mail-archives.apache.org/mod_mbox/openejb-users/200911.mbox/%3CB003CC7A-74F0-4E88-AB61-F8C7A80F7F3B@visi.com%3E

On the server side if there was a Servlet like this:

   import org.apache.openejb.loader.SystemInstance;
   import org.apache.openejb.server.ServiceException;
   import org.apache.openejb.server.ejbd.EjbServer;

   import javax.servlet.ServletConfig;
   import javax.servlet.ServletException;
   import javax.servlet.ServletInputStream;
   import javax.servlet.ServletOutputStream;
   import javax.servlet.http.HttpServlet;
   import javax.servlet.http.HttpServletRequest;
   import javax.servlet.http.HttpServletResponse;
   import java.io.IOException;

   public class ServerServlet extends HttpServlet {
       private EjbServer ejbServer;

       public void init(ServletConfig config) {
           ejbServer =  
SystemInstance.get().getComponent(EjbServer.class);
       }

       protected void service(HttpServletRequest request,  
HttpServletResponse response) throws ServletException, IOException {
           ServletInputStream in = request.getInputStream();
           ServletOutputStream out = response.getOutputStream();
           try {
               ejbServer.service(in, out);
           } catch (ServiceException e) {
               throw new ServletException("ServerService error: " +  
ejbServer.getClass().getName() + " -- " + e.getMessage(), e);
           }
       }
   }


You could get the headers and put them on a ThreadLocal or something.

If the state is going to be the same on a per connection basis, then  
we can maybe make some standard way to put the headers in the  
connection URI and pull them out of that "params" map we create.

We'd need some more creativity to make it really nice and easy for  
people.  But this is a rough approach to get the ideas started.

-David








</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Propagating extra context information in remote EJB calls</title>
<author><name>David Jencks &lt;david_jencks@yahoo.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3cDA224F1C-3477-4D46-B5CC-AC9DC0D60875@yahoo.com%3e"/>
<id>urn:uuid:%3cDA224F1C-3477-4D46-B5CC-AC9DC0D60875@yahoo-com%3e</id>
<updated>2009-11-06T02:43:01Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
AFAIK openejb does not propagate transaction context.  I thought about  
it for corba a long time ago but I have never found anyone who  
actually wants distributed transactions so never made the time to  
implement it.

With Corba I believe you can add client and server interceptors and  
tack whatever info you want onto the request, but I found it a  
difficult programming model to understand.

What context information do you want to transmit?

thanks
david jencks

On Oct 29, 2009, at 4:15 AM, Jacek Laskowski wrote:

&gt; On Thu, Oct 29, 2009 at 10:16 AM, Jack Cai &lt;greensight@gmail.com&gt;  
&gt; wrote:
&gt;
&gt;&gt; 1. At the client side, intercept the client call before it's sent  
&gt;&gt; out, and
&gt;&gt; attach some extra context information with the call;
&gt;&gt; 2. At the server side, intercept the business method call before  
&gt;&gt; the method
&gt;&gt; is actually executed, so that I can retrieve the extra context  
&gt;&gt; information
&gt;&gt; coming with the call and set it into the server thread's context.
&gt;&gt;
&gt;&gt; I need to transparently do this for all EJBs. I was hoping I could  
&gt;&gt; do the
&gt;&gt; trick only once in the code, instead of having to take care of all  
&gt;&gt; EJBs
&gt;&gt; (e.g., use AOP to specify to intecept each invidiual remote  
&gt;&gt; interface).
&gt;&gt;
&gt;&gt; So in a word, I guess this is pretty much the same as how
&gt;&gt; transaction/security context gets propagated today. Does this make  
&gt;&gt; more
&gt;&gt; sense now?
&gt;
&gt; Nope :] I still don't know what exactly you'd like to add to a call.
&gt; Yet, you're right that OpenEJB adds some additional data for security
&gt; and tx mgmt, but I don't think it was exposed for public consumption.
&gt;
&gt; Jacek
&gt;
&gt; -- 
&gt; Jacek Laskowski
&gt; Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl



</pre>
</div>
</content>
</entry>
<entry>
<title>Maven Quickstart Archetypes</title>
<author><name>Jonathan Gallimore &lt;jonathan.gallimore@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/openejb-dev/200911.mbox/%3c8a884a800911051609m255a78c8m4a8e87c15332cc88@mail.gmail.com%3e"/>
<id>urn:uuid:%3c8a884a800911051609m255a78c8m4a8e87c15332cc88@mail-gmail-com%3e</id>
<updated>2009-11-06T00:09:00Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hi All,

I don't know if anyone will find this useful, but I've been playing around a
bit with Maven Archetypes, and I created a couple of quickstart archetypes
for OpenEJB. One creates a simple EJB project, complete with a simple
stateless bean, a unit test, includes all the necessary dependencies and
will add the right Eclipse WTP configuration to work with the OpenEJB
Eclipse Plugin. The other does the same for a complete EAR project. The
latter still needs a bit of work (and I'd quite like to add the functional
testing stuff I wrote about here:
http://openejb.apache.org/functional-testing-with-openejb-jetty-and-selenium.html)
but I thought I'd post them up in case anyone had any comments.

Currently I've deployed a mini-repository on my website with the necessary
stuff, and you can generate a project by doing the following:

$ mvn -DarchetypeCatalog=http://jrg.me.uk/repository/ -DarchetypeRepository=
http://jrg.me.uk/repository/ archetype:generate (the trailing / on the URL
is necessary for some reason)

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO]
------------------------------------------------------------------------
[INFO] Building Maven Default Project
[INFO]    task-segment: [archetype:generate] (aggregator-style)
[INFO]
------------------------------------------------------------------------
[INFO] Preparing archetype:generate
[INFO] No goals needed for project - skipping
[INFO] Setting property: classpath.resource.loader.class =&gt;
'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on =&gt; 'false'.
[INFO] Setting property: resource.loader =&gt; 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound =&gt; 'false'.
[INFO] [archetype:generate]
[INFO] Generating project in Interactive mode
[INFO] No archetype defined. Using maven-archetype-quickstart
(org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Choose archetype:
1: http://jrg.me.uk/repository/ -&gt; maven-openejb-quickstart
(maven-openejb-quickstart)
2: http://jrg.me.uk/repository/ -&gt; maven-openejb-quickstart-ear
(maven-openejb-quickstart-ear)
Choose a number:  (1/2):

Once you've followed the wizard, you should be able to cd to the newly
created project, and run:

$ mvn install eclipse:eclipse

This should compile everything, run the tests and create an Eclipse project
ready to be imported to your workspace.

I've put some source code up here: http://jrg.me.uk/assets/quickstart.zip -
I'm more than happy to check it into SVN if anyone thinks its useful. Any
comments will be gratefully received.

Cheers,

Jon


</pre>
</div>
</content>
</entry>
</feed>
