2 Replies Latest reply on Feb 6, 2009 4:20 AM by Gert Vanthienen

    Unknown protocol: bundle

    Quan Feng Newbie

      I have a JBI component that uses JMX RMI-Remote to connect to an external JMX server. The component runs fine in ServiceMix 3.2.1. I recently installed FUSE ESB 4.0.0.3, re-built and packaged the component (and the SU and SA), and deployed the component and the SA into FUSE ESB 4.0.0.3. The deployment appears ok because I can see the component and the SA in the OSGI and JBI consoles. When the component runs, it can connect to the JMX server; however, when it invokes a MBean method using MBeanServerConnection, I get the exeception:

       

      Caused by: java.net.MalformedURLException: unknown protocol: bundle

              at java.net.URL.(URL.java:413)

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

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

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

              at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:247)

              at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:197)

              at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)

              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.readArray(ObjectInputStream.java:1667)

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

              at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)

              at java.rmi.MarshalledObject.get(MarshalledObject.java:142)

              at javax.management.remote.rmi.RMIConnectionImpl$6.run(RMIConnectionImpl.java:1513)

              at java.security.AccessController.doPrivileged(Native Method)

              at javax.management.remote.rmi.RMIConnectionImpl.unwrap(RMIConnectionImpl.java:1505)

              at javax.management.remote.rmi.RMIConnectionImpl.access$500(RMIConnectionImpl.java:72)

              at javax.management.remote.rmi.RMIConnectionImpl$7.run(RMIConnectionImpl.java:1548)

              at java.security.AccessController.doPrivileged(Native Method)

              at javax.management.remote.rmi.RMIConnectionImpl.unwrap(RMIConnectionImpl.java:1544)

              at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:771)

              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.lang.reflect.Method.invoke(Method.java:597)

              at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)

              at sun.rmi.transport.Transport$1.run(Transport.java:159)

              at java.security.AccessController.doPrivileged(Native Method)

              at sun.rmi.transport.Transport.serviceCall(Transport.java:155)

              at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)

              at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)

              at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)

              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)

              at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)

              at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)

              at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:142)

              at com.sun.jmx.remote.internal.PRef.invoke(Unknown Source)

              at javax.management.remote.rmi.RMIConnectionImpl_Stub.invo(Unknown Source) at javax.management.remote.rmi.RMIConnector$RemoteMBeanSererConnection.invoke(RMIConnector.java:978)

       

       

      Has anyone seen the same or samiliar problem? Could it be fixed by setting some config entry? Any help is greatly appreciated.