Now I can log in...so here is the brief version of my problem again ( I sent the verbose version to your gmail account):
I have successfully created and tested an ATL coclass which has a standard COM callback mechanism. The Test programme in c++ runs a treat ( connect to coclass call a method that gets the callback called). But the same thing done using Java and J-interop produces the following j-interop log entries:
Jul 18, 2007 11:40:58 AM Thread: Thread-8
WARNING: Oxid Resolver Thread: Socket Closed , on thread Id: Thread-8
Jul 18, 2007 11:41:03 AM Thread: Thread-10
SEVERE: Exception occured: -1073610706
Jul 18, 2007 11:41:03 AM RemUnknownObject read
SEVERE: The procedure number is out of range. [0xC002002E]
org.jinterop.dcom.common.JIJavaCoClass.invokeMethod(JIJavaCoClass.java:512)
org.jinterop.dcom.core.RemUnknownObject.read(JIComOxidRuntimeHelper.java:535)
ndr.NdrObject.decode(NdrObject.java:19)
org.jinterop.dcom.transport.JIComRuntimeEndpoint.processRequests(JIComRuntimeEndpoint.java:107)
org.jinterop.dcom.core.JIComOxidRuntimeHelper$2.run(JIComOxidRuntimeHelper.java:116)
java.lang.Thread.run(Thread.java:534)
Although I doubt it, is the cause of this particular callback
problem due to the use, which works with the c++ tester programme, of
calling the coclass interface method ( that calls the callback )inside of the same thread that originally created the coclass via j-interop?
Any help you might be able to give would be much appreciated.
Regards,
Andy
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Jul 18, 2007 11:41:03 AM Thread: Thread-10
SEVERE: Exception occured: -1073610706
Jul 18, 2007 11:41:03 AM RemUnknownObject read
SEVERE: The procedure number is out of range. [0xC002002E]
org.jinterop.dcom.common.JIJavaCoClass.invokeMethod(JIJavaCoClass.java:512)
org.jinterop.dcom.core.RemUnknownObject.read(JIComOxidRuntimeHelper.java:535)
ndr.NdrObject.decode(NdrObject.java:19)
org.jinterop.dcom.transport.JIComRuntimeEndpoint.processRequests(JIComRuntimeEndpoint.java:107)
org.jinterop.dcom.core.JIComOxidRuntimeHelper$2.run(JIComOxidRuntimeHelper.java:116)
java.lang.Thread.run(Thread.java:534)
Means that the IDL operation number sent by COM client to you does not match your implementation of that particular interface at the Java end. Please show me the IDL for this interface and your code for making it's interface pointer (JIInterfaceDefinition)...
Thanks,
best regards,
Vikram
ps: If you don't want to make it public , please mail me at vikram.roopchand@gmail.com.
pps: This is not a big issue :)...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Vikram,
Now I can log in...so here is the brief version of my problem again ( I sent the verbose version to your gmail account):
I have successfully created and tested an ATL coclass which has a standard COM callback mechanism. The Test programme in c++ runs a treat ( connect to coclass call a method that gets the callback called). But the same thing done using Java and J-interop produces the following j-interop log entries:
Jul 18, 2007 11:40:58 AM Thread: Thread-8
WARNING: Oxid Resolver Thread: Socket Closed , on thread Id: Thread-8
Jul 18, 2007 11:41:03 AM
SEVERE: de.miditec.jinterop.divar._IChildEvents.ChildSays(org.jinterop.dcom.core.JIString)
java.lang.Class.getDeclaredMethod(Class.java:1264)
org.jinterop.dcom.common.JIJavaCoClass.invokeMethod(JIJavaCoClass.java:477)
org.jinterop.dcom.core.RemUnknownObject.read(JIComOxidRuntimeHelper.java:535)
ndr.NdrObject.decode(NdrObject.java:19)
org.jinterop.dcom.transport.JIComRuntimeEndpoint.processRequests(JIComRuntimeEndpoint.java:107)
org.jinterop.dcom.core.JIComOxidRuntimeHelper$2.run(JIComOxidRuntimeHelper.java:116)
java.lang.Thread.run(Thread.java:534)
Jul 18, 2007 11:41:03 AM Thread: Thread-10
SEVERE: Exception occured: -1073610706
Jul 18, 2007 11:41:03 AM RemUnknownObject read
SEVERE: The procedure number is out of range. [0xC002002E]
org.jinterop.dcom.common.JIJavaCoClass.invokeMethod(JIJavaCoClass.java:512)
org.jinterop.dcom.core.RemUnknownObject.read(JIComOxidRuntimeHelper.java:535)
ndr.NdrObject.decode(NdrObject.java:19)
org.jinterop.dcom.transport.JIComRuntimeEndpoint.processRequests(JIComRuntimeEndpoint.java:107)
org.jinterop.dcom.core.JIComOxidRuntimeHelper$2.run(JIComOxidRuntimeHelper.java:116)
java.lang.Thread.run(Thread.java:534)
Although I doubt it, is the cause of this particular callback
problem due to the use, which works with the c++ tester programme, of
calling the coclass interface method ( that calls the callback )inside of the same thread that originally created the coclass via j-interop?
Any help you might be able to give would be much appreciated.
Regards,
Andy
HI Andy,
This :-
Jul 18, 2007 11:41:03 AM Thread: Thread-10
SEVERE: Exception occured: -1073610706
Jul 18, 2007 11:41:03 AM RemUnknownObject read
SEVERE: The procedure number is out of range. [0xC002002E]
org.jinterop.dcom.common.JIJavaCoClass.invokeMethod(JIJavaCoClass.java:512)
org.jinterop.dcom.core.RemUnknownObject.read(JIComOxidRuntimeHelper.java:535)
ndr.NdrObject.decode(NdrObject.java:19)
org.jinterop.dcom.transport.JIComRuntimeEndpoint.processRequests(JIComRuntimeEndpoint.java:107)
org.jinterop.dcom.core.JIComOxidRuntimeHelper$2.run(JIComOxidRuntimeHelper.java:116)
java.lang.Thread.run(Thread.java:534)
Means that the IDL operation number sent by COM client to you does not match your implementation of that particular interface at the Java end. Please show me the IDL for this interface and your code for making it's interface pointer (JIInterfaceDefinition)...
Thanks,
best regards,
Vikram
ps: If you don't want to make it public , please mail me at vikram.roopchand@gmail.com.
pps: This is not a big issue :)...
Hi Vikram,
Thanks for the quick response. I had already emailed the verbose version to you at gmail, so you should be able to pick it up from there now.
Looking forward to your further response.
Kind regards,
Andy