The problem is that activemq-admin gets configuration from /etc/activemq.conf if it is available. Can you try putting your SUNJMX in bin/activemq and see what happens? As for the run.jar, you have to pass your JMX username and password with --jmxuser and --jmxpassword switches.
Cheers -- Dejan Bosanac Open Source Integration - http://fusesource.com/ ActiveMQ in Action - http://www.manning.com/snyder/ Blog - http://www.nighttale.net On Tue, Jan 6, 2009 at 4:20 AM, MaenXe <m...@docmagic.com> wrote: > > I recently tried to password protect the JMX Connector using the > instructions > here: > http://activemq.apache.org/jmx.html#JMX-PasswordProtectingtheJMXConnector > > Now when I try to stop the broker using "activemq-admin stop" I get the > following error: > > Error: Exception thrown by the agent : java.rmi.server.ExportException: > Port > already in use: 1099; nested exception is: > java.net.BindException: Address already in use > > If I try to stop the broker using "java -jar run.jar stop", I get: > > ERROR: java.lang.RuntimeException: Failed to execute stop task. Reason: > java.lang.SecurityException: Authentication failed! Credentials required > java.lang.RuntimeException: Failed to execute stop task. Reason: > java.lang.SecurityException: Authentication failed! Credentials required > at > > org.apache.activemq.console.command.ShutdownCommand.runTask(ShutdownCommand.java:106) > at > > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) > at > > org.apache.activemq.console.command.AbstractJmxCommand.execute(AbstractJmxCommand.java:224) > at > > org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:129) > at > > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) > at > org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:79) > 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:585) > at org.apache.activemq.console.Main.runTaskClass(Main.java:225) > at org.apache.activemq.console.Main.main(Main.java:106) > ERROR: java.lang.Exception: java.lang.SecurityException: Authentication > failed! Credentials required > java.lang.Exception: java.lang.SecurityException: Authentication failed! > Credentials required > at > > org.apache.activemq.console.command.ShutdownCommand.runTask(ShutdownCommand.java:107) > at > > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) > at > > org.apache.activemq.console.command.AbstractJmxCommand.execute(AbstractJmxCommand.java:224) > at > > org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:129) > at > > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) > at > org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:79) > 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:585) > at org.apache.activemq.console.Main.runTaskClass(Main.java:225) > at org.apache.activemq.console.Main.main(Main.java:106) > Caused by: java.lang.SecurityException: Authentication failed! Credentials > required > at > > com.sun.jmx.remote.security.JMXPluggableAuthenticator.authenticationFailure(JMXPluggableAuthenticator.java:193) > at > > com.sun.jmx.remote.security.JMXPluggableAuthenticator.authenticate(JMXPluggableAuthenticator.java:145) > at > > sun.management.jmxremote.ConnectorBootstrap$AccessFileCheckerAuthenticator.authenticate(ConnectorBootstrap.java:182) > at > > javax.management.remote.rmi.RMIServerImpl.doNewClient(RMIServerImpl.java:212) > at > javax.management.remote.rmi.RMIServerImpl.newClient(RMIServerImpl.java:179) > 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:585) > at > sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294) > at sun.rmi.transport.Transport$1.run(Transport.java:153) > at java.security.AccessController.doPrivileged(Native Method) > at sun.rmi.transport.Transport.serviceCall(Transport.java:149) > at > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466) > at > > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707) > at java.lang.Thread.run(Thread.java:595) > 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:126) > at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown > Source) > at > > javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2239) > at > javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:271) > at > > javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:248) > at > > javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:207) > at > > org.apache.activemq.console.command.AbstractJmxCommand.createJmxConnector(AbstractJmxCommand.java:146) > at > > org.apache.activemq.console.command.AbstractJmxCommand.createJmxConnection(AbstractJmxCommand.java:169) > at > > org.apache.activemq.console.command.ShutdownCommand.runTask(ShutdownCommand.java:70) > ... 11 more > > I'm specifying the SUNJMX options through /etc/activemq.conf. They are as > follows: > > SUNJMX="-Dcom.sun.management.jmxremote.port=1099 > -Dcom.sun.management.jmxremote.ssl=false > -Dcom.sun.management.jmxremote.authenticate=true > > -Dcom.sun.management.jmxremote.password.file=${ACTIVEMQ_BASE}/conf/jmx.password > > -Dcom.sun.management.jmxremote.access.file=${ACTIVEMQ_BASE}/conf/jmx.access" > > Per the instructions, I am not creating a JMX connector thru the > activemq.xml config file. Also I'm noticing that the JMX Connector is not > running on port 1099, netstat shows it running on a different port each > time > I start the broker. > > > -- > View this message in context: > http://www.nabble.com/Unable-to-Stop-ActiveMQ-Broker-from-activemq-admin-script-tp21304038p21304038.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. > >