1. What is Orbix?

Orbix is a CORBA ORB (Object Resource Broker) - a commercial software product which helps programmers build distributed applications. Orbix is an implementation of the OMG's (Object Management Group) CORBA Specification.

2. How are connections managed in Orbix Connect?

The Orbix Connect resource adapter is packaged as a standard J2EE Connector Architecture resource adapter archive (RAR) file, corbaconn.rar. The corbaconn.rar file contains all the classes and resources that Orbix Connect needs to manage the connections between J2EE applications and CORBA systems. CORBA capabilities are embedded within this RAR file and include a fully functional, pre-configured standalone client instance of Orbix, IONA's market-leading ORB.

3. How to limit the connections to from a service?

Orbix provides the following configuration settings to limit the number of connections to and from a service:
★ plugins:iiop:incoming_connections:soft_limit
★ plugins:iiop:incoming_connections:hard_limit
★ plugins:iiop:outgoing_connections:soft_limit
★ plugins:iiop:outgoing_connections:hard_limit

4. How to increase the internal logging in Orbix configure?

The itconfigure utility uses Log4J logging. This is configured in the properties file:
<ORBIX_INSTALL_DIR>asp6.3 emplatesetclog4jlog4j.properties.

To configure debug logging level, change the first line of the properties file from:
log4j.rootLogger=ERROR, A1

to
log4j.rootLogger=DEBUG, A1

The above change writes debug logging to the console. The logging output can be redirected to a file by adding the following lines to the log4j.properties file:
logDir = C:/temp
log4j.appender.A1.File=${logDir}/itconfigure.log

5. How you can configure Orbix logging?

Orbix logging is configured through the event_log filters. These sequences of variables set the logging level for each of Orbix's subsystem. For example, the following configures the IT_POA subsystem to display only error messages:
event_log:filters = ["IT_POA=ERROR"];

Similarly, the following sets the IT_POA subsystem to display only error messages and also the IT_PSS_DB subsystem to display only warning, error and fatal messages:
event_log:filters = ["IT_POA=ERROR", "IT_PSS_DB=WARN+ERROR+FATAL"];

An asterisk can be used as a wildcard character, either to specify all subsystems, or all message levels. For example, the following configures the IT_POA subsystem to display all messages:
event_log:filters = ["IT_POA=*"];

Similarly, the following configures all subsystems to display all messages:
event_log:filters = ["*=*"];
If unconfigured, a subsystem will display no messages.

6. How to configure the license of Orbix 3.3?

Orbix 3.3 uses a license code, not a license file.
There are three product sets for Orbix 3.3, each with it's own license code: Java, C++, or OTS.
The licenses codes have the form: 00000000-11111111-22222222-33333333-44444444
When prompted, provide the codes to the installer.

If licensed Orbix commands like idl or orbixd fail to run, the license may have been entered incorrectly.
To reinstall a license code after the initial installation is completed, run:
UNIX:
Install_license <app> <license code>
Windows:
License.exe <app> <license code>

7. How you configure thread pool settings in Orbix 6.3?

The variables in the thread_pool namespace specify policies that configure multi-threading. This namespace includes the following variables:

high_water_mark

high_water_mark specifies the maximum number of threads allowed in the thread pool. Defaults to -1, which means that there is no limit on the maximum number of threads.

initial_threads

initial_threads specifies the number of initial threads in the thread pool.

Defaults to the low_water_mark thread limit (or 5, if the low_water_mark is not set).

low_water_mark

low_water_mark specifies the minimum number of threads in the thread pool. If this variable is set, the ORB will terminate unused threads until only this number exists. The ORB can then create more threads, if needed, to handle the items in its work queue. Defaults to -1,which means do not terminate unused threads.

max

max sets the maximum number of threads that are available for JMS message processing.

max_queue_size

max_queue_size specifies the maximum number of request items that can be queued on the ORB's internal work queue. If this limit is exceeded, Orbix considers the server to be overloaded, and gracefully closes down connections to reduce the load. The ORB will reject subsequent requests until there is free space in the work queue. Defaults to -1, which means that there is no upper limit on the size of the request queue. In this case, the maximum work queue size is limited by how much memory is available to the process.

stack_size

stack_size sets the ORB's internal threads stack size. This is only available in the C++ ORB; the Java API does not allow manipulation of the thread stack size.

8. How you can configure an Orbix domain to use the DNS network alias hostname in IORs for Orbix services?

When configuring the Orbix domain provide the "-multihome" switch to itconfigure command followed by the DNS network alias of the hostname, e.g.
itconfigure -multihome <network alias hostname>

The IORs generated for the Orbix services configured in the Orbix domain will contain the "network alias hostname" rather than the physical hostname.

9. How you can configure an Orbix domain to use fully qualified host names rather than short host names or IP addresses?

When running itconfigure and creating the Orbix domain in non-GUI mode use the "-hostnamePolicy" parameter to specify the address mode policy for IORs. The hostnamePolicy value can be one of the following:
ip (IP addresses)
localhost ('localhost'),
localhost_ip ('127.0.0.1'),
long (fully qualified hostname),
short (unqualified hostname-the default).

