🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.java.corba
Article #46

output parameter causing org.omg.CORBA.BAD_PARAM

#46
From: donalmurtagh
Date: Fri, 27 Oct 2006 16:43
74 lines
3524 bytes
Hi,

I'm having a problem with the valErrors out parameter in the following
IDL operation:

		boolean submit(in SMSProvExt::WorkOrderData wo,
			in boolean isNew,
			out string woName,
			out SMSProvExt::ValErrorList valErrors)
			raises(ApplError);

On the client side, I pass in the following value:

ValErrorListHolder valErrors = new ValErrorListHolder();


If the server implementation returns an empty list then everything
works fine:

    public boolean submit(WorkOrderData wo, boolean isNew, StringHolder
woName, ValErrorListHolder valErrors) throws ApplError {

        woName.value = "";

        ValError[] errors = new ValError[0];
        valErrors.value = errors;
        return true;
    }


However if the server implementation return a non-empty list, for
example:

    public boolean submit(WorkOrderData wo, boolean isNew, StringHolder
woName, ValErrorListHolder valErrors) throws ApplError {

        woName.value = "";

        ValError[] errors = new ValError[1];

        errors[0] = new ValError();
        errors[0].valErrNo = 23;
        errors[0].valErrMsg = "Some error";

        valErrors.value = errors;
        return true;
    }

Then when the client calls submit(), the following exception is thrown:


org.omg.CORBA.BAD_PARAM:   vmcid: 0x0  minor code: 0  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:494)
        at java.lang.Class.newInstance0(Class.java:350)
        at java.lang.Class.newInstance(Class.java:303)
        at com.inprise.vbroker.orb.SE.read(Unknown Source)
        at com.inprise.vbroker.orb.DelegateImpl.handleReply(Unknown
Source)
        at com.inprise.vbroker.orb.DelegateImpl.invoke(Unknown Source)
        at
org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:457)

I'm using Visibroker, and both the client and server are implemented in
Java 5.
Thanks in advance for any suggestions!

- DM
Technical Details
Message-ID: <1161967403.171452.40360@h48g2000cwc.googlegroups.com>
Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!h48g2000cwc.googlegroups.com!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Thread: 108bbb,ce8576150c069497,start
X-Google-Thread: f753e,ce8576150c069497,start
X-Google-Thread: 109156,ce8576150c069497,start
X-Google-Attributes: gid108bbb,gidf753e,gid109156,public
X-Google-Language: ENGLISH,ASCII-7-bit
Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!h48g2000cwc.googlegroups.com!not-for-mail
From: donalmurtagh@yahoo.co.uk
Newsgroups: comp.lang.java.corba,comp.object.corba,borland.public.visibroker
Subject: output parameter causing org.omg.CORBA.BAD_PARAM
Date: 27 Oct 2006 09:43:23 -0700
Organization: http://groups.google.com
Lines: 75
Message-ID: <1161967403.171452.40360@h48g2000cwc.googlegroups.com>
NNTP-Posting-Host: 216.13.50.116
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
X-Trace: posting.google.com 1161967409 27444 127.0.0.1 (27 Oct 2006 16:43:29 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Fri, 27 Oct 2006 16:43:29 +0000 (UTC)
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7,gzip(gfe),gzip(gfe)
Complaints-To: groups-abuse@google.com
Injection-Info: h48g2000cwc.googlegroups.com; posting-host=216.13.50.116;
   posting-account=S2ECIAwAAAAoNqiUN1QpoHiXo33plG9k