org.apache.openejb.test.stateful
Class StatefulPojoEjbLocalHomeTests

java.lang.Object
  extended by junit.framework.Assert
      extended by org.apache.openejb.test.NumberedTestCase
          extended by org.apache.openejb.test.NamedTestCase
              extended by org.apache.openejb.test.TestClient
                  extended by org.apache.openejb.test.stateful.StatefulTestClient
                      extended by org.apache.openejb.test.stateful.BasicStatefulLocalTestClient
                          extended by org.apache.openejb.test.stateful.StatefulPojoEjbLocalHomeTests
All Implemented Interfaces:
junit.framework.Test

public class StatefulPojoEjbLocalHomeTests
extends BasicStatefulLocalTestClient

[3] Should be run as the third test suite of the BasicStatefulTestClients

Author:
David Blevins, Richard Monson-Haefel

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.openejb.test.NumberedTestCase
NumberedTestCase.NamedTest, NumberedTestCase.TestSetup, NumberedTestCase.TestTearDown
 
Field Summary
 
Fields inherited from class org.apache.openejb.test.stateful.BasicStatefulLocalTestClient
ejbLocalHome, ejbLocalObject
 
Fields inherited from class org.apache.openejb.test.TestClient
ejbHandle, ejbHomeHandle, ejbMetaData, ejbPrimaryKey, initialContext
 
Fields inherited from class org.apache.openejb.test.NamedTestCase
testName
 
Fields inherited from class org.apache.openejb.test.NumberedTestCase
standardPrefix
 
Constructor Summary
StatefulPojoEjbLocalHomeTests()
           
 
Method Summary
protected  void setUp()
          Sets up the fixture, for example, open a network connection.
 void test03_removeByPrimaryKey()
          ------------------------------------ 5.3.2 Removing a session object A client may remove a session object using the remove() method on the javax.ejb.EJBObject interface, or the remove(Handle handle) method of the javax.ejb.EJBHome interface.
 
Methods inherited from class org.apache.openejb.test.TestClient
cast, processFieldInjections, processSetterInjections
 
Methods inherited from class org.apache.openejb.test.NamedTestCase
name
 
Methods inherited from class org.apache.openejb.test.NumberedTestCase
countTestCases, createTest, createTestName, removePrefix, removePrefix, run, run, runTestMethod, tearDown, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame, format
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

StatefulPojoEjbLocalHomeTests

public StatefulPojoEjbLocalHomeTests()
Method Detail

setUp

protected void setUp()
              throws Exception
Description copied from class: StatefulTestClient
Sets up the fixture, for example, open a network connection. This method is called before a test is executed.

Overrides:
setUp in class StatefulTestClient
Throws:
Exception

test03_removeByPrimaryKey

public void test03_removeByPrimaryKey()
------------------------------------ 5.3.2 Removing a session object A client may remove a session object using the remove() method on the javax.ejb.EJBObject interface, or the remove(Handle handle) method of the javax.ejb.EJBHome interface. Because session objects do not have primary keys that are accessible to clients, invoking the javax.ejb.EJBHome.remove(Object primaryKey) method on a session results in the javax.ejb.RemoveException. ------------------------------------ 5.5 Session object identity Session objects are intended to be private resources used only by the client that created them. For this reason, session objects, from the client's perspective, appear anonymous. In contrast to entity objects, which expose their identity as a primary key, session objects hide their identity. As a result, the EJBObject.getPrimaryKey() and EJBHome.remove(Object primaryKey) methods result in a java.rmi.RemoteException if called on a session bean. If the EJBMetaData.getPrimaryKeyClass() method is invoked on a EJBMetaData object for a Session bean, the method throws the java.lang.RuntimeException. ------------------------------------ Sections 5.3.2 and 5.5 conflict. 5.3.2 says to throw javax.ejb.RemoveException, 5.5 says to throw java.rmi.RemoteException. For now, we are going with java.rmi.RemoteException. ===================================================================================================== TODO - MNour: Please add related sections from EJB3.0 Core contracts and requirements specification (Sections: 3.6.2.2, 3.6.3.2 and 3.6.5)



Copyright © 1999-2011 The Apache OpenEJB development community. All Rights Reserved.