Z
zhfhq
Unregistered / Unconfirmed
GUEST, unregistred user!
我现在正在用EJB开发一个电子商场的例子,我其中用到了一个是用一个Servlet调用一个EJB的方法,
可是总是出现以下的异常:
ava.rmi.MarshalException: CORBA MARSHAL 0[Error unmarshaling value [Error unmarshaling value [The delegate has not been set!]]]
at java.lang.reflect.Constructor.newInstance(Native Method)
at com.inprise.vbroker.rmi.CORBA.UtilImpl.newInstance(UtilImpl.java:82)
at com.inprise.vbroker.rmi.CORBA.UtilImpl._mapSystemException(UtilImpl.java:326)
at com.inprise.vbroker.rmi.CORBA.UtilImpl.mapSystemException(UtilImpl.java:451)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:67)
at storetest._Quote_Stub.getLineItems(_Quote_Stub.java:450)
at storetest.ShowQuoteServlet.doGet(ShowQuoteServlet.java:169)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:597)
at org.apache.tomcat.servlets.InvokerServlet.service(InvokerServlet.java:257)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:160)
at org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338)
at java.lang.Thread.run(Thread.java:484)
我的调用语句如下:
Collection lineItems=(Collection)PortableRemoteObject.narrow(quote.getLineItems(),Collection.class);
或
Collection lineItems=(Collection)quote.getLineItems();
其中quote是一个Sateful Session Bean,而getLineItems方法很简单,
就是把我这个Session Bean中的lineItems变量返回。
但是我调用这个quote的其他方法都行,请问这是为何?
可是总是出现以下的异常:
ava.rmi.MarshalException: CORBA MARSHAL 0[Error unmarshaling value [Error unmarshaling value [The delegate has not been set!]]]
at java.lang.reflect.Constructor.newInstance(Native Method)
at com.inprise.vbroker.rmi.CORBA.UtilImpl.newInstance(UtilImpl.java:82)
at com.inprise.vbroker.rmi.CORBA.UtilImpl._mapSystemException(UtilImpl.java:326)
at com.inprise.vbroker.rmi.CORBA.UtilImpl.mapSystemException(UtilImpl.java:451)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:67)
at storetest._Quote_Stub.getLineItems(_Quote_Stub.java:450)
at storetest.ShowQuoteServlet.doGet(ShowQuoteServlet.java:169)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:597)
at org.apache.tomcat.servlets.InvokerServlet.service(InvokerServlet.java:257)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:160)
at org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338)
at java.lang.Thread.run(Thread.java:484)
我的调用语句如下:
Collection lineItems=(Collection)PortableRemoteObject.narrow(quote.getLineItems(),Collection.class);
或
Collection lineItems=(Collection)quote.getLineItems();
其中quote是一个Sateful Session Bean,而getLineItems方法很简单,
就是把我这个Session Bean中的lineItems变量返回。
但是我调用这个quote的其他方法都行,请问这是为何?