Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EJB Test Plan/Session Bean Wizard"
(→Create Session Bean with Home and Components interfaces (EJB 2.x)) |
(→Create Session Bean with Transaction Type Bean) |
||
Line 106: | Line 106: | ||
@Stateless(name = "MyBean", mappedName = " ejb/MyBean ") | @Stateless(name = "MyBean", mappedName = " ejb/MyBean ") | ||
@TransactionManagement(TransactionManagementType.BEAN) | @TransactionManagement(TransactionManagementType.BEAN) | ||
+ | |||
+ | |||
+ | |||
+ | == Create Stateful Session Bean == | ||
+ | |||
+ | #Create a new Session Bean : | ||
+ | #*enter "test" for Java package. | ||
+ | #*enter "TestBean5" for Class name. | ||
+ | #*Set for State Type: Stateful. | ||
+ | #*go to next page. | ||
+ | #*Set Bean name: MyBean. There should be an error: Enterprise bean with the same Ejb Name already exists. | ||
+ | #*Set the Bean name: MyStatefulBean. | ||
+ | #*Set Mapped name: ejb/MyStatefulBean. | ||
+ | #*Leave the Inherited abstract methods and Constructors from superclass checkboxes checked. | ||
+ | #*[[Image:Session_bean_06.png]] | ||
+ | #*Press Finish. | ||
+ | #Check if in the ‘ejbModule’ source folder there are the following annotations: | ||
+ | |||
+ | @Stateful(name = "MyStatefulBean", mappedName = "ejb/MyStatefulBean") |
Revision as of 09:17, 3 July 2008
Functional tests for the Session Bean wizard.
Contents
Prerequisites
- Java EE 5 compatible runtime installed: JBoss, Glassfish, etc.
- an EAR 5 project created.
Create Default Session Bean
- Open the Java EE perspective.
- Create One EJB Project 3.0 and add it to the EAR.
- Create a new Session Bean:
- for Java package enter some String that starts with a number, or has some symbols (except _ ). There should be an error: Invalid Java package name…
- enter "test" for Java package.
- for Class name enter some String that starts with a number, or has some symbols (except _ ). There should be an error: Invalid Java class name. Next and Finish buttons are disabled.
- enter "TestBean" for Class name.
- State type must be Stateless by default.
- Check whether only "Create Business Interface > Local" is checked by default and leave it checked.
- go to next page.
- Check whether in Business Interfaces section only TestBeanLocal interface is shown.
- Leave the Inherited abstract methods and Constructors from superclass checkboxes checked.
- press Finish.
- Create a new Stateless Session Bean:
- enter "test" for Java package.
- enter "TestBean" for Class name. Check that there is an error: The class already exists in the package.
- enter "TestBean1" for name.
- Check up Remote interface and uncheck Local interface.
- Check whether in Business Interfaces section only TestBean1Remote interface is shown.
- press Finish.
- Create a new Stateless Session Bean :
- Check that Session Bean classes and interfaces exist in the project file structure.
- Verify that there is a node for the Deployment Descriptor and nodes for all the Beans under the "Session Beans" node.
- Check that under each node all bean classes and interfaces are listed.
<< add more steps >>
Create Session Bean with addition Business Interfaces
- Create a new Stateless Session Bean :
- enter "test" for Java package.
- enter "TestBean2" for Class name.
- go to next page.
- add new Business Interfaces.
- Select one Interface and check the radio button Local, press OK.
- Select the new interface from the Business Interface and press Remove button.
- Press Back, and then Next again and check that this interface is not listed.
- add new Business Interfaces as Local.
- Leave the Inherited abstract methods and Constructors from superclass check boxes checked.
- Press Finish.
- Check if in the ejbModule source folder class TestBean2 implements the interfaces:TestBean2Local and the added interface.
- Create a new Stateless Session Bean :
- enter "test" for Java package.
- enter "TestBean2_1" for Class name.
- go to next page.
- add new Business Interfaces as Remote.
- Leave the Inherited abstract methods and Constructors from superclass check boxes checked.
- Check if in the ‘ejbModule’ source folder class TestBean2_1 implements the interfaces:TestBean2_1Local and the added interface.
- Check that inherited methods and constructors are created.
<< add more steps >>
Create Session Bean with Home and Components interfaces (EJB 2.x)
- Create a new Stateless Session Bean :
- Check if in the ‘ejbModule’ source folder there are the following annotations:
@Stateless @LocalHome(TestBean3LocalHome.class) @RemoteHome(TestBean3RemoteHome.class)
<< add more steps >>
Create Session Bean with Transaction Type Bean
- Create a new Stateless Session Bean :
- enter "test" for Java package
- enter "TestBean4" for Class name
- go to next page
- Delete the name TestBean4 from the field Bean name. Error message is shown and Next and Finish buttons are disabled.
- Enter some String that starts with a number, or has some symbols (except _ ). There should be an error and Next and Finish buttons are disabled.
- Set Bean name: MyBean.
- Set Mapped name: ejb/MyBean.
- Select for Transaction Type : Bean.
- Leave the Inherited abstract methods and Constructors from superclass check boxes checked.
- Press Finish.
- Check if in the ‘ejbModule’ source folder there are the following annotations:
@Stateless(name = "MyBean", mappedName = " ejb/MyBean ") @TransactionManagement(TransactionManagementType.BEAN)
Create Stateful Session Bean
- Create a new Session Bean :
- enter "test" for Java package.
- enter "TestBean5" for Class name.
- Set for State Type: Stateful.
- go to next page.
- Set Bean name: MyBean. There should be an error: Enterprise bean with the same Ejb Name already exists.
- Set the Bean name: MyStatefulBean.
- Set Mapped name: ejb/MyStatefulBean.
- Leave the Inherited abstract methods and Constructors from superclass checkboxes checked.
- Press Finish.
- Check if in the ‘ejbModule’ source folder there are the following annotations:
@Stateful(name = "MyStatefulBean", mappedName = "ejb/MyStatefulBean")