[jboss-cvs] JBossAS SVN: r66259 - trunk/ejb3/src/main/org/jboss/ejb3/session.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Oct 18 19:09:39 EDT 2007


Author: ALRubinger
Date: 2007-10-18 19:09:39 -0400 (Thu, 18 Oct 2007)
New Revision: 66259

Modified:
   trunk/ejb3/src/main/org/jboss/ejb3/session/SessionContextImpl.java
Log:
EJBTHREE-1057: Throw IllegalStateException, citing Specification

Modified: trunk/ejb3/src/main/org/jboss/ejb3/session/SessionContextImpl.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/session/SessionContextImpl.java	2007-10-18 23:08:47 UTC (rev 66258)
+++ trunk/ejb3/src/main/org/jboss/ejb3/session/SessionContextImpl.java	2007-10-18 23:09:39 UTC (rev 66259)
@@ -59,7 +59,21 @@
       try
       {
          Object id = beanContext.getId();
-         EJBLocalObject proxy = (EJBLocalObject) container.createLocalProxy(id);
+         EJBLocalObject proxy = null;
+         try
+         {
+            proxy = (EJBLocalObject) container.createLocalProxy(id);
+         }
+         // Proxy does not implement EJBLocalObject
+         catch (ClassCastException cce)
+         {
+            // JIRA EJBTHREE-1057
+            throw new IllegalStateException("EJB3 Specification Violation: " + container.getBeanClassName()
+                  + " does not have a local interface; "
+                  + "EJB3 Spec 4.3.3 Bullet 12: Only session beans with a local EJBLocalObject interface "
+                  + "can call this method.");
+
+         }
          return proxy;
       }
       catch (Exception e)
@@ -73,7 +87,20 @@
       try
       {
          Object id = beanContext.getId();
-         EJBObject proxy = (EJBObject) container.createRemoteProxy(id);
+         EJBObject proxy = null;
+         try
+         {
+            proxy = (EJBObject) container.createRemoteProxy(id);
+         }
+         // Proxy does not implement EJBObject
+         catch (ClassCastException cce)
+         {
+            // JIRA EJBTHREE-1057
+            throw new IllegalStateException("EJB3 Specification Violation: " + container.getBeanClassName()
+                  + " does not have a remote interface; "
+                  + "EJB3 Spec 4.3.3 Bullet 10: Only session beans with a remote EJBObject interface "
+                  + "can call this method.");
+         }
          return proxy;
       }
       catch (Exception e)




More information about the jboss-cvs-commits mailing list