21⟩ Does Orbix 3 support VOS (Virtualization operating systems)?
Currently Orbix 3 (release 3.3.10) is not supported on any virtualization platforms.
“Orbix frequently Asked Questions in various Orbix job Interviews by interviewer. Get preparation of Orbix job interview”
Currently Orbix 3 (release 3.3.10) is not supported on any virtualization platforms.
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.
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.
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.
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.
Orbix 6.3 has not been tested to run with Java Applets and is unsupported.
Clients can locate CORBA objects through the OrbixNames, which is Orbix's implementation of the CORBA Naming Service.
"OrbixNames allows you to set up groups of objects that can provide particular services to a client. When a client requests an object from a group, OrbixNames selects an object using a random or a round-robin load-balancing algorithm. You choose the algorithm associated with each group".
Clients can locate CORBA objects through the OrbixNames, which is Orbix's implementation of the CORBA Naming Service.
"OrbixNames allows you to set up groups of objects that can provide particular services to a client. When a client requests an object from a group, OrbixNames selects an object using a random or a round-robin load-balancing algorithm. You choose the algorithm associated with each group".
Clients can locate CORBA objects through the OrbixNames, which is Orbix's implementation of the CORBA Naming Service.
"OrbixNames allows you to set up groups of objects that can provide particular services to a client. When a client requests an object from a group, OrbixNames selects an object using a random or a round-robin load-balancing algorithm. You choose the algorithm associated with each group".
The ORB properties can be set in one of the following ways:
★ Using the iona.properties file
★ Using Java interpreter arguments
As SUN's ORB runtime cannot be used with Orbix applications, configure the JDK to use the Orbix ORB runtime instead by setting system properties org.omg.CORBA.ORBClass and org.omg.CORBA.ORBSingletonClass to the appropriate values.
As SUN's ORB runtime cannot be used with Orbix applications, configure the JDK to use the Orbix ORB runtime instead by setting system properties org.omg.CORBA.ORBClass and org.omg.CORBA.ORBSingletonClass to the appropriate values.
OAccessing the local address on the client-side, e.g. in an interceptor can be achieved by using the following code:
CORBA::Object_var obj = orb->resolve_initial_references("IT_IPTransport");
if (CORBA::is_nil(obj))
{
self_addr = (const char*) 0;
return;
}
IT_ATLI2_IP::IPTransport_ptr ip_transport = IT_ATLI2_IP::IPTransport::_narrow(obj);
if (CORBA::is_nil(ip_transport))
{
self_addr = (const char*) 0;
return;
}
CORBA::String_var hostname = ip_transport->local_node_name();
IT_ATLI2_IP::IPAddressSeq_var ip_addresses =
ip_transport->name_to_addresses(
hostname,
0,
IT_ATLI2_IP::PROTOCOL_TCP,
IT_UtcT::never()
);
IT_ATLI2_IP::IPAddress_var ip_address = ip_addresses[0];
self_addr = ip_address->node_literal();
Yes, the port of the Orbix Notification service can be changed easily during the Orbix domain deployment process. Running itconfigure in expert mode allows you to change the IIOP port of the Orbix Notification Service. For further information please see the chapter "Creating a Domain in Expert Mode" in the Orbix Deployment Guide and the chapter "Managing the Notification Service" in the Enterprise Messaging Guide.
Orbix 5 and Orbix 6 is designed to write multi-threaded (and single threaded) application from the ground up. However, the following describes in more details about Orbix thread safety:
All Orbix library public APIs are thread safe.
Per CORBA specification, add_ref/remove_ref operations in the idl generated code is thread safe.
Regarding the rest of the generated code, Orbix IDL -> C++ code generator generates mappings for user-defined IDL types, as well as client-side proxy invocation code (-base switch) and server-side servant dispatch code (-poa switch). The client-side invocation code and server-side dispatch code are thread-safe. The mappings generated for user-defined IDL types are not thread safe for concurrent modification but are thread-safe for concurrent reads.
To get all the Orbix configuration for a domain, run the following command:
itadmin config dump
This will work in both CFR and file based domains.
The output will look something like:
★ plugins:it_arm_interceptors:shlib_name = "it_arm_interceptors"
★ plugins:itrp:shlib_name = "it_itrp"
★ plugins:itrp:live_time = "2"
★ plugins:it_mbean_monitoring:shlib_name = "it_mbean_monitoring"
★ plugins:it_mbean_monitoring:ClassName = "com.iona.management.logging.mbean_monitoring.MBeanMonitoringPlugIn"
★ plugins:basic_codeset:shlib_name = "it_basic_codeset"
★ plugins:basic_codeset:ClassName = "com.iona.corba.codeset.BasicCodeSetPlugIn"
★ plugins:iiop_tls:ClassName = "com.iona.corba.iiop.tls.IIOPTLSPlugIn"
★ plugins:iiop_tls:shlib_name = "it_iiop_tls"