当前位置: 技术问答>java相关
是什么导致我的这个错误
来源: 互联网 发布时间:2015-05-25
本文导语: Calling findExactly(zz, changed, 1, 10, 1, 10) java.rmi.UnmarshalException: Could not marshal method ID; nested exception is: java.rmi.UnmarshalException: Method not found: 'findExactly(Ljava.lang.String;Ljava.lang.String;Ljava.lang.Long;Ljava.lang.Long;Ljava.mat...
Calling findExactly(zz, changed, 1, 10, 1, 10)
java.rmi.UnmarshalException: Could not marshal method ID; nested exception is:
java.rmi.UnmarshalException: Method not found: 'findExactly(Ljava.lang.String;Ljava.lang.String;Ljava.lang.Long;Ljava.lang.Long;Ljava.math.BigDecimal;Ljava.math.BigDecimal;)'
java.rmi.UnmarshalException: Method not found: 'findExactly(Ljava.lang.String;Ljava.lang.String;Ljava.lang.Long;Ljava.lang.Long;Ljava.math.BigDecimal;Ljava.math.BigDecimal;)'
为什么对象前面都加个L什么意思?
java.rmi.UnmarshalException: Could not marshal method ID; nested exception is:
java.rmi.UnmarshalException: Method not found: 'findExactly(Ljava.lang.String;Ljava.lang.String;Ljava.lang.Long;Ljava.lang.Long;Ljava.math.BigDecimal;Ljava.math.BigDecimal;)'
java.rmi.UnmarshalException: Method not found: 'findExactly(Ljava.lang.String;Ljava.lang.String;Ljava.lang.Long;Ljava.lang.Long;Ljava.math.BigDecimal;Ljava.math.BigDecimal;)'
为什么对象前面都加个L什么意思?
|
看看ejb-jar在jb中即使你是用remote调用的entity,在Finder的deployment discriptor中,仍然是
Local
试试把Local改为Remote
Local
试试把Local改为Remote
|
/-----------------------------------
首先问题第一个问题:
-->为什么对象前面都加个L什么意思?
注意这个“L”是用在java JNI中的用来表示一个完整的类型(就是全路径),而不是什么"Local"的意思,你要是熟悉JNI就明白了,简单一点说
就是下面这样的格式:
Lxx/xxx/xxxx;注意了由于JAVA内部存在一些转换的机制,所以就转换成象你这样这样的点“.”语法了。
还有就是一般来说在JAVA中如果需要传递类似形式的参数,几乎都是采用点“.”语法的,除了在JNI中。
首先问题第一个问题:
-->为什么对象前面都加个L什么意思?
注意这个“L”是用在java JNI中的用来表示一个完整的类型(就是全路径),而不是什么"Local"的意思,你要是熟悉JNI就明白了,简单一点说
就是下面这样的格式:
Lxx/xxx/xxxx;注意了由于JAVA内部存在一些转换的机制,所以就转换成象你这样这样的点“.”语法了。
还有就是一般来说在JAVA中如果需要传递类似形式的参数,几乎都是采用点“.”语法的,除了在JNI中。