Invalid Command Name "makeUpocInstance"?

Clovertech Forums Read Only Archives Cloverleaf Cloverleaf Invalid Command Name "makeUpocInstance"?

  • Creator
    Topic
  • #51046
    Deborah Ingram
    Participant

      Code:

      result= ‘invalid command name “makeUpocInstance”‘

      errorInfo: ‘
      invalid command name “makeUpocInstance”
         while executing
      “makeUpocInstance $className TPS $__userArgsCfgs”
         (procedure “cljTPS” line 29)
         invoked from within


      Anybody seen this one before? I think it might be related to a classpath issue maybe?  

      Basically trying to use the Java protocol UPOC and cloverleaf acts like its missing one of its own libraries or something

      thx.

    Viewing 7 reply threads
    • Author
      Replies
      • #68560
        David Barr
        Participant

          I saw a similar error when someone ran “mktclindex” in $HCIROOT/tclprocs.  Maybe that’s what happened to you.

        • #68561
          Russ Ross
          Participant

            As David mentioned running a mktclindex when in the $HCIROOT/tclprocs directory has the undesired effect of removing valid entries from the file $HCIROOT/tclprocs/tclIndex because some of the source TCL files are located in different directories.

            Here are some of the entreis that will get removed that you can check for to see if they are missing from your $HCIROOT/tclprocs/tclIndex file; there maybe others but this will help you know if someone did a mktclindex in $HCIROOT/tclprocs.

            Code:

            set auto_index(cljTPS) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(cljXLTStrings) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(cljXLTObjects) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(cljTrxid) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetStrings_grm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetStrings_xpm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetObjects_grm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetObjects_xpm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetString_grm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetString_xpm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetObject_grm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(Rm_GetObject_xpm) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(SpliceStacks) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(jtpsRun) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(jtpsStart) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(jtpsTime) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]
            set auto_index(jtrxidProcess) [list SourceFilter [file join $dir ../tcl/lib/tfc/cloverleafJava.tcl]]

            What I did to help protect against someone running mktclindex in $HCIROOT/tclprocs was as follows:

            cd $HCIROOT/tclprocs

            cp -p tclIndex tclIndex_2008.09.09_original

            chmod 555 tclIndex

            If you confirm your $HCIROOT/tclprocs is missing the Java entries then you will need to try and recover the original tclIndex entires or file perhpas from HealthVision or cloverthech if you can specify which version of cloverleaf you need it for.

            I have the original one for Cloverleaf 5.6 rev2 that runs on AIX 5.3.

            Russ Ross
            RussRoss318@gmail.com

          • #68562
            Deborah Ingram
            Participant

              I had some more time to look into this.  In the testing tool everything works great but in the site it fails.  This is using the testing tool in the same site that it fails in :(.  Kind of has me stumped on why I don’t get the MakeUPocInstance error in the testing tool with the same args and context but it does do it in the site..  Any ideas?

            • #68563
              Levy Lazarre
              Participant

                I am struggling with the same error (CIS 5.4 Rev 1). I verified that all the Java entries are in the tclIndex, so this is not my problem. Even the Test tool gives me the error.

                I have a case pending with HV Support, but they haven’t found the source of the problem yet.

                sourceFilter /opt/quovadx/qdx5.4/integrator/tclprocs/../tcl/lib/tfc/cloverleafJava.tcl: Failed to source filtered file: couldn’t load file “/opt/quovadx/qdx5.4/integrator/bin/libcljava.sl”: exec format error

                invalid command name “makeUpocInstance”

                   while executing

                “makeUpocInstance $className TPS $__userArgs”

                   (procedure “cljTPS” line 14)

                   invoked from within

                “cljTPS {MSGID message0} {CONTEXT sms_ib_data} {ARGS {{CLASS HL7TPS}}} {MODE run} {VERSION 3.0}”‘

                /usr/lib/dld.sl: Can’t shl_load() a library containing Thread Local Storage: /opt/quovadx/qdx5.4/integrator/clgui/java/lib/PA_RISC/server/libjvm.sl

                /usr/lib/dld.sl: Exec format error

              • #68564
                Russ Ross
                Participant

                  I noticed the name of the files in your error messages are having a problem with filenames that end in “.sl”.

                  For example:

                      libcljava.sl

                      libjvm.sl

                  I’m on AIX and my files end in “.so” and not “.sl”

                  For example:

                      libcljava.so

                      libjvm.so

                  You might want to do the following to see if filenames really end in “.sl” or “.so”

                      cd $HCIROOT

                      find . -name “libcljava*”

                      find . -name “libjvm*”

                  This will help you determine if the calling module has a “.sl” typo that needs to be corrected to “.so”.

                  You can also check the permissions of the file to be sure they are proper.

                  Mine have the following permissions

                      -rwxrwxr-x     hci     staff     libcljava.so

                      -rwxrwxr-x     hci     staff     libjvm.so

                  Russ Ross
                  RussRoss318@gmail.com

                • #68565
                  Levy Lazarre
                  Participant

                    Russ,

                    Thanks four the suggestion.

                    When I got those errors, I checked for file existence and file permissions.

                    We are on HP-UX and the library files end with .sl

                    My files have the same permissions as yours.

                    So far we have not made any progress.

                  • #68566
                    Levy Lazarre
                    Participant

                      I meant “Thanks for the suggestion”. I should read before clicking “Submit”!!!

                    • #68567
                      Levy Lazarre
                      Participant

                        Deborah,

                        It appears that the GUI test tool is looking at QDXI_CLASSPATH to find the java classes, while the site may be looking at CLASSPATH.

                        Can you verify that all the java classes present in QDXI_CLASSPATH are also present in CLASSPATH?

                        Usually, I set up all my classes in CLASSPATH, then simply make QDXI_CLASSPATH equal to CLASSPATH.

                        If you add new classes to CLASSPATH, you need to make the updated environment variable available to the hci user. I am on HP-UX and I just add a line to .profile.local.end and export the environment variable.

                        I found that if I added new classes to QDXI_CLASSPATH, I needed to add a line to the .profile.local.end file, then stop and restart the host server (hciss -k h, hciss -s h) to make the new classes available to the GUI tester.

                        Please try updating your CLASSPATH and see if it helps.

                    Viewing 7 reply threads
                    • The forum ‘Cloverleaf’ is closed to new topics and replies.