Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4499930

REGRESSION: ORB.resolve_initial_references() throws NullPointerException

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P3 P3
    • None
    • 1.4.0
    • other-libs



      Name: nt126004 Date: 09/05/2001


      java version "1.4.0-beta2"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta2-b77)
      Java HotSpot(TM) Client VM (build 1.4.0-beta2-b77, mixed mode)


      A NullPointerException is thrown when the method
      ORB.resolve_initial_references() is called and a non jdk nameserver like
      omniNames is used.

      1. Exact steps to reproduce the problem:
         - Obtain a copy of OmniORB3 at:
           http://www.uk.research.att.com/omniORB
         - Run OmniORB3 nameserver omniNames:
           omniNames -start 12345 -logdir /tmp
         - Compile and run your example NameClientList.java

      2. Java SOURCE CODE that demonstrates the problem:
      import java.util.Properties;
      import org.omg.CORBA.*;
      import org.omg.CosNaming.*;
       
      public class NameClientList
      {
         public static void main(String args[])
         {
            try {
              Properties props = new Properties();
              props.put("org.omg.CORBA.ORBInitialPort", "12345");
              ORB orb = ORB.init(args, props);
       
              NamingContext nc = NamingContextHelper.narrow(
                  orb.resolve_initial_references("NameService"));
       
              BindingListHolder bl = new BindingListHolder();
              BindingIteratorHolder blIt= new BindingIteratorHolder();
              nc.list(1000, bl, blIt);
       
              Binding bindings[] = bl.value;
              if (bindings.length == 0) return;
       
              for (int i=0; i < bindings.length; i++) {
       
                  // get the object reference for each binding
                  org.omg.CORBA.Object obj = nc.resolve(bindings[i].binding_name);
                  String objStr = orb.object_to_string(obj);
                  int lastIx = bindings[i].binding_name.length-1;
                  // check to see if this is a naming context
                  if (bindings[i].binding_type == BindingType.ncontext) {
                      System.out.println( "Context: " +
                          bindings[i].binding_name[lastIx].id);
                  } else {
                      System.out.println("Object: " +
                          bindings[i].binding_name[lastIx].id);
                  }
              }
       
             } catch (Exception e) {
                  e.printStackTrace(System.err);
             }
         }
      }

      3. Exact text of any error message(s) that appeared:

         - Using the j2sdk1.4.0 beta2:

       /usr/local/java/j2sdk1.4.0_beta2/bin/java NameClientList
      java.lang.NullPointerException
              at
      com.sun.corba.se.internal.iiop.IIOPConnection.getResponse(IIOPConnection.java:641)
              at
      com.sun.corba.se.internal.iiop.IIOPOutputStream.invoke(IIOPOutputStream.java:124)
              at
      com.sun.corba.se.internal.iiop.ClientRequestImpl.invoke(ClientRequestImpl.java:79)
              at
      com.sun.corba.se.internal.corba.ClientDelegate.invoke(ClientDelegate.java:228)
              at
      com.sun.corba.se.internal.corba.ClientDelegate.invoke(ClientDelegate.java:270)
              at
      com.sun.corba.se.internal.corba.InitialNamingClient.resolve(InitialNamingClient.java:1019)
              at
      com.sun.corba.se.internal.corba.InitialNamingClient.resolveUsingBootstrapProtocol(InitialNamingClient.java:690)
              at
      com.sun.corba.se.internal.corba.InitialNamingClient.cachedInitialReferences(InitialNamingClient.java:1088)
              at
      com.sun.corba.se.internal.corba.InitialNamingClient.resolve_initial_references(InitialNamingClient.java:981)
              at
      com.sun.corba.se.internal.corba.ORB.resolve_initial_references(ORB.java:2358)
              at NameClientList.main(NameClientList.java:15)


         - Using the j2sdk1.4.0 beta1 (build 1.4.0-beta-b65) works without problems
      (Review ID: 131251)
      ======================================================================

            hputtaswsunw Hemanth Puttaswamy (Inactive)
            nthompsosunw Nathanael Thompson (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: