Server can't start after secured the default RMI port of the Geronimo server
----------------------------------------------------------------------------

                 Key: GERONIMO-5982
                 URL: https://issues.apache.org/jira/browse/GERONIMO-5982
             Project: Geronimo
          Issue Type: Bug
      Security Level: public (Regular issues)
          Components: security
    Affects Versions: 3.0
         Environment: JRE 1.6.0 IBM J9 2.4 Windows Server 2008 R2 amd64-64 
            Reporter: Tina Li


1.Secure the default RMI port of the Geronimo server following the first step 
of the doc:
 https://cwiki.apache.org/GMOxDOC30/securing-rmi-port-of-geronimo.html
2.Start the server using the command: startup.bat and error displayed on the 
cmd console:
2011-05-26 14:47:18,427 ERROR [GBeanInstanceState] Error while starting; GBean 
is now in the FAILED state: 
abstractName="org.apache.geronimo.configs/transaction-1_6/3.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/transaction-1_6/3.0-SNAPSHOT/car,j2eeType=GBean,name=SecurityContextHandler"
java.lang.ExceptionInInitializerError
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:222)
        at 
org.apache.geronimo.connector.wrapper.work.SecurityContextHandler.<init>(SecurityContextHandler.java:71)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:56)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:527)
        at 
org.apache.xbean.recipe.ReflectionUtil$ConstructorFactory.create(ReflectionUtil.java:958)
        at 
org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:276)
        at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
        at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:933)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:271)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:127)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:560)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:386)
        at 
org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:460)
        at 
org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:226)
        at 
org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:702)
        at 
org.apache.geronimo.system.main.EmbeddedDaemon.doStartup(EmbeddedDaemon.java:211)
        at 
org.apache.geronimo.system.main.EmbeddedDaemon.execute(EmbeddedDaemon.java:91)
        at 
org.apache.geronimo.system.osgi.BootActivator$1.execute(BootActivator.java:107)
        at org.apache.geronimo.main.Bootstrapper.execute(Bootstrapper.java:65)
        at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java:65)
        at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:32)
Caused by: java.lang.SecurityException: unable to instantiate Subject-based 
policy
        at javax.security.auth.Policy.getPolicyNoCheck(Policy.java:268)
        at javax.security.auth.Policy.getPolicy(Policy.java:219)
        at 
javax.security.auth.SubjectDomainCombiner$5.run(SubjectDomainCombiner.java:513)
        at 
java.security.AccessController.doPrivileged(AccessController.java:202)
        at 
javax.security.auth.SubjectDomainCombiner.compatPolicy(SubjectDomainCombiner.java:509)
        at 
javax.security.auth.SubjectDomainCombiner.combine(SubjectDomainCombiner.java:223)
        at java.security.AccessController.getContext(AccessController.java:141)
        at 
org.apache.geronimo.security.ContextManager$3.run(ContextManager.java:274)
        at 
java.security.AccessController.doPrivileged(AccessController.java:224)
        at javax.security.auth.Subject.doAsPrivileged(Subject.java:645)
        at 
org.apache.geronimo.security.ContextManager.registerSubject(ContextManager.java:272)
        at 
org.apache.geronimo.security.ContextManager.<clinit>(ContextManager.java:84)
        at java.lang.J9VMInternals.initializeImpl(Native Method)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
        ... 24 more
3.Start the server using the command: geronimo run  and error displayed on the 
cmd console:
2011-05-26 14:51:19,530 WARN  
[0-SNAPSHOT/car,j2eeType=GBean,name=JMXSecureConnector] Failure in JMXConnector 
service:jmx:rmi://0.0.0.0:9998/jndi/rmi://0.0.0.0:1099/JMXSecureConnector
2011-05-26 14:51:19,545 ERROR [GBeanInstanceState] Error while starting; GBean 
is now in the FAILED state: 
abstractName="org.apache.geronimo.framework/jmx-security/3.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/jmx-security/3.0-SNAPSHOT/car,j2eeType=GBean,name=JMXSecureConnector"
java.io.IOException: Cannot bind to URL 
[rmi://0.0.0.0:1099/JMXSecureConnector]: 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.lang.ClassNotFoundException: 
javax.rmi.ssl.SslRMIClientSocketFactory (no security manager: RMI class loader 
disabled)]
        at 