When running itconfigure and creating the Orbix domain in GUI mode use the "Address Mode Policy for Object References" setting in the first step (Domain Defaults) of itconfigure one of the above values can be selected.
Use the hostnamePolicy "long" for generating fully qualified hostnames in IORs.

10. How you can configure an Orbix domain to contain corbaloc references instead of IORs for the Orbix services?

Orbix can be instructed to publish corbaloc style references instead of IORs for the Orbix services through the "-corbalocs true" switch to the itconfigure command line tool when configuring an Orbix domain.

When using the itconfigure GUI ensure to check the "Use Corbalocs" check-box in the itconfigure GUI. This setting is only available in the "Domain Details" step when running the itconfigure GUI tool in expert mode (File->New->Expert).

Download Interview PDF

11. How you can close the client connection to the Orbix 3 daemon?

Orbix 3 clients do not automatically close the connection to the Orbix daemon. These connections need to be closed explicitly.

Orbix 3 Java provides the IT_KEEP_ALIVE_FORWARDER_CONNECTION configuration variable which can be set to false in order to close the connection to the Orbix daemon.

12. How to change the default Orbix client timeout?

The variable that sets the timeout Orbix config is:
relative_roundtrip_timeout

13. How to download the Orbix products?

Product downloads are awailable through the Micro Focus EPD (Electronic Product Delivery) portal.

14. Does Orbix support Oracle JRockit Java Virtual Machine?

Any versions of Orbix do not support Oracle JRockit Java Virtual Machine.

15. Tell me does Orbix Web Services provide locator functionality for Web Services endpoints?

Orbix Web Services does not include locator functionality for web services endpoints.

16. How to developed the event service consumers and suppliers?

An event service supplier program performs the following actions:
1) Instantiates suppliers using the appropriate interface in module CosEventComm
2) Connects suppliers to the event channel
3) Sends event messages to the event channel
4) Disconnects from the event channel

An event service consumer program performs the following actions:
1) Instantiates consumers with the appropriate CosEventComm interface
2) Connects consumers to the event channel
3) Obtains event messages
4) Disconnects from the event channel

17. Does the Orbix have size limit for CORBA messages?

Orbix does not impose a size limit on the messages sent from Client to Server. The size of the message is influenced by how the application has defined the message in the Interface Definition Language (IDL) used by the server and client.

18. Tell me does Orbix provide tool to remove surplus empty lines from an Orbix configuration file?

Orbix does not provide any tools to remove empty or surplus empty lines from an Orbix configuration file.

Using a text editor for example Notepad++ (http://notepad-plus-plus.org/) with the TextFX plugin installed (Plugins->Plugin Manager->Show Plugin Manager and install TextFX plugin), you can simply load the configuration file, mark all text (Ctrl+A), then select menu TextFX->TextFX Edit->Delete Surplus Blank Lines.
This removes all surplus empty lines.

19. Will Orbix 6 support I/O callback feature?

Because Orbix 6 has no equivalent to the Orbix 3 I/O Callback functionality, you must migrate any code that uses it. Orbix 6 does not allow access to TCP/IP sockets or transport-level information, this is not compatible with the Orbix 6 architecture.

20. Does Orbix 3 and 6 support Java 7?

Orbix 6.3.6 is the first Service Pack of Orbix to include support for Java 7. Support for Java 7 is provided for Orbix 3.3.12 in Q2 2013.

21. Does Orbix 3 support VOS (Virtualization operating systems)?

Currently Orbix 3 (release 3.3.10) is not supported on any virtualization platforms.

22. Does interceptor capture SSL handshaking errors?

It is not possible to capture SSL handshaking errors programatically in Orbix as this is handled by the SSL toolkit and will fail before the connection is established and Orbix begins to pass the request through the interceptors in the binding list.

23. What soft_limit and hard_limit configuration settings apply for each Orbix process or for a sum of Orbix processes running in an Orbix domain?

These settings apply to each Orbix process for which these settings have been configured and not to the sum of Orbix processes running in an Orbix domain.
If these settings have been configured in the global configuration scope then these settings will apply to each process started in your Orbix domain.

24. Does server migration to new physical IP address also impact on Orbix?

By default IORs will contain the hostname of a machine. Using such an IOR will succeed without any problems since a hostname lookup will return the new IP address.
Ensure IORs of the CFR, Locator, etc. contain hostnames rather then IP addresses. Use the iordump tool shipped with Orbix in order to inspect the hostname/port contained in the IOR.

Download Interview PDF

25. Does clients using Orbix 3.x talk to servers using Orbix 2000?

Orbix 3 and later versions of Orbix (such as Orbix 6) have "on the wire" compatibility. Orbix 3 uses IIOP (Internet Inter-Orb Protocol) as it's default protocol. Hence an Orbix 3 client can speak to an Orbix 6 server and vice-versa.