I will have a look tonight, should be fast to fix. - Romain
Le 28 janv. 2012 15:55, "Romain Manni-Bucau" <[email protected]> a écrit : > That's the question but we shouldnt ignore ejb jar and other dd too. That > s why i patched like it. > > - Romain > > Le 28 janv. 2012 00:14, "David Blevins" <[email protected]> a > écrit : > >> Not sure this is accurate. >> >> The entire webapp itself should be treated as one EjbModule and all jars >> in WEB-INF/lib/ and WEB-INF/classes are part of the same module. >> >> The path of the EjbModule needs to be the same as the WebModule or >> ejb-link functionality will break as will resolving persistence units when >> there is more than one unit with the same name and the module path is used >> to distinguish each. >> >> >> -David >> >> On Jan 27, 2012, at 3:20 AM, [email protected] wrote: >> >> > Author: rmannibucau >> > Date: Fri Jan 27 11:20:06 2012 >> > New Revision: 1236635 >> > >> > URL: http://svn.apache.org/viewvc?rev=1236635&view=rev >> > Log: >> > trying to create the web ejb module from WEB-INF/classes if exists to >> get DD read >> > >> > Modified: >> > >> >> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java >> > >> > Modified: >> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java >> > URL: >> http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java?rev=1236635&r1=1236634&r2=1236635&view=diff >> > >> ============================================================================== >> > --- >> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java >> (original) >> > +++ >> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java >> Fri Jan 27 11:20:06 2012 >> > @@ -644,8 +644,27 @@ public class DeploymentLoader implements >> > // than an ear file, so the ear-style code we were previously >> > // using doesn't exactly work anymore. >> > // >> > + // EjbModule webEjbModule = new >> EjbModule(webModule.getClassLoader(), webModule.getModuleId(), >> webModule.getJarLocation(), null, null); >> > + EjbModule webEjbModule = null; >> > + StringBuilder webInfClassesPath = new StringBuilder(warPath); >> > + if (!warPath.endsWith("/")) { >> > + webInfClassesPath.append("/"); >> > + } >> > + webInfClassesPath.append("WEB-INF/classes"); >> > + final String webInfClasses = webInfClassesPath.toString(); >> > + final File webInfClassesFile = new File(webInfClasses); >> > + if (webInfClassesFile.exists()) { >> > + try { >> > + webEjbModule = >> createEjbModule(webInfClassesFile.toURI().toURL(), >> webModule.getJarLocation(), webModule.getClassLoader(), >> webModule.getModuleId()); >> > + } catch (MalformedURLException e) { >> > + logger.error("can't create an ejbmodule with >> WEB-INF/classes"); >> > + // don't throw it we use the next test to initialize >> the ejbmodule >> > + } >> > + } >> > + if (webEjbModule == null) { >> > + webEjbModule = new EjbModule(webModule.getClassLoader(), >> webModule.getModuleId(), webModule.getJarLocation(), null, null); >> > + } >> > >> > - EjbModule webEjbModule = new >> EjbModule(webModule.getClassLoader(), webModule.getModuleId(), >> webModule.getJarLocation(), null, null); >> > webEjbModule.getAltDDs().putAll(webModule.getAltDDs()); >> > appModule.getEjbModules().add(webEjbModule); >> > >> > >> > >> > >> >>