javax.management.remote.rmi.RMIConnectorServer.newIOException(RMIConnectorServer.java:815)
        at 
javax.management.remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:428)
        at 
org.apache.geronimo.jmxremoting.JMXSecureConnector.doStart(JMXSecureConnector.java:157)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:975)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:271)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:127)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:560)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:386)
        at 
org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:460)
        at 
org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:226)
        at 
org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:702)
        at 
org.apache.geronimo.system.main.EmbeddedDaemon.doStartup(EmbeddedDaemon.java:211)
        at 
org.apache.geronimo.system.main.EmbeddedDaemon.execute(EmbeddedDaemon.java:91)
        at 
org.apache.geronimo.system.osgi.BootActivator$1.execute(BootActivator.java:107)
        at org.apache.geronimo.main.Bootstrapper.execute(Bootstrapper.java:65)
        at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java:65)
        at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:32)
Caused by: 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.lang.ClassNotFoundException: 
javax.rmi.ssl.SslRMIClientSocketFactory (no security manager: RMI class loader 
disabled)]
        at 
com.sun.jndi.rmi.registry.RegistryContext.bind(RegistryContext.java:138)
        at 
com.sun.jndi.toolkit.url.GenericURLContext.bind(GenericURLContext.java:220)
        at org.apache.aries.jndi.DelegateContext.bind(DelegateContext.java:82)
        at javax.naming.InitialContext.bind(InitialContext.java:444)
        at 
javax.management.remote.rmi.RMIConnectorServer.bind(RMIConnectorServer.java:636)
        at 
javax.management.remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:423)
        ... 16 more
Caused by: java.rmi.ServerException: RemoteException occurred in server thread; 
nested exception is: 
        java.rmi.UnmarshalException: error unmarshalling arguments; nested 
exception is: 
        java.lang.ClassNotFoundException: 
javax.rmi.ssl.SslRMIClientSocketFactory (no security manager: RMI class loader 
disabled)
        at 
sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:413)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:267)
        at sun.rmi.transport.Transport$1.run(Transport.java:171)
        at 
java.security.AccessController.doPrivileged(AccessController.java:284)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:167)
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:547)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:802)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:661)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
        at java.lang.Thread.run(Thread.java:736)
        at 
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:267)
        at 
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:245)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:371)
        at sun.rmi.registry.RegistryImpl_Stub.bind(RegistryImpl_Stub.java:43)
        at 
com.sun.jndi.rmi.registry.RegistryContext.bind(RegistryContext.java:132)
        ... 21 more
Caused by: java.rmi.UnmarshalException: error unmarshalling arguments; nested 
exception is: 
        java.lang.ClassNotFoundException: 
javax.rmi.ssl.SslRMIClientSocketFactory (no security manager: RMI class loader 
disabled)
        at 
sun.rmi.registry.RegistryImpl_Skel.dispatch(RegistryImpl_Skel.java:42)
        at 
sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:403)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:267)
        at sun.rmi.transport.Transport$1.run(Transport.java:171)
        at 
java.security.AccessController.doPrivileged(AccessController.java:284)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:167)
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:547)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:802)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:661)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
        at java.lang.Thread.run(Thread.java:736)
Caused by: java.lang.ClassNotFoundException: 
javax.rmi.ssl.SslRMIClientSocketFactory (no security manager: RMI class loader 
disabled)
        at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:387)
        at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:177)
        at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:631)
        at 
org.apache.geronimo.kernel.rmi.RMIClassLoaderSpiImpl.loadClass(RMIClassLoaderSpiImpl.java:53)
        at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:258)
        at 
sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:209)
        at 
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1592)
        at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1513)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1749)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
        at sun.rmi.transport.tcp.TCPEndpoint.read(TCPEndpoint.java:549)
        at sun.rmi.transport.LiveRef.read(LiveRef.java:286)
        at sun.rmi.server.UnicastRef2.readExternal(UnicastRef2.java:71)
        at java.rmi.server.RemoteObject.readObject(RemoteObject.java:449)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at 
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1044)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1770)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
        at 
sun.rmi.registry.RegistryImpl_Skel.dispatch(RegistryImpl_Skel.java:38)
        ... 11 more



--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to