geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason Dillon (JIRA)" <j...@apache.org>
Subject [jira] Commented: (GSHELL-118) The inter-operation of gshell rsh commands between Sun and IBM JDK failed
Date Wed, 04 Jun 2008 06:16:45 GMT

    [ https://issues.apache.org/jira/browse/GSHELL-118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12602182#action_12602182
] 

Jason Dillon commented on GSHELL-118:
-------------------------------------

This is really 2 related problems.  The last one is the NPE in the RM, I may have fixed that
already.  The first is a problem with the ConnectMessage, relying on the underlying Java serialization
mechanism to do the right thing with java.security.PublicKey.  To fix will have to customize
the serialization.

> The inter-operation of gshell rsh commands between Sun and IBM JDK failed
> -------------------------------------------------------------------------
>
>                 Key: GSHELL-118
>                 URL: https://issues.apache.org/jira/browse/GSHELL-118
>             Project: GShell
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: Remote Shell
>    Affects Versions: 1.0-alpha-1, 1.0-alpha-2
>            Reporter: YunFeng Ma
>            Assignee: Jason Dillon
>             Fix For: 1.0-alpha-3
>
>
> 1. Start rsh-server using Sun JDK in Linux
>    > remote/rsh-server tcp://9.125.143.158:1098 
> 2. Run the following gshell command using IBM JDK in Windows:
>   >  remote/rsh tcp://9.125.143.158:1098 geronimo/start-server
> In Linux terminal, got the following exception:
> {noformat}
> 14:57:58,347 WARN  [RshServer$Handler] [/9.186.117.32:2223] EXCEPTION:
> org.apache.mina.filter.codec.ProtocolDecoderException: org.apache.mina.common.BufferDataException:
> java.io.InvalidClassException: failed to read class descriptor (Hexdump: 78 72 01 00
1D 63 6F 6D 2E 69 62 6D 2E 73 65
> 63 75 72 69 74 79 2E 78 35 30 39 2E 58 35 30 39 4B 65 79 78 70 77 A2 30 81 9F 30 0D 06
09 2A 86 48 86 F7 0D 01 01 01
> 05 00 03 81 8D 00 30 81 89 02 81 81 00 CE 37 A6 E6 ED 92 2A 37 D2 FA 6E 57 00 86 96 A0
F8 71 87 57 88 77 CA 09 DF 66
> 50 94 6A 8B 85 CF 06 75 CA 63 E0 E8 F5 C2 7B 5B 68 FB 87 A1 A0 F4 3D 7C C2 20 D6 A3 A0
5A EB DC 0A 95 C6 D3 30 E6 15
> 02 76 CA 08 78 C7 F4 73 DC F1 67 23 FE C3 94 9A CB B4 AE 9F 9E A9 7F 00 28 AE A0 61 45
0A 16 BE 6B 08 22 0B 8B 21 8D
> A8 B4 5E 49 77 73 6A 2D AF B1 5D 80 B2 85 E9 5E 2C 36 38 AB 08 BB 87 31 02 03 01 00 01
78 73 72 01 00 14 6A 61 76 61
> 2E 6D 61 74 68 2E 42 69 67 49 6E 74 65 67 65 72 78 71 00 7E 00 07 FF FF FF FF FF FF FF
FF FF FF FF FE FF FF FF FE 00
> 00 00 01 75 72 01 00 02 5B 42 78 70 00 00 00 80 CE 37 A6 E6 ED 92 2A 37 D2 FA 6E 57 00
86 96 A0 F8 71 87 57 88 77 CA
> 09 DF 66 50 94 6A 8B 85 CF 06 75 CA 63 E0 E8 F5 C2 7B 5B 68 FB 87 A1 A0 F4 3D 7C C2 20
D6 A3 A0 5A EB DC 0A 95 C6 D3
> 30 E6 15 02 76 CA 08 78 C7 F4 73 DC F1 67 23 FE C3 94 9A CB B4 AE 9F 9E A9 7F 00 28 AE
A0 61 45 0A 16 BE 6B 08 22 0B
> 8B 21 8D A8 B4 5E 49 77 73 6A 2D AF B1 5D 80 B2 85 E9 5E 2C 36 38 AB 08 BB 87 31 78 73
71 00 7E 00 0C FF FF FF FF FF
> FF FF FF FF FF FF FE FF FF FF FE 00 00 00 01 75 71 00 7E 00 0E 00 00 00 03 01 00 01 78)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:164)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:6
> 48)
>         at org.apache.mina.common.IoFilterAdapter.messageReceived(IoFilterAdapter.java:80)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:6
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.mina.common.BufferDataException: java.io.InvalidClassException:
failed to read class descriptor
>         at org.apache.mina.common.ByteBuffer.getObject(ByteBuffer.java:1530)
>         at org.apache.mina.filter.codec.serialization.ObjectSerializationDecoder.doDecode(ObjectSerializationDecoder.jav
> a:92)
>         at org.apache.mina.filter.codec.CumulativeProtocolDecoder.decode(CumulativeProtocolDecoder.java:133)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:157)
>         ... 12 more
> Caused by: java.io.InvalidClassException: failed to read class descriptor
>         at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1567)
>         at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
>         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>         at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
>         at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
>         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
>         at org.apache.mina.common.ByteBuffer.getObject(ByteBuffer.java:1528)
>         ... 15 more
> Caused by: java.lang.ClassNotFoundException: com.ibm.crypto.provider.RSAPublicKey
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at org.codehaus.plexus.classworlds.realm.ClassRealm.loadRealmClass(ClassRealm.java:174)
>         at org.codehaus.plexus.classworlds.strategy.DefaultStrategy.loadClass(DefaultStrategy.java:67)
>         at org.codehaus.plexus.classworlds.strategy.ForeignStrategy.loadClass(ForeignStrategy.java:39)
>         at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:201)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:247)
>         at org.apache.mina.common.ByteBuffer$3.readClassDescriptor(ByteBuffer.java:1519)
>         at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1565)
>         ... 24 more
> 14:57:58,352 WARN  [RshServer$Handler] [/9.186.117.32:2223] EXCEPTION, please implement
> org.apache.geronimo.gshell.remote.server.RshServer$Handler.exceptionCaught() for proper
handling:
> org.apache.mina.filter.codec.ProtocolDecoderException: org.apache.mina.common.BufferDataException:
> java.io.InvalidClassException: failed to read class descriptor (Hexdump: 78 72 01 00
1D 63 6F 6D 2E 69 62 6D 2E 73 65
> 63 75 72 69 74 79 2E 78 35 30 39 2E 58 35 30 39 4B 65 79 78 70 77 A2 30 81 9F 30 0D 06
09 2A 86 48 86 F7 0D 01 01 01
> 05 00 03 81 8D 00 30 81 89 02 81 81 00 CE 37 A6 E6 ED 92 2A 37 D2 FA 6E 57 00 86 96 A0
F8 71 87 57 88 77 CA 09 DF 66
> 50 94 6A 8B 85 CF 06 75 CA 63 E0 E8 F5 C2 7B 5B 68 FB 87 A1 A0 F4 3D 7C C2 20 D6 A3 A0
5A EB DC 0A 95 C6 D3 30 E6 15
> 02 76 CA 08 78 C7 F4 73 DC F1 67 23 FE C3 94 9A CB B4 AE 9F 9E A9 7F 00 28 AE A0 61 45
0A 16 BE 6B 08 22 0B 8B 21 8D
> A8 B4 5E 49 77 73 6A 2D AF B1 5D 80 B2 85 E9 5E 2C 36 38 AB 08 BB 87 31 02 03 01 00 01
78 73 72 01 00 14 6A 61 76 61
> 2E 6D 61 74 68 2E 42 69 67 49 6E 74 65 67 65 72 78 71 00 7E 00 07 FF FF FF FF FF FF FF
FF FF FF FF FE FF FF FF FE 00
> 00 00 01 75 72 01 00 02 5B 42 78 70 00 00 00 80 CE 37 A6 E6 ED 92 2A 37 D2 FA 6E 57 00
86 96 A0 F8 71 87 57 88 77 CA
> 09 DF 66 50 94 6A 8B 85 CF 06 75 CA 63 E0 E8 F5 C2 7B 5B 68 FB 87 A1 A0 F4 3D 7C C2 20
D6 A3 A0 5A EB DC 0A 95 C6 D3
> 30 E6 15 02 76 CA 08 78 C7 F4 73 DC F1 67 23 FE C3 94 9A CB B4 AE 9F 9E A9 7F 00 28 AE
A0 61 45 0A 16 BE 6B 08 22 0B
> 8B 21 8D A8 B4 5E 49 77 73 6A 2D AF B1 5D 80 B2 85 E9 5E 2C 36 38 AB 08 BB 87 31 78 73
71 00 7E 00 0C FF FF FF FF FF
> FF FF FF FF FF FF FE FF FF FF FE 00 00 00 01 75 71 00 7E 00 0E 00 00 00 03 01 00 01 78)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:164)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:6
> 48)
>         at org.apache.mina.common.IoFilterAdapter.messageReceived(IoFilterAdapter.java:80)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:6
> 48)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.mina.common.BufferDataException: java.io.InvalidClassException:
failed to read class descriptor
>         at org.apache.mina.common.ByteBuffer.getObject(ByteBuffer.java:1530)
>         at org.apache.mina.filter.codec.serialization.ObjectSerializationDecoder.doDecode(ObjectSerializationDecoder.jav
> a:92)
>         at org.apache.mina.filter.codec.CumulativeProtocolDecoder.decode(CumulativeProtocolDecoder.java:133)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:157)
>         ... 12 more
> Caused by: java.io.InvalidClassException: failed to read class descriptor
>         at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1567)
>         at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
>         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>         at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
>         at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
>         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
>         at org.apache.mina.common.ByteBuffer.getObject(ByteBuffer.java:1528)
>         ... 15 more
> Caused by: java.lang.ClassNotFoundException: com.ibm.crypto.provider.RSAPublicKey
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at org.codehaus.plexus.classworlds.realm.ClassRealm.loadRealmClass(ClassRealm.java:174)
>         at org.codehaus.plexus.classworlds.strategy.DefaultStrategy.loadClass(DefaultStrategy.java:67)
>         at org.codehaus.plexus.classworlds.strategy.ForeignStrategy.loadClass(ForeignStrategy.java:39)
>         at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:201)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:247)
>         at org.apache.mina.common.ByteBuffer$3.readClassDescriptor(ByteBuffer.java:1519)
>         at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1565)
>         ... 24 more
> 14:58:02,923 ERROR [RshServer] Timeout waiting for handshake from: SessionAdapter{ session=(SOCKET,
R: /9.186.117.32:2223,
> L: /9.125.143.158:1098, S: /9.125.143.158:1098), closed=false }
> {noformat}
> In the widnows cmd, got the following exception:
> {noformat}
> MaYunFeng@IBM-9418A58D694:/> remote/rsh tcp://9.125.143.158:1098 geronimo/start-
> server
> Connecting to: tcp://9.125.143.158:1098
> Connected
> Username: system
> Password: *******
> 14:47:30,171 WARN  [RequestManager] Timing out remaining 1 registrations
> 14:47:30,187 WARN  [RshClient$Handler] [/9.125.143.158:1098] EXCEPTION:
> java.lang.NullPointerException
>         at org.apache.geronimo.gshell.whisper.request.RequestManager$Registration.timeout(RequestManager.java:307)
>         at org.apache.geronimo.gshell.whisper.request.RequestManager.timeout(RequestManager.java:208)
>         at org.apache.geronimo.gshell.whisper.request.RequestManager.close(RequestManager.java:231)
>         at org.apache.geronimo.gshell.whisper.request.RequestResponseFilter.sessionClosed(RequestResponseFilter.java:55)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.geronimo.gshell.whisper.stream.SessionStreamFilter.sessionClosed(SessionStreamFilter.java:57)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.mina.filter.LoggingFilter.sessionClosed(LoggingFilter.java:65)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.sessionClosed(ProtocolCodecFilter.java:247)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.geronimo.gshell.whisper.transport.base.SessionBindingFilter.sessionClosed(SessionBindingFilter.java:54)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:230)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>         at java.lang.Thread.run(Thread.java:801)
> 14:47:30,265 WARN  [RshClient$Handler] [/9.125.143.158:1098] EXCEPTION, please i
> mplement org.apache.geronimo.gshell.remote.client.RshClient$Handler.exceptionCau
> ght() for proper handling:
> java.lang.NullPointerException
>         at org.apache.geronimo.gshell.whisper.request.RequestManager$Registration.timeout(RequestManager.java:307)
>         at org.apache.geronimo.gshell.whisper.request.RequestManager.timeout(RequestManager.java:208)
>         at org.apache.geronimo.gshell.whisper.request.RequestManager.close(RequestManager.java:231)
>         at org.apache.geronimo.gshell.whisper.request.RequestResponseFilter.sessionClosed(RequestResponseFilter.java:55)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.geronimo.gshell.whisper.stream.SessionStreamFilter.sessionClosed(SessionStreamFilter.java:57)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.mina.filter.LoggingFilter.sessionClosed(LoggingFilter.java:65)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.mina.filter.codec.ProtocolCodecFilter.sessionClosed(ProtocolCodecFilter.java:247)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.geronimo.gshell.whisper.transport.base.SessionBindingFilter.sessionClosed(SessionBindingFilter.java:54)
>         at org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:269)
>         at org.apache.mina.common.support.AbstractIoFilterChain.access$800(AbstractIoFilterChain.java:53)
>         at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:633)
>         at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:230)
>         at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
>         at java.lang.Thread.run(Thread.java:801)
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message