I2JAV 1.3 MAILINGLIST Avatar
  1. OMG Issue

I2JAV13 — J2EE ORB Socket Factory API

  • Key: I2JAV13-9
  • Legacy Issue Number: 5108
  • Status: open  
  • Source: International Business Machines ( Ann Collins)
  • Summary:

    In order to meet the interoperability compliance requirements,
    ORBs must include an IIOP implementation using TCP/IP plain text
    sockets. J2EE implementations are required to support CSIv2 and
    thus need additional control over the sockets an ORB creates.
    It may be necessary

    • to get the ORB to listen on additional sockets, of differing
      types
    • to get the ORB to connect to alternative sockets, of different
      types, for a given IOR
    • for information about these sockets to be included in object
      references exported by the ORB
    • for socket data to be available to request interceptors, e.g
      SSL certificates

    Portable IORInterceptors can be used to add this information as
    tagged components in the profiles within an IOR.

    A mechanism is required to modify the ORB's behaviour to allow
    it to handle different socket types, listen on additional sockets,
    connect to alternative sockets and make additional data available
    to interceptors.

    Since this is a J2EE requirement which needs speedy resolution,
    it seems appropriate to resolve it by the addition of Java
    specific APIs in the IDL to Java specification. For example,

    • a pluggable ORB socket factory could be introduced which would
      be used whenever the ORB needed to create a serverSocket or an
      outbound socket for a given IOR or end point
    • a means of registering such a socket factory would be required.
      Options for this include:-
      . adding an ORB method: this may cause problems in initialisation
      . adding a Java specific extension to the PI ORBInitInfo interface
      so that the registration would need to be called from the
      pre_init/post_init methods in an ORBInitializer: this ties the
      Socket Factory with PIs, but both are likely to be required
      for J2EE.
    • a means of specifying ports on which an ORB/POA should listen
      would be useful but this may be infeasible as part of this issue
      due to the variety of ORB/POA implementations.
    • the PI Client and ServerRequestInfo and IORInfo interfaces may
      need to be extended to support access to Connection related data
  • Reported: I2JAV 1.1 — Tue, 9 Apr 2002 04:00 GMT
  • Updated: Wed, 11 Mar 2015 11:15 GMT