We have an instance of JBoss EAP 6.1 with JBoss AS 7.2 running ActiveMQ as a
component of Camel routes.  While we are able to deploy Hawtio of minimal
monitoring and management, we would prefer to deploy the AMQ Web Console to
montitor and manage our AMQ broker instance.  Simply dropping the
activemq-web-console-5.8.0.war into the instance deployments directory does
not work.

The AMQ broker in our instance is configured as a component of our
Camel/Spring configuration xml.  The Camel context itself is started by a
jmx-service with dependencies on Camel, Spring, and ActiveMq modules.  The
run method of our jmx-service creates a ClassPathXmlApplicationContext
pointing to our Camel/Spring configuration xml and starts it by calling the
start() method.  With all the appropriate module dependencies in place, this
is all that is needed to start the Camel context and AMQ broker.  The
content of our Camel/Spring configuration xml follows:

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans";
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xmlns:camel="http://camel.apache.org/schema/spring";
       xmlns:broker="http://activemq.apache.org/schema/core";
       xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
          http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
          http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd";>

    <camel:camelContext id="camel-server">
        <camel:package>com.capario.phoenix.fms.routes</camel:package>
        <camel:jmxAgent id="agent" usePlatformMBeanServer="true"
createConnector="false"/>
    </camel:camelContext>

    <bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent">
        <property name="transacted" value="true"/>
        <property name="transactionManager" ref="txManager"/>
    </bean>

    <bean id="txManager"
class="org.springframework.jms.connection.JmsTransactionManager">
        <property name="connectionFactory" ref="jmsConnectionFactory"/>
    </bean>

    <bean id="jmsConnectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
        <property name="brokerURL" value="tcp://localhost:61616"/>
    </bean>

    <bean id="PROPAGATION_REQUIRED"
class="org.apache.camel.spring.spi.SpringTransactionPolicy">
      <property name="transactionManager" ref="txManager"/>
    </bean>

    <bean id="PROPAGATION_REQUIRES_NEW"
class="org.apache.camel.spring.spi.SpringTransactionPolicy">
      <property name="transactionManager" ref="txManager"/>
      <property name="propagationBehaviorName"
value="PROPAGATION_REQUIRES_NEW"/>
    </bean>

    <broker:broker useJmx="true" persistent="true" brokerName="localhost"
useShutdownHook="false" >
        <broker:managementContext>
            <broker:managementContext createConnector="false"/>
        </broker:managementContext>
        <broker:transportConnectors>
            <broker:transportConnector uri="tcp://localhost:61616"/>
        </broker:transportConnectors>
        <broker:persistenceAdapter>
            <broker:kahaDB directory="activemq-data/kahadb"/>
        </broker:persistenceAdapter>
    </broker:broker>

</beans>


The ActiveMQ module in our deployment has the following module.xml which
includes some libraries (e.g. activemq.console, and activemq.web) that may
be helpful in deploying the AMQ Web Console, perhaps without having to
deploy the activemq-web-console-5.8.0.war archive:

<module xmlns="urn:jboss:module:1.1" name="org.apache.activemq">
    <resources>
        <resource-root path="activemq-amqp-5.8.0.jar"/>
        <resource-root path="activemq-broker-5.8.0.jar"/>
        <resource-root path="activemq-camel-5.8.0.jar"/>
        <resource-root path="activemq-client-5.8.0.jar"/>
        <resource-root path="activemq-console-5.8.0.jar"/>
        <resource-root path="activemq-jaas-5.8.0.jar"/>
        <resource-root path="activemq-kahadb-store-5.8.0.jar"/>
        <resource-root path="activemq-openwire-legacy-5.8.0.jar"/>
        <resource-root path="activemq-pool-5.8.0.jar"/>
        <resource-root path="activemq-protobuf-1.1.jar"/>
        <resource-root path="activemq-spring-5.8.0.jar"/>
        <resource-root path="activemq-web-5.8.0.jar"/>
        <resource-root path="commons-pool-1.6.jar"/>
        <resource-root path="geronimo-j2ee-management_1.1_spec-1.0.1.jar"/>
        <resource-root path="geronimo-jms_1.1_spec-1.1.1.jar"/>
        <resource-root path="geronimo-jta_1.0.1B_spec-1.0.1.jar"/>
        <resource-root path="hawtbuf-1.9.jar"/>
        <resource-root path="xbean-spring-3.12.jar"/>
    </resources>

    <dependencies>
        <module name="javax.api"/>
        <module name="javax.jms.api"/>
        <module name="org.apache.camel"/>
        <module name="org.apache.commons.logging"/>
        <module name="org.slf4j"/>
        <module name="org.springframework"/>
    </dependencies>
</module>


What do we need to do in order to deploy the AMQ Web Console so that it
connects to the above broker for monitoring and management?

Is there a way to do this without deploying the
activemq-web-console-5.8.0.war archive?

If the activemq-web-console-5.8.0.war is required, what steps are needed to
make it work?

Thanks,

David R. Hoffman



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Seeking-advice-on-how-to-deploy-AMQ-Web-Console-5-8-0-on-JBoss-AS-7-2-tp4676859.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to