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

orb.list_initial_services() doesn't work with EBCDIC default encoding

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: P4 P4
    • None
    • 6
    • other-libs
    • None
    • sparc
    • solaris

      Filed By : JCK team
      JDK : java full version "1.6.0-b105"
      JCK : 6
      Platform[s] : Solaris-sparc
      switch/Mode : -Dfile.encoding=Cp037
      JCK test owner : http://javaweb.sfbay/jcce/tcks/jck/docs/others/owners.jto

      Problem description
      ===================
      Many JCK 6 Corba tests fail on Solaris-sparc under JDK-6 with -Dfile.encoding=Cp037 command-line switch.

      JCK test source location:
      ==========================
      /java/re/jck/6/archive/fcs/binaries/JCK-runtime-6

      How to reproduce:
      =================
      Please see minimized test below.

      Minimized test:
      ===============
      --- Test.java ---
      import java.io.UnsupportedEncodingException;
      import java.util.Arrays;
      import java.util.Properties;
      import org.omg.CORBA.ORB;

      public class Test {
       
          public static void main(String[] args) throws UnsupportedEncodingException {
              ORB orb = ORB.init(args, (Properties) null);
              System.out.println("Available services:"
                      + Arrays.toString(orb.list_initial_services()));
          }

      }
      --- end-of-Test.java ---

      --- Convertor.java ---
      import java.io.File;
      import java.io.FileInputStream;
      import java.io.FileOutputStream;
      import java.io.InputStreamReader;
      import java.io.OutputStreamWriter;

      public class Convertor {
          public static void main(String[] args) {
              // Args are: input_file, output_file
              try {
                  File source = new File(args[0]);
                  FileInputStream fis = new FileInputStream(source);
                  InputStreamReader isr = new InputStreamReader(fis, "Cp037");
                  
                  File dist = new File(args[1]);
                  FileOutputStream fos = new FileOutputStream(dist);
                  OutputStreamWriter osw = new OutputStreamWriter(fos, "ASCII");

                  int c;
                  while ((c = isr.read()) != -1) {
                      osw.write(c);
                  }
                  osw.flush();
                  System.exit(0);
              } catch (Exception e) {
                  System.err.println(e);
                  e.printStackTrace();
                  System.err.println("Usage: java Convertor input_file output_file");
              }
          }
      }
      --- end-of-Convertor.java ---

      Minimized test output:
      ======================
      > javac Test.java Convertor.java

      > tnameserv -ORBInitialPort 58415&
      [1] 28390
      >Initial Naming Context:
      IOR:000000000000002b49444c3a6f6d672e6f72672f436f734e616d696e672f4e616d696e67436f6e746578744578743a312e30000000000001000000000000009a000102000000000e31302e31362e3130362e32333200e42f00000045afabcb0000000020000f424000000001000000000000000200000008526f6f74504f41000000000d544e616d65536572766963650000000000000008000000010000000114000000000000020000000100000020000000000001000100000002050100010001002000010109000000010001010000000026000000020002
      TransientNameServer: setting port for initial object references to: 58415
      Ready.

      >java -cp . Test -ORBInitialPort 58415
      Available services:[DynAnyFactory, POACurrent, CodecFactory, NamingService, NameService, RootPOA, PICurrent]

      >java -Dfile.encoding=Cp037 Test -ORBInitialPort 58415 1>./resCP037.txt 2>&1 ;\
           java Convertor resCP037.txt resASCII.txt ; cat resASCII.txt
      Exception in thread "main" org.omg.CORBA.OBJECT_NOT_EXIST: ----------BEGIN server-side stack trace----------
      org.omg.CORBA.OBJECT_NOT_EXIST: vmcid: SUN minor code: 202 completed: No
              at com.sun.corba.se.impl.logging.ORBUtilSystemException.badServerId(ORBUtilSystemException.java:8133)
              at com.sun.corba.se.impl.logging.ORBUtilSystemException.badServerId(ORBUtilSystemException.java:8155)
              at com.sun.corba.se.impl.orb.ORBImpl.handleBadServerId(ORBImpl.java:1447)
              at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.checkServerId(CorbaServerRequestDispatcherImpl.java:391)
              at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:166)
              at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1680)
              at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1540)
              at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:860)
              at com.sun.corba.se.impl.protocol.giopmsgheaders.RequestMessage_1_0.callback(RequestMessage_1_0.java:142)
              at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:694)
              at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.dispatch(SocketOrChannelConnectionImpl.java:451)
              at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.doWork(SocketOrChannelConnectionImpl.java:1187)
              at com.sun.corba.se.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:398)

      ----------END server-side stack trace---------- vmcid: SUN minor code: 202 completed: No
              at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
              at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
              at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
              at com.sun.corba.se.impl.protocol.giopmsgheaders.MessageBase.getSystemException(MessageBase.java:902)
              at com.sun.corba.se.impl.protocol.giopmsgheaders.ReplyMessage_1_0.getSystemException(ReplyMessage_1_0.java:94)
              at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.getSystemExceptionReply(CorbaMessageMediatorImpl.java:572)
              at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.processResponse(CorbaClientRequestDispatcherImpl.java:430)
              at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete(CorbaClientRequestDispatcherImpl.java:326)
              at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:129)
              at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.invoke(BootstrapResolverImpl.java:89)
              at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.list(BootstrapResolverImpl.java:126)
              at com.sun.corba.se.impl.resolver.CompositeResolverImpl.list(CompositeResolverImpl.java:30)
              at com.sun.corba.se.impl.resolver.CompositeResolverImpl.list(CompositeResolverImpl.java:30)
              at com.sun.corba.se.impl.resolver.CompositeResolverImpl.list(CompositeResolverImpl.java:30)
              at com.sun.corba.se.impl.orb.ORBImpl.list_initial_services(ORBImpl.java:1131)
              at Test.main(Test.java:10)

            Unassigned Unassigned
            agavrilosunw Alexey Gavrilov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: