Hi Ravi:
I have read the book EJB 3 in action (11.3.5 Using vendor-specific annotations and descriptors)
that these configurations are left to the vendors as proprietary features,
and they can be supported with "proprietary annotations", "proprietary deployment descriptors", or both.
For example for Oracle:
You use library:
oracle.j2ee.ejb.StatelessDeployment
Configures pooling with Oracle’s proprietary annotation:
import oracle.j2ee.ejb.StatelessDeployment;
@StatelessDeployment(
minInstances = 100, maxInstances = 500, poolCacheTimeout = 120)
@Stateless(name = "BazaarAdmin")
public class BazaarAdminBean implements BazaarAdmin {
}
Or using element in Oracle’s proprietary
descriptor (orion-ejb-jar.xml) element as follows:
<session-deployment
name = "BazaarAdmin"
tx-retry-wait = "60"
max-instances = "500"
min-instances = "100"
pool-cache-timeout = "120"
location = "BazaarAdmin">
</session-deployment>
And for example the weblogic-ejb-jar.xml deployment file contains
the WebLogic Server-specific deployment elements that determine the concurrency,
caching, and clustering behaviors of EJBs:
http://download.oracle.com/docs/cd/E13222_01/wls/docs81/perform/EJBTuning.html
As recommended in the book:
"You remember to add proprietary annotations may be dangerous for goal of portability of applications."
By.