That makes perfect sense.  I am only handling UniSessionException and 
UniSubroutineException in the routine.  If I am understanding correctly, I 
should add a catchall exception.  Sort of a KitchenSinkException to 
account for other exceptions.

Thanks a lot.


Charles Shaffer
Senior Analyst
NTN-Bower Corporation




David Beahm <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]
08/18/2008 09:29 PM
Please respond to u2-users

 
        To:     u2-users@listserver.u2ug.org
        cc: 
        Subject:        [U2] Re: U2 Users Digest V1 #2326


Charles-
As I read it, the unhandled exception is happening within the U2 object 
when you are trying to execute the Java method PbrGetMgrList.

I never heard of JavaBridge before, but after reading the requirements 
at http://php-java-bridge.sourceforge.net/doc/overview.php, I don't 
think that is the source of the problem (java.inc is a PHP include file, 
and might be referenced through a URL such as 
|once("http://localhost:9090/JavaBridge/java/Java.inc";);|).  You can 
verify that the JavaBridge is working by calling a Java method outside 
of the U2 object prior to calling the PbrGetMgrList method; if it works, 
then something is happening to your U2 object.  I don't have enough to 
troubleshoot any further at this point.

HTH,
David Beahm

> Date: Fri, 15 Aug 2008 11:23:41 -0500
> From: [EMAIL PROTECTED]
> Subject: [U2] Uniobjects for Java
>
> Hello,
>
> I am accessing our Unidata server from PHP using the java bridge for a 
few 
> months  It has been working pretty well up until the current project I 
am 
> working on.
>
> PHP calls a method in a U2 object, which uses Uniobjects for Java to 
> invoke a UniBasic Subroutine on our Unidata 7.1 redhat based server. 
> Recently I have intermittently received the following error message. 
> ******************************************************
> Fatal error: Uncaught [[o:Exception]:"java.lang.Exception: Invoke 
failed: 
> [[o:U2]]->PbrGetMgrList. 
> Cause: java.lang.NoSuchMethodException: PbrGetMgrList(). 
> Candidates: 
> [] Responsible VM: [EMAIL PROTECTED]://java.sun.com/" at: 
> #-5 php.java.bridge.JavaBridge.Invoke(JavaBridge.java:1045) 
> #-4 php.java.bridge.Request.handleRequest(Request.java:405) 
> #-3 php.java.bridge.Request.handleRequests(Request.java:481) 
> #0 java.inc(257): java_ThrowExceptionProxyFactory->getProxy(52, '@N', 
> true) 
> #1 java.inc(473): java_Arg->getResult(true) 
> #2 java.inc(479): java_Client->getWrappedResult(true) 
> #3 java.inc(672): java_Client->getResult() 
> #4 java.inc(1786): java_Client->invokeMethod(51, 'PbrGetMgrList', Array) 

> #5 java.inc(1910): java_JavaProxy->__call('PbrGetMgrList', Array) 
> #6 java.inc(2072): java_AbstractJava->__call('PbrGetMgrList', Array) 
> #7 [internal function]: Java->__call('PbrGetMgrList', Array) 
> #8 /var/www/pbr/pbr.php(14): Java->PbrGetMgrList() 
> #9 {main}] thrown in java.inc on line 220
> ********************************************************
> I am not sure what this is referring to.  I don't find a java.inc 
anywhere 
> on the web server host.
>
> This works most of the time, but sometimes not.  and I don't see a 
> pattern.  Most of the time it can be "fixed" by recompiling and 
rejarring 
> the Java object, but that doesn't always fix it.  One thing I wondered 
> about is that this is the first time that I have called a program with 
no 
> input parameters.
>
> Here is the java code.
>
> /**
>  * @param                       none
>  * @return          Tab delimited list of MGR_NAMES
>  */
> public String PbrGetMgrList() {
>         String result = "";
>         try {
>                 OpenU2Session();
>                 UniSubroutine uSub = 
uSession.subroutine("PbrGetMgrList", 
> 1);
>                 uSub.call();
>                 result = uSub.getArg(0);
>                 CloseU2Session();
>         } catch (UniSessionException e) {
>                 result = "N";
>         } catch (UniSubroutineException e) {
>                 result = "N";
>         } finally {
>                 return result;
>         }
> }
>
> Here is the UniBassic Subroutine code
>
> $BASICTYPE 'U'
> SUBROUTINE PbrGetMgrList(RESULT)
>         ****************************
>         * Tab delimits data items
>         EQU HTAB        TO CHAR(9)
>
>         ************************************
>         * Select records for this supervisor
>         ************************************
>         RESULT = 'N'
>         ECMD = "SELECT MGRACCT.DATA SAVING UNIQUE NAME"
>         EXECUTE ECMD
>         IF @SYSTEM.RETURN.CODE <= 0 THEN RETURN
> 
>         ***********************************
>         *  Build the list
>         ***********************************
>         RESULT = ''
>         FIRST = 1
>         LOOP
>                 READNEXT ID ELSE ID = ''
>         UNTIL ID = ''
>                 * Insert a delimiter unless this is the first record
>                 IF FIRST = 0 THEN
>                         RESULT := HTAB
>                 END ELSE
>                         FIRST = 0
>                 END
>                 * ADD THE ID
>                 RESULT := ID
>         REPEAT
> RETURN
>
> I suspect that an exception is happening that is not being handled.  Any 

> ideas?
> 
> Senior Analyst
> NTN-Bower Corporation
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

This email was Anti Virus checked by Astaro Security Gateway. 
http://www.astaro.com
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to