[jboss-dev-forums] [Design of EJB 3.0] - Failing 'factory' tests

ALRubinger do-not-reply at jboss.com
Fri Nov 21 00:13:29 EST 2008


This one is for Carlo.

Server error is:

Caused by: java.lang.IllegalArgumentException: Can't find a deployment unit named session2.jar at AbstractVFSDeploymentContext at 206176{vfszip:/home/alrubinger/business/jboss/wc/jbossas/projects/ejb3/trunk/testsuite/target/test-lib/factory-test.ear}

EAR layout is:

EAR
  | |--- session1.jar
  | |--- session2.jar

..and the resolving code is:

private static DeploymentUnit getDeploymentUnit(DeploymentUnit current, String path)
  |    {
  |       if(path.startsWith("/"))
  |          return getDeploymentUnit(current.getTopLevel(), path.substring(1));
  |       if(path.startsWith("./"))
  |          return getDeploymentUnit(current, path.substring(2));
  |       if(path.startsWith("../"))
  |          return getDeploymentUnit(current.getParent(), path.substring(3));
  |       int i = path.indexOf('/');
  |       String name;
  |       if(i == -1)
  |          name = path;
  |       else
  |          name = path.substring(0, i);
  |       for(DeploymentUnit child : current.getChildren())
  |       {
  |          if(child.getName().equals(name))
  |             return child;
  |       }
  |       throw new IllegalArgumentException("Can't find a deployment unit named " + name + " at " + current);
  |    }

We can only get PersistenceUnits of child relationships?  Not siblings or of anything else in the same EAR?

S,
ALR

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4191116#4191116

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4191116



More information about the jboss-dev-forums mailing list