Object Request Broker service settings
Use this page to configure the Java™ Object Request Broker (ORB) service and adjust settings that control internal Object Request Broker (ORB) processing.
- For an application server, click .
- For a deployment manager, click .
Several settings are available for controlling internal Object Request Broker (ORB) processing. You can use these settings to improve application performance for applications that contain enterprise beans. You can change these settings for the default server or any application server that is configured in the administrative domain.
Request timeout
Specifies the number of seconds to wait before timing out on a request message.
If you use command-line scripting, the full name of this system property is com.ibm.CORBA.RequestTimeout.
Information | Value |
---|---|
Data type | int |
Units | Seconds |
Default | 180 |
Range | 0 - largest integer recognized by Java |
ORB tracing
Enables the tracing of ORB General Inter-ORB Protocol (GIOP) messages that includes both ORBRas=all trace and ORB CommTrace.
true
to enable the tracing of GIOP messages.Information | Value |
---|---|
Data type | Boolean |
Default | Not enabled (false) |
Pass by reference
Specifies how the ORB passes parameters. If enabled, the ORB passes parameters by reference instead of by value, to avoid making an object copy. If you do not enable the pass by reference option, a copy of the parameter passes rather than the parameter object itself. This copy can be expensive because the ORB must first make a copy of each parameter object.
You can use this option only when the Enterprise JavaBeans (EJB) client and the EJB are on the same classloader. This requirement means that the EJB client and the EJB must be deployed in the same EAR file.
- The Enterprise JavaBeans (EJB) client and server are installed in the same instance of the product.
- The client and server use remote interfaces.
If you use command-line scripting, the full name of this system property is com.ibm.CORBA.iiop.noLocalCopies.
Information | Value |
---|---|
Data type | Boolean |
Default | Not enabled (false) |
The use of this option for enterprise beans with remote interfaces violates Enterprise JavaBeans (EJB) Specification, Version 2.0 (see section 5.4). Object references passed to Enterprise JavaBeans (EJB) methods or to EJB home methods are not copied and can be subject to corruption.
Iterator iterator = collection.iterator();
MyPrimaryKey pk = new MyPrimaryKey();
while (iterator.hasNext()) {
pk.id = (String) iterator.next();
MyEJB myEJB = myEJBHome.findByPrimaryKey(pk);
}
In this example, a reference to the same MyPrimaryKey object passes into the product with a
different ID value each time. Running this code with pass by reference enabled causes a problem
within the application server because multiple enterprise beans are referencing the same
MyPrimaryKey object. To avoid this problem, set the
com.ibm.websphere.ejbcontainer.allowPrimaryKeyMutation system property to true
when
the pass by reference option is enabled. Setting the pass by reference option to
true
causes the EJB container to make a local copy of the PrimaryKey object. But
as a result, a small portion of the performance advantage of setting the pass by reference option is
lost.
As a rule, any application code that passes an object reference as a parameter to an enterprise bean method or to an EJB home method must be scrutinized. Passing the object reference might result in loss of data integrity or other problem.
After examining your code, you can enable the pass by reference option by setting the com.ibm.CORBA.iiop.noLocalCopies system property to true. You can also enable the pass by reference option in the administrative console. Click Pass by reference.
and selectThread pool settings
Specifies which thread pool will be used for the ORB Service, as well as the ability to make any thread pool adjustments for either thread pool option.
- Use the ORB.thread.pool settings associated with the Thread Pool Manager, and then click ORB thread pool settings, which shows the general thread pool settings for the ORB.thread.pool.
- Use the thread pool settings directly associated with the ORB service, and then click Thread pool settings, which shows the general thread pool settings for ORB service.