HELP!!!!
I have the following idl :
module someModule {
typedef sequence<octet> Data;
struct SomeStructure {
Data file;
string info;
};
typedef sequence<SomeStructure> results;
interface someObject {
get(in string infotoget, out results results_out, out unsigned long
numberOfItems);
};
};
get the error message :
org.omg.CORBA.UNKNOWN: vmcid: SUN minor code: 202 completed: Maybe
Test2 Client Error:
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:274)
at java.lang.Class.newInstance0(Class.java:308)
at java.lang.Class.newInstance(Class.java:261)
at com.sun.corba.se.internal.iiop.messages.ReplyMessage_1_2.getSystemException(ReplyMessage_1_2.java:90)
at com.sun.corba.se.internal.iiop.ClientResponseImpl.getSystemException(ClientResponseImpl.java:105)
at com.sun.corba.se.internal.corba.ClientDelegate.invoke(ClientDelegate.java:314)
at org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:457)
at someModule._someObjectStub.get(_someObjectStub.java:20)
at Test2Client.main(Test2Client.java:54)
Server code :
-------------
import org.omg.CORBA.IntHolder;
import someModule.SomeStructure;
import someModule._someObjectImplBase;
public class TestServant extends _someObjectImplBase{
public void get(String toget, someModule.resultsHolder results_out, org.omg.CORBA.IntHolder numberOfItems)
{
System.out.println("inside get : " + toget);
someModule.SomeStructure[] srs_array = new someModule.SomeStructure[1];
srs_array[0].info = "EMPTY";
// create array for octet sequence
byte[] data_array = new byte[1];
data_array[0] = 0;
srs_array[0].file = data_array;
results_out = new someModule.resultsHolder(srs_array);
numberOfItems = new IntHolder(0);
}
}
client :
import org.omg.CORBA.ORB;
import org.omg.CosNaming.NameComponent;
import org.omg.CosNaming.NamingContext;
import org.omg.CosNaming.NamingContextHelper;
import someModule.someObjectHelper;
import someModule.someObjectOperations;
public class Test2Client {
public static void main(String[] args) {
try {
System.out.println("in Test2Client");
// create and initialize the ORB
ORB orb = ORB.init(args, null);
System.out.println("after ORB inited");
// get the root naming context
org.omg.CORBA.Object objRef =
orb.resolve_initial_references("NameService");
System.out.println("after Name Service resolved");
NamingContext ncRef = NamingContextHelper.narrow(objRef);
// The below name is the name used on the server
// when it registers with the Naming Service
NameComponent nc = new NameComponent("SearchServer", " ");
// Resolve the object reference in naming
NameComponent path[] = {nc};
// Here create an object to call operations defined in idl
someObjectOperations someObject =
someObjectHelper.narrow(ncRef.resolve(path));
String get_str = "Test get string";
someModule.resultsHolder srh = new someModule.resultsHolder();
org.omg.CORBA.IntHolder ih = new org.omg.CORBA.IntHolder();
System.out.println("before get called");
someObject.get(get_str, srh, ih);
System.out.println("after get called");
} catch(Exception e) {
System.out.println("Test2 Client Error: " + e.getMessage());
e.printStackTrace();
}
}
}
I have the following idl :
module someModule {
typedef sequence<octet> Data;
struct SomeStructure {
Data file;
string info;
};
typedef sequence<SomeStructure> results;
interface someObject {
get(in string infotoget, out results results_out, out unsigned long
numberOfItems);
};
};
get the error message :
org.omg.CORBA.UNKNOWN: vmcid: SUN minor code: 202 completed: Maybe
Test2 Client Error:
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:274)
at java.lang.Class.newInstance0(Class.java:308)
at java.lang.Class.newInstance(Class.java:261)
at com.sun.corba.se.internal.iiop.messages.ReplyMessage_1_2.getSystemException(ReplyMessage_1_2.java:90)
at com.sun.corba.se.internal.iiop.ClientResponseImpl.getSystemException(ClientResponseImpl.java:105)
at com.sun.corba.se.internal.corba.ClientDelegate.invoke(ClientDelegate.java:314)
at org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:457)
at someModule._someObjectStub.get(_someObjectStub.java:20)
at Test2Client.main(Test2Client.java:54)
Server code :
-------------
import org.omg.CORBA.IntHolder;
import someModule.SomeStructure;
import someModule._someObjectImplBase;
public class TestServant extends _someObjectImplBase{
public void get(String toget, someModule.resultsHolder results_out, org.omg.CORBA.IntHolder numberOfItems)
{
System.out.println("inside get : " + toget);
someModule.SomeStructure[] srs_array = new someModule.SomeStructure[1];
srs_array[0].info = "EMPTY";
// create array for octet sequence
byte[] data_array = new byte[1];
data_array[0] = 0;
srs_array[0].file = data_array;
results_out = new someModule.resultsHolder(srs_array);
numberOfItems = new IntHolder(0);
}
}
client :
import org.omg.CORBA.ORB;
import org.omg.CosNaming.NameComponent;
import org.omg.CosNaming.NamingContext;
import org.omg.CosNaming.NamingContextHelper;
import someModule.someObjectHelper;
import someModule.someObjectOperations;
public class Test2Client {
public static void main(String[] args) {
try {
System.out.println("in Test2Client");
// create and initialize the ORB
ORB orb = ORB.init(args, null);
System.out.println("after ORB inited");
// get the root naming context
org.omg.CORBA.Object objRef =
orb.resolve_initial_references("NameService");
System.out.println("after Name Service resolved");
NamingContext ncRef = NamingContextHelper.narrow(objRef);
// The below name is the name used on the server
// when it registers with the Naming Service
NameComponent nc = new NameComponent("SearchServer", " ");
// Resolve the object reference in naming
NameComponent path[] = {nc};
// Here create an object to call operations defined in idl
someObjectOperations someObject =
someObjectHelper.narrow(ncRef.resolve(path));
String get_str = "Test get string";
someModule.resultsHolder srh = new someModule.resultsHolder();
org.omg.CORBA.IntHolder ih = new org.omg.CORBA.IntHolder();
System.out.println("before get called");
someObject.get(get_str, srh, ih);
System.out.println("after get called");
} catch(Exception e) {
System.out.println("Test2 Client Error: " + e.getMessage());
e.printStackTrace();
}
}
}