You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2002/08/08 15:26:56 UTC

DO NOT REPLY [Bug 11556] New: - RMI does not work from servlet or WebService if Tomcat engine name is with spaces

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11556>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11556

RMI does not work from servlet or WebService if Tomcat engine name is with spaces

           Summary: RMI does not work from servlet or WebService if Tomcat
                    engine name is with spaces
           Product: Tomcat 4
           Version: 4.1.8
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Major
          Priority: Other
         Component: Catalina
        AssignedTo: tomcat-dev@jakarta.apache.org
        ReportedBy: andrius@technopark.lt


I have installed jwsdp-1_0_01-windows-i586.exe from sun (Tomcat 4.1.2 is 
included over there) I am running with JDK 1.4.0_01

When I try to call an RMI server from a Servlet or WebService I have got the 
following exception trace:

Caused by: java.net.MalformedURLException: no protocol: Engine/localhost/rpc-
wms/WEB-INF/classes
	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:629)
	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:1503)
	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1425)
	at java.io.ObjectInputStream.readOrdinaryObject
(ObjectInputStream.java:1616)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1264)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:322)
	at sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:297)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:246)

Problem persisted with Tomcat 4.1.8 installed.

Problem was solved by editing server.xml file. by replacing
    <Engine    name="Standard Engine" defaultHost="localhost" debug="0">
to name without spaces
    <Engine    name="Engine" defaultHost="localhost" debug="0">

As soon as there is a space I got an exception.

Sometimes there is a different stack trace
java.rmi.UnmarshalException: Error unmarshaling return header; nested 
exception is: 
	java.net.SocketException: Software caused connection abort: socket 
write error
	at sun.rmi.transport.StreamRemoteCall.executeCall
(StreamRemoteCall.java:203)
	at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133)
	at com.wms.stockserver.StockProcessorProxy_Stub.queryData(Unknown 
Source)
	at com.wms.wmsprocessor.server.WMSProcessorImpl.queryData
(WMSProcessorImpl.java:62)
	at com.wms.wmsprocessor.WMSProcessor_Tie.invoke_queryData
(WMSProcessor_Tie.java:45)
	at com.wms.wmsprocessor.WMSProcessor_Tie.processingHook
(WMSProcessor_Tie.java:105)
	at com.sun.xml.rpc.server.StreamingHandler.handle
(StreamingHandler.java:219)
	at com.sun.xml.rpc.server.http.ea.JAXRPCServletDelegate.doPost
(JAXRPCServletDelegate.java:152)
	at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost
(JAXRPCServlet.java:69)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
	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.invokeNe
xt(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.invokeNe
xt(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:2350)
	at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:180)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNe
xt(StandardPipeline.java:643)
	at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:170)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNe
xt(StandardPipeline.java:641)
	at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:171)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNe
xt(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.invokeNe
xt(StandardPipeline.java:643)
	at org.apache.catalina.valves.AccessLogValve.invoke
(AccessLogValve.java:469)
	at 
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNe
xt(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.coyote.tomcat4.CoyoteAdapter.service
(CoyoteAdapter.java:223)
	at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:405)
	at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnecti
on(Http11Protocol.java:380)
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:508)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:533)
	at java.lang.Thread.run(Thread.java:536)

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>