[omniORB] Interoperability problems with JacORB 1.4beta4
Mike Mascari
mascarm@mascari.com
Wed Aug 14 15:58:01 2002
Hello.
I'm having a bit of an interoperability problem using a JacORB 1.4beta4
client with omniORB4 beta2 (July 12th snapshot) and the Fixed point
type. I have the following IDL:
typedef fixed<16,4> Numeric;
typedef long long ID;
struct DBMachine {
ID machine;
ID store;
string name;
Numeric amount;
};
interface Manager {
...
ID addMachine(in DBMachine machine) raises (MyException);
...
};
My Java looks like:
-------------------
DBMachine machine = new DBMachine();
long result;
machine.machine = 0L;
machine.store = 5000000426L;
machine.name = "Test";
machine.amount = new BigDecimal("45.5000");
result = manager.addMachine(machine);
omniORB C++ clients work fine with omniORB servers sending and receiving
fixed-point data. The JacORB Java client also works fine receiving
fixed-point data. However, when I send fixed-point data, I get the
following exception thrown in the C++ omniORB server:
omniORB: throw MARSHAL from giopImpl12.cc:1132
(NO,MARSHAL_PassEndOfMessage)
Elsewhere, I have other Java code which attempts to send a struct with a
fixed-point member, and I get this in the server:
omniORB: throw MARSHAL from corbaFixed.cc:1231
(NO,MARSHAL_InvalidFixedValue)
Any clues? Should I post this on the JacORB mailing list as well?
Mike Mascari
mascarm@mascari.com