当前位置: 代码迷 >> Web前端 >> 在Tomcat中公布ActiveMQ-Web-Console
  详细解决方案

在Tomcat中公布ActiveMQ-Web-Console

热度:790   发布时间:2012-10-20 14:12:48.0
在Tomcat中发布ActiveMQ-Web-Console
在上一篇文章中,我们并没有将activeMQ作为单独的服务启动,而是将它集成到一个web工程中。事先声明一下,在开发过程中可以这么做,但是生产模式下,应该还是利用JNDI部署activeMQ,具体利弊现在的我也说不太清楚,前几天在google查资料的时候偶然瞥见的~~~~~~~

再声明一下版本信息:
tomcat版本:6.0.20
activeMQ版本:5.2

web-console是一个监控并管理broker的图形界面,很明显,它更加直观,也更加方便。那还等什么,publish it now!

1,下载对应版本的webconsole*.war(http://repo1.maven.org/maven2/org/apache/activemq/activemq-web-console/),然后把它放到${TOMCAT_HOME}/webapps下

2,下载对应版本的activemq-all.jar(http://repo1.maven.org/maven2/org/apache/activemq/activemq-all),然后把它放到${TOMCAT_HOME}/lib下

3,修改tomcat的启动文件catalina.bat,修改JVM的option
JAVA_OPTS="-Dwebconsole.type=properties -Dwebconsole.jms.url=tcp://localhost:61616 -Dwebconsole.jmx.url=service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi -Dwebconsole.jmx.user= -Dwebconsole.jmx.password="


4,我们还需要将以下jar包加入下载的webconsole*.war中,不然登陆页面后会报错。这些jar包都可以在apache-activemq-5.2.0-bin.zip下找到
jsp-2.1-6.1.9.jar
jsp-api-2.1-6.1.9.jar
jetty-util-6.1.9.jar
core-3.1.1.jar

5,启动tomcat后,就可以使用webconsole了~~~~~~~~~~

原文链接

延伸:
地球人都知道,所有人都可以访问的管理控制台也太不安全了,我们需要给web-console加入访问控制。这里我们使用tomcat自带的基本认证模式。

1,修改${TOMCAT_HOME}/webapps/activemq-web-console/WEB-INF/web.xml,加入如下代码:
<security-constraint>
      <web-resource-collection>
        <web-resource-name>activemq-web-console</web-resource-name>
        <url-pattern>/*</url-pattern>
      </web-resource-collection>
      <auth-constraint>
         <role-name>mqwebconsole</role-name>
      </auth-constraint>
  </security-constraint>
  
  <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>activemq</realm-name>
  </login-config>


2,修改${TOMCAT_HOME}/conf/tomcat-users.xml,加入如下代码:
<role rolename="mqwebconsole"/>
   <user username="admin" password="neusoft" roles="mqwebconsole"/>


3,重新启动tomcat,http://localhost:8080/activemq-web-console

原文连接

  相关解决方案