Hi,
I have created an CMP-EJB in VA for Java 3.5. For this EJB I created an
access
bean for usage in a JSP-page.
This JSP-page is running in Tomcat.
I already added the jars (so for my accessbean and ejb-related stuff) to the
\lib-dir.
All classes are found, no problems there.
But I do get an error when I run the following in my jsp :
<%@ page import = "DennisCMPTest.OracleAccessBean" %> // the accessbean
....
<% OracleAccessBean oracc = null;
try {
oracc = new OracleAccessBean(...);
..
}...
The error I get :
Internal Servlet Error:
javax.servlet.ServletException: com.ibm.rmi.ClientRequest: method
invoke()Lcom/ibm/rmi/ClientResponse; not found
at java.lang.Throwable.(Throwable.java:96)
at java.lang.Exception.(Exception.java:44)
at javax.servlet.ServletException.(ServletException.java:161)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:399)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
7)
at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at
org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection
(Ajp12ConnectionHandler.java:166)
at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
at java.lang.Thread.run(Thread.java:498)
Root cause:
java.lang.NoSuchMethodError: com.ibm.rmi.ClientRequest: method
invoke()Lcom/ibm/rmi/ClientResponse; not found
at com.ibm.CORBA.iiop.ClientDelegate.invoke(Unknown Source)
at com.ibm.CORBA.iiop.InitialNamingClient.resolve(Unknown Source)
at
com.ibm.CORBA.iiop.InitialNamingClient.cachedInitialReferences(Unknown
Source)
at
com.ibm.CORBA.iiop.InitialNamingClient.resolve_initial_references(Unknown
Source)
at com.ibm.CORBA.iiop.ORB.resolve_initial_references(Unknown Source)
at
com.ibm.ejs.ns.jndi.CNInitialContextFactory.initRootContext(CNInitialContext
Factory.java:428)
at
com.ibm.ejs.ns.jndi.CNInitialContextFactory.getInitialContext(CNInitialConte
xtFactory.java:212)
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:669)
at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.(InitialContext.java:199)
at
com.ibm.ivj.ejb.runtime.AbstractAccessBean.getInitContext(AbstractAccessBean
.java:312)
at
com.ibm.ivj.ejb.runtime.AbstractAccessBean.getGlobalHome(AbstractAccessBean.
java:190)
at
com.ibm.ivj.ejb.runtime.AbstractAccessBean.getHome(AbstractAccessBean.java:2
07)
at DennisCMPTest.OracleAccessBean.ejbHome(OracleAccessBean.java:105)
at DennisCMPTest.OracleAccessBean.(OracleAccessBean.java:53)
at
jsp._0002fjsp_0002faccessbean_0002ejspaccessbean_jsp_0._jspService(_0002fjsp
_0002faccessbean_0002ejspaccessbean_jsp_0.java:79)
at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
va:177)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
7)
at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at
org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection
(Ajp12ConnectionHandler.java:166)
at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
at java.lang.Thread.run(Thread.java:498)
This is very strange (to me) since I inspected the
com.ibm.rmi.ClientRequest-class and it *does* have an invoke()-method. Can
anyone help me with this ? Or just give me some pointers as to what might be
going wrong ?
Thanx for any help !!
kind regards
Dennis Meerveld
Technical Consultant
COGNICASE Benelux (Nat Systems)
mailto:[EMAIL PROTECTED]
P.S. Is there an easy way to let this access bean in the jsp in Tomcat
communicate
with the EJB-server in - let's say - WebSphere 3.5 ? iow. the jndi-name (for
the
EJB in WS) must be resolved by the accessbean. (these are two separate
machines).