[jboss-cvs] JBossAS SVN: r62090 - in trunk/ejb3/src: resources/schema and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Apr 4 14:05:37 EDT 2007
Author: wolfc
Date: 2007-04-04 14:05:37 -0400 (Wed, 04 Apr 2007)
New Revision: 62090
Modified:
trunk/ejb3/src/main/org/jboss/ejb3/Ejb3DescriptorHandler.java
trunk/ejb3/src/resources/schema/jboss_5_0.xsd
Log:
EJBTHREE-936: generic bean fixes
Modified: trunk/ejb3/src/main/org/jboss/ejb3/Ejb3DescriptorHandler.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/Ejb3DescriptorHandler.java 2007-04-04 18:00:24 UTC (rev 62089)
+++ trunk/ejb3/src/main/org/jboss/ejb3/Ejb3DescriptorHandler.java 2007-04-04 18:05:37 UTC (rev 62090)
@@ -111,6 +111,7 @@
import org.jboss.ejb3.metamodel.EnterpriseBean;
import org.jboss.ejb3.metamodel.EnterpriseBeans;
import org.jboss.ejb3.metamodel.ExcludeList;
+import org.jboss.ejb3.metamodel.GenericBean;
import org.jboss.ejb3.metamodel.InitMethod;
import org.jboss.ejb3.metamodel.InterceptorBinding;
import org.jboss.ejb3.metamodel.MessageDestination;
@@ -499,7 +500,16 @@
container.setAssemblyDescriptor(dd.getAssemblyDescriptor());
- addMDBAnnotations(container, ejbName, enterpriseBean);
+ if(enterpriseBean instanceof MessageDrivenBean)
+ addMDBAnnotations(container, ejbName, (MessageDrivenBean) enterpriseBean);
+ else if(enterpriseBean instanceof GenericBean)
+ {
+ // EJBTHREE-936: TODO: unsupported wickedness starts here
+ MessageDrivenBean mdb = new MessageDrivenBean();
+ mdb.setDestinationJndiName(enterpriseBean.getJndiName());
+
+ addMDBAnnotations(container, ejbName, mdb);
+ }
addInterfaces(container, enterpriseBean);
@@ -532,12 +542,10 @@
}
private void addMDBAnnotations(MDB container, String ejbName,
- EnterpriseBean enterpriseBean)
+ MessageDrivenBean mdb)
{
- if (enterpriseBean != null)
+ if (mdb != null)
{
- MessageDrivenBean mdb = (MessageDrivenBean) enterpriseBean;
-
ArrayList properties = new ArrayList();
if (mdb.getAcknowledgeMode() != null)
properties.add(new ActivationConfigPropertyImpl("acknowledgeMode",
@@ -703,6 +711,18 @@
private void addDescriptorAnnotations(EJBContainer container,
EnterpriseBean enterpriseBean, String ejbName) throws Exception
{
+ // EJBTHREE-936: TODO: another wicked patch: jndi-name might mean local-jndi-name
+ // TODO: Make sure this is done after addInterfaces!
+ if(enterpriseBean instanceof GenericBean)
+ {
+ Class[] remoteInterfaces = ProxyFactoryHelper.getRemoteInterfaces(container);
+ if(remoteInterfaces == null)
+ {
+ enterpriseBean.setLocalJndiName(enterpriseBean.getJndiName());
+ enterpriseBean.setJndiName(null);
+ }
+ }
+
container.setXml(enterpriseBean);
addTransactionAnnotations(container, enterpriseBean, ejbName);
Modified: trunk/ejb3/src/resources/schema/jboss_5_0.xsd
===================================================================
(Binary files differ)
More information about the jboss-cvs-commits
mailing list