User: osh
Date: 01/01/08 12:28:47
Modified: src/main/org/jboss/ejb/plugins
StatefulSessionFilePersistenceManager.java
Log:
context.getEJBObject() must return working EJBObject when called
from a stateful session ejbCreate() method.
Revision Changes Path
1.16 +11 -4
jboss/src/main/org/jboss/ejb/plugins/StatefulSessionFilePersistenceManager.java
Index: StatefulSessionFilePersistenceManager.java
===================================================================
RCS file:
/products/cvs/ejboss/jboss/src/main/org/jboss/ejb/plugins/StatefulSessionFilePersistenceManager.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- StatefulSessionFilePersistenceManager.java 2000/12/07 15:44:25 1.15
+++ StatefulSessionFilePersistenceManager.java 2001/01/08 20:28:46 1.16
@@ -63,7 +63,7 @@
* @author Rickard �berg ([EMAIL PROTECTED])
* @author <a href="[EMAIL PROTECTED]">Marc Fleury</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Sebastien Alborini</a>
- * @version $Revision: 1.15 $
+ * @version $Revision: 1.16 $
*/
public class StatefulSessionFilePersistenceManager
implements StatefulSessionPersistenceManager
@@ -159,6 +159,10 @@
public void createSession(Method m, Object[] args,
StatefulSessionEnterpriseContext ctx)
throws Exception
{
+
+ // Set id
+ ctx.setId(nextId());
+
// Get methods
try
{
@@ -169,10 +173,16 @@
} catch (IllegalAccessException e)
{
+ // Clear id
+ ctx.setId(null);
+
// Throw this as a bean exception...(?)
throw new EJBException(e);
} catch (InvocationTargetException ite)
{
+ // Clear id
+ ctx.setId(null);
+
Throwable e = ite.getTargetException();
if (e instanceof EJBException)
{
@@ -194,9 +204,6 @@
throw (Error)e;
}
}
-
- // Set id
- ctx.setId(nextId());
// Insert in cache
((StatefulSessionContainer)con).getInstanceCache().insert(ctx);