+

Search Tips   |   Advanced Search

 

EJB container system properties

 

In addition to the settings accessible from the administrative console, you can set the following system property by command-line scripting.

com.ibm.websphere.ejbcontainer.poolSize

Size of the pool for the specified bean type. This property applies to stateless, message-driven and entity beans. If you do not specify a default value, the container defaults of 50 and 500 are used. Set the pool size for a given entity bean as follows:

beantype= [H]min,[H]max [:beantype= [H]min, [H]max...]

beantype is the J2EE name of the bean, formed by concatenating the application name, the # character, the module name, the # character, and the name of the bean (that is, the string assigned to the <ejb-name> field in the bean's deployment descriptor). min and max are the minimum and maximum pool sizes, respectively, for that bean type. Do not specify the square brackets shown in the previous prototype; they denote optional additional bean types that you can specify after the first. Each bean-type specification is delimited by a colon (:). Use an asterisk (*) as the value of beantype to indicate that all bean types are to use those values unless overridden by an exact bean-type specification somewhere else in the string, as follows:

*=30,100
To specify that a default value be used, omit either min or max but retain the comma (,) between the two values, as follows (split for publication):

SMApp#PerfModule#TunerBean=54,
   :SMApp#SMModule#TypeBean=100,200

You can specify the bean types in any order within the string.

You can designate the maximum configured EJB pool size as a hard limit by inserting the character H directly in front of the max value. Without the H, the maximum value indicates how many EJB instances can be pooled, and does not limit the number of EJB instances that can be created or in use. Inserting the H before the max value indicates that it is a hard limit, and the EJB Container blocks creation of more instances when that limit is reached. Further threads must wait until an instance becomes available or until the transaction times out.

You can designate the minimum configured EJB pool size as a hard limit by inserting the character H directly in front of the min value. Without the H, the minimum value indicates how many EJB instances are maintained in the pool when the EJB type is not actively in use, but does not pre-load the pool when the application is started. Normally, the minimum pool size is not reached until the minimum number of EJB instances has been accessed concurrently by the application. Inserting the H before the min value indicates that it is a hard limit, and the EJB Container pre-loads the pool with the minimum number of EJB instances when the application is started. As an example, if you want to indicate that no more than 200 EJB instances are created, and that additional requests must wait for an instance and might time out while waiting, you enter:

SMApp#SMModule#TypeBean=100,H200
If you want to indicate that the EJB Container pre-load the pool with a minimum of 100 EJB instances when the application is started, you enter:

SMApp#SMModule#TypeBean=H100,200

The hard limit indicator is only available to EJB Version 2.0 or later Stateless Session beans.

com.ibm.websphere.ejbcontainer.allowEarlyInsert

This property is applicable to CMP 1.1 beans only.

By default, the EJB Container creates the entity bean representation in the database only after the method ejbPostCreate(...) is called. However, some applications may rely on method ejbCreate(...) to have created the entity bean in the database. For such a requirement, setting the JVM property com.ibm.websphere.ejbcontainer.allowEarlyInsert to true overrides the default behavior.




 

Related concepts


EJB containers

 

Related tasks


Manage EJB containers

 

Related Reference


EJB container settings