You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cactus-user@jakarta.apache.org by Daniel Lehmann <dk...@hotmail.com> on 2003/10/15 08:52:13 UTC

Eclipse and EJB lookup problems

I'm not sure if this email was sent out correctly the first time so I'm 
resending it...

I am trying to build a project using a standalone Tomcat webserver (4.12.1) 
and JBoss 3.2.1.  For unit testing I am using Cactus 13.1.5 beta1.  The goal 
is to automate the whole thing within an Ant build script (Starting up 
Tomcat from Ant, JBoss is running already).  However, I am encountering the 
following two problems:

***************************************************************************

1.
Eclipse issue - when running my ant script from Eclipse I get the following 
error:

  [cactus] couldn't find tools.jar (needed for JSP compilation)

Now I have tried the following to set the path to tools.jar :
- Added tools.jar to the system classpath
- Added tools.jar to the <classpath> in the cactus task within my build.xml
- Added tools.jar to the classpath in the properties for my build.xml within 
Eclipse
- Added tools.jar to the JRE lib directory: C:\Program 
Files\Java\j2re1.4.1_01\lib
  - apparently ant looks for [java.home]/../lib/tools.jar - my java.home is 
C:\Program
    Files\Java\j2re1.4.1_01

None of the above worked, it still cannot find tools.jar...


***************************************************************************


2.
When running my build script from the command line I get the following 
message:

javax.naming.CommunicationException. Root exception is 
java.rmi.ServerException: RemoteException occurred in server thread; nested 
exception is: java.rmi.UnmarshalException: error unmarshalling arguments; 
nested exception is: java.net.MalformedURLException: no protocol: and at 
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:292) at 
sun.rmi.transport.Transport$1.run(Transport.java:148) at 
java.security.AccessController.doPrivileged(Native Method) at 
sun.rmi.transport.Transport.serviceCall(Transport.java:144) at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460) at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701) 
at java.lang.Thread.run(Thread.java:536) at 
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247) 
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223) 
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133) at 
org.jnp.server.NamingServer_Stub.lookup(Unknown Source) at 
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:492) at 
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:471) at 
javax.naming.InitialContext.lookup(InitialContext.java:347) at 
pizzaTraderTest.SessionTest.setUp(SessionTest.java:46) at 
org.apache.cactus.ServletTestCase.runTest(ServletTestCase.java:276) at 
org.apache.cactus.ServletTestCase.runBare(ServletTestCase.java:251) at 
org.apache.cactus.server.AbstractWebTestCaller.doTest(AbstractWebTestCaller.java:156) 
at 
org.apache.cactus.server.AbstractWebTestController.dispatch133_handleRequest(AbstractWebTestController.java;org/apache/cactus/util/log/LogAspect.aj[1k]:130) 
at 
org.apache.cactus.server.AbstractWebTestController.around133_handleRequest(AbstractWebTestController.java;org/apache/cactus/util/log/LogAspect.aj[1k]:1158) 
at 
org.apache.cactus.server.AbstractWebTestController.handleRequest(AbstractWebTestController.java;org/apache/cactus/util/log/LogAspect.aj[1k]:101) 
at 
org.apache.cactus.server.ServletTestRedirector.dispatch160_doPost(ServletTestRedirector.java;org/apache/cactus/util/log/LogAspect.aj[1k]:125) 
at 
org.apache.cactus.server.ServletTestRedirector.around160_doPost(ServletTestRedirector.java;org/apache/cactus/util/log/LogAspect.aj[1k]:1158) 
at 
org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirector.java;org/apache/cactus/util/log/LogAspect.aj[1k]:109) 
at 
org.apache.cactus.server.ServletTestRedirector.dispatch159_doGet(ServletTestRedirector.java;org/apache/cactus/util/log/LogAspect.aj[1k]:96) 
at 
org.apache.cactus.server.ServletTestRedirector.around159_doGet(ServletTestRedirector.java;org/apache/cactus/util/log/LogAspect.aj[1k]:1158) 
at 
org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirector.java;org/apache/cactus/util/log/LogAspect.aj[1k]:92) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) 
at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) 
at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260) 
at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) 
at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) 
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) 
at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) 
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at 
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396) 
at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) 
at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) 
at 
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170) 
at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) 
at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) 
at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) 
at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) 
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) 
at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) 
at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) 
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at 
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1040) 
at 
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1151) 
at java.lang.Thread.run(Thread.java:536) Caused by: 
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception 
is: java.net.MalformedURLException: no protocol: and at 
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:249) at 
sun.rmi.transport.Transport$1.run(Transport.java:148) at 
java.security.AccessController.doPrivileged(Native Method) at 
sun.rmi.transport.Transport.serviceCall(Transport.java:144) at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460) at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701) 
... 1 more Caused by: java.net.MalformedURLException: no protocol: and at 
java.net.URL.<init>(URL.java:579) at java.net.URL.<init>(URL.java:476) at 
java.net.URL.<init>(URL.java:425) at 
sun.rmi.server.LoaderHandler.pathToURLs(LoaderHandler.java:743) at 
sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:159) at 
java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:631) at 
org.jboss.system.JBossRMIClassLoader.loadClass(JBossRMIClassLoader.java:74) 
at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:257) at 
sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:200) 
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1513) 
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435) at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626) at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) at 
javax.naming.CompoundName.readObject(CompoundName.java:554) at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:824) at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1746) at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646) at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) at 
sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:297) at 
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:246) ... 6 
more


My code producing the problem looks as follows:

public void setUp() throws Exception
{
  System.setProperty("java.naming.factory.initial", 
"org.jnp.interfaces.NamingContextFactory");
  System.setProperty("java.naming.provider.url", "jnp://myserver:1099");
  System.setProperty("java.naming.factory.url.pkgs", 
"org.jboss.naming:org.jnp.interfaces");

  InitialContext ctx = new InitialContext();

  OrderSessionHome home = (OrderSessionHome)
  PortableRemoteObject.narrow(ctx.lookup("ejb/pizzaTrader/OrderSession"),
  OrderSessionHome.class);

  session = home.create();
}



Can anyone help?

Thanks,
Daniel

_________________________________________________________________
Concerned that messages may bounce because your Hotmail account has exceeded 
its 2MB storage limit? Get Hotmail Extra Storage!         
http://join.msn.com/?PAGE=features/es