首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jni4net - System.Runtime.Remoting.RemotingException

jni4net - System.Runtime.Remoting.RemotingException
EN

Stack Overflow用户
提问于 2013-07-11 23:34:35
回答 1查看 513关注 0票数 2

我正在尝试使用Java / .NET桥来与服务器通信。这座桥是用jni4net建造的,(到目前为止)似乎还可以工作。

代码语言:javascript
复制
  public static void main(String[] args) {
    File sibDll = new File("SibKernel.Client.j4n.dll");

    Bridge.setVerbose(true);
    Bridge.setClrVersion("v20");    

    try {
      Bridge.init();

      Bridge.LoadAndRegisterAssemblyFrom(sibDll);

    } catch (IOException e) {
      e.printStackTrace();
    }

    if (SibKernelHelper.isConfigured() == false) {
      SibKernelHelper.Configure();
    }

    IMasterBoardManager mstrBoardMngr = SibKernelHelper.GetMasterBoardManager();
  }

我真的不知道问题出在哪里。有没有人遇到过这样的问题?

下面是完整的异常堆栈跟踪:

代码语言:javascript
复制
Exception in thread "main" System.Runtime.Remoting.RemotingException: Cannot load type 'net.sf.jni4net.jni.IJvmProxy, jni4net.n-0.8.6.0, Version=0.8.6.0, Culture=neutral, PublicKeyToken=134a23405600bab4'.

Server stack trace: 
   at System.Runtime.Remoting.Messaging.MethodCall.ResolveMethod(Boolean bThrowIfNotResolved)
   at System.Runtime.Remoting.Messaging.MethodCall..ctor(Object handlerObject, BinaryMethodCallMessage smuggledMsg)
   at System.Runtime.Serialization.Formatters.Binary.BinaryMethodCall.ReadArray(Object[] callA, Object handlerObject)
   at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
   at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
   at System.Runtime.Remoting.Channels.CoreChannel.DeserializeBinaryRequestMessage(String objectUri, Stream inputStream, Boolean bStrictBinding, TypeFilterLevel securityLevel)
   at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at net.sf.jni4net.jni.IJvmProxy.get_JvmHandle()
   at net.sf.jni4net.utils.Convertor.FullC2J[TBoth](JNIEnv env, TBoth obj)
   at SibKernel.Client.__SibKernelHelper.GetMasterBoardManager6(IntPtr __envp, JniLocalHandle __class)
    at sibkernel.client.SibKernelHelper.GetMasterBoardManager(Native Method)
    at client.SIBClient.main(SIBClient.java:28)
EN

回答 1

Stack Overflow用户

发布于 2013-07-15 15:34:48

您似乎正在尝试实例化一些继承或依赖于jni4net的类型,但问题发生在.NET远程处理的另一端。您可能正在将Java对象的实例作为远程处理调用的参数进行传递。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17597645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档