You use the SilverStream Deployment Plan Designer to perform all of the tasks associated with deploying Enterprise JavaBeans (EJBs).
NOTE The deployment plan replaces the concept of the deployed JAR. Deployed JARs will continue to run in SilverStream as is. However, if you want to edit the deployment information for an existing deployed JAR, you first need to convert the JAR to a deployment plan. To do this, right-click the JAR in the SilverStream Designer and choose Convert to EJB JAR Deployment Plan. This will create a new deployment plan, leaving the old deployed JAR unchanged.
This page describes how to use the SilverStream Deployment Plan Designer. It includes the following topics:
SilverStream's Deployment Plan Designer allows you to:
To enable the EJB deployment:
You can only deploy an EJB JAR in the enabled state if the deployment information is complete. If the deployment information is not complete, SilverStream saves the deployment plan, but does not enable the JAR.
To map security roles:
When the Deployment Descriptor defines roles, the Deployment Plan Designer displays those roles.
Sometimes the classes in JAR files include references to classes that reside in one (or more) other JAR files. In these situations, you must provide the class-path to the referenced JAR files. Here's what you have to do:
The class-path entry in the manifest file is required regardless of the tool used to create the JAR file.
To make the referenced file available to an EJB deployment plan:
To specify the bean's JNDI name:
This is the only property that you need to specify for a session bean.
To provide entity bean information:
For more information on lazy beans and when it is appropriate to use them, see the chapter on entity beans in the Programmer's Guide in SilverStream help.
To map a persistent field to a column in the primary table
To map complex data types:
If your deployment descriptor includes a persistent field that is a complex data type (such as an object that represents an address), the Deployment pane allows you to map the constituent fields of the complex data type to columns in the primary database table. Follow these steps to map the complex data type:
NOTE Choose the constituent fields of the complex data type, not the complex data type itself. You may need to click the + icon next to the complex data type to access the constituent fields.
To map persistent fields to columns in a related table:
You can map your finder methods to a SilverStream expression or a method.
To define expression-style finder methods:
About method-style finders
You can specify a method-style finder when an expression is not sufficient to define the Where clause for the bean. There are two ways that the method-style finder might be defined:
In this case you simply define the Finder method as method-style using the Property Inspector as described below. SilverStream constructs the appropriate method calls in the deployment classes.
In this case you need to do two things:
To define method-style finder methods:
If your deployment descriptor includes a persistent field that has another bean's remote interface as its data type, the Deployment Plan Designer allows you to map the field to another bean. The Deployment Plan Designer allows you map to a single bean reference; therefore, it supports many-to-one and one-to-one relationships, but not one-to-many relationships.
To map member variables to foreign beans:
Because a persistent field has another bean's remote interface as its data type, the Property Inspector displays the Foreign Bean field, which allows you to map the member variable to another bean instead of a table field.
The columns you can choose from are columns associated with the table for the bean for which you're specifying deployment information (not the table for the foreign bean). Bean references allow for read/write access. Therefore, if you set the the foreign bean reference to point to a bean other than the one originally loaded, SilverStream writes the new bean reference to the database.
NOTE To map a member variable to a foreign bean, you need to have the foreign bean in the EJB JAR you are deploying.