cancel
Showing results for 
Search instead for 
Did you mean: 

Log Viewer Over RMI gives java.net.malformedUrlException

Former Member
0 Kudos

Hello people...

I have a requirement where the java developers need to look the log files on the j2ee engine, but we dont want to share the admin user name and password to all the developers...

I tried ..Standalone connection of the logviewer...instead on Ni/standalone which needs sap router and J2ee requiring username and password...

I left the rmi://localhost:1099 as it is in server properites file and commented out the NI connection port and enable flag..

then started the server using "remoteserver.bat"..

and on the client..when i give hostname as the ip address of my server and port as 1099...the testconnection gives me following error...

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

Caused by: com.sapmarkets.bam.util.BAMRuntimeException: RemoteException occurred in server thread; nested exception is:

java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:

java.net.MalformedURLException: no protocol: and

at com.sapmarkets.bam.jmx.connector.rmi.AbstractConnectorClient$1.call(AbstractConnectorClient.java:85)

at com.sapmarkets.bam.util.FutureResult$1.run(FutureResult.java:47)

at com.sapmarkets.bam.util.ConnectorClientPooledExecutor$WorkerThread.run(ConnectorClientPooledExecutor.java:83)

Caused by: 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:534)

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 com.sapmarkets.bam.jmx.connector.AbstractLVServer_Stub.invoke(Unknown Source)

at com.sapmarkets.bam.jmx.connector.rmi.AbstractConnectorClient$1.call(AbstractConnectorClient.java:82)

... 2 more

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)

at java.lang.Thread.run(Thread.java:534)

Caused by: java.net.MalformedURLException: no protocol: and

at java.net.URL.<init>(URL.java:537)

at java.net.URL.<init>(URL.java:434)

at java.net.URL.<init>(URL.java:383)

at sun.rmi.server.LoaderHandler.pathToURLs(LoaderHandler.java:747)

at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:147)

at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:631)

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.readClass(ObjectInputStream.java:1402)

at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1260)

at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1603)

at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1271)

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

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

actually ...to test whether there is a listener running on that port..i tried running client on server box itself..ofcourse on different console(VM) and It is working...giving me proof that RMI is working well..but ..when i try to connect via RMI via different machine ..it throws an error..I am wondering...if there is code setup in logviewer to identify the registry running on different host...

Did any one have successful experiences with this...if so...can you share it ..

thanks in advance..

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

I actually changed the "rmi://localhost:1099" to reflect

my host name as "rmi://myhostName:1099". restarted the server, but the client still gets the same error..