Skip to content

Commit

Permalink
[AMQ-9537] Update user-guide.html (#1266)
Browse files Browse the repository at this point in the history
Update user-guide.html in the distribution
  • Loading branch information
AlexejTimonin authored Jan 7, 2025
1 parent 5cb8cca commit be37c9b
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 464 deletions.
6 changes: 2 additions & 4 deletions assembly/src/release/docs/WebConsole-README.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
Deploying the ActiveMQ-WebConsole
=================================

From ActiveMQ 5.9 onwards ActiveMQ ships with a web console which
is accessible at its usual location at:
http://localhost:8161/admin/
ActiveMQ Classic ships with a web console which is accessible at: http://localhost:8161/admin/

In the default configuration ActiveMQ automatically starts the web console in the
same VM as the broker. The console is accessibly under http://localhost:8161/admin/.
Expand All @@ -12,7 +10,7 @@ The broker may ask for credentials to login the web console the first time.
The default username and password is admin/admin.

In the web console you can configure the default users, in the
conf/jetty-real.properties file. And in the conf/jetty.xml file you can configure
conf/users.properties file. And in the conf/jetty.xml file you can configure
to disable login for the web consoles.

However it's also possible to start the web console in a separate VM and connect it
Expand Down
74 changes: 7 additions & 67 deletions assembly/src/release/docs/user-guide.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ <h1>Getting Started<br>
</h1>

<p>
Welcome to Apache ActiveMQ. This document gives you a quick overview of how to get started trying out Apache ActiveMQ.
Welcome to Apache ActiveMQ Classic. This document gives you a quick overview of how to get started trying out Apache ActiveMQ Classic.
</p>

<h2>Running the broker</h2>
Expand Down Expand Up @@ -89,7 +89,7 @@ <h2>Access the web console</h2>
In a web browser you can access the url <a href="http://0.0.0.0:8161/admin">http://0.0.0.0:8161/admin</a> to access the ActiveMQ web console.
<br/>
The broker may ask for credentials to login the web console the first time.
The default username and password is admin/admin. You can configure this in the conf/jetty-real.properties file.
The default username and password is admin/admin. You can configure this in the conf/user.properties file.

<h2>Access the web demos</h2>

Expand All @@ -98,7 +98,7 @@ <h2>Access the web demos</h2>
</p>
<pre>
cd bin
activemq.bat console xbean:examples/conf/activemq-demo.xml
activemq.bat start xbean:../examples/conf/activemq-demo.xml
</pre>
<p>
On Unix-like systems, type
Expand All @@ -110,73 +110,13 @@ <h2>Access the web demos</h2>
In a web browser you can access the url <a href="http://0.0.0.0:8161/demo">http://0.0.0.0:8161/demo</a> to access the ActiveMQ web demos.
<br/>
The broker may ask for credentials to login the web console the first time.
The default username and password is admin/admin. You can configure this in the conf/jetty-real.properties file.
The default username and password is admin/admin. You can configure this in the conf/user.properties file.


<h2>Running the example programs</h2>

<p>
To run the demo producer/consumer tools, you need Java and Ant installed.
</p>

<h3>Installing Ant</h3>


<p>
The example programs depend on <a href="http://ant.apache.org/">Ant</a> being installed. There are more detailed
instructions on the Ant website - but essentially you need to follow these steps.
</p>
<ul>
<li>
JAVA_HOME must point to your JDK installation, such that $JAVA_HOME/bin contains the java executable and $JAVA_HOME/lib contains some jar files.
</li>
<li>
ANT_HOME must point to where you installed Apache Ant (http://ant.apache.org)
</li>
<li>
then you need to add $JAVA_HOME/bin and $ANT_HOME/bin to your PATH variable.
</li>
</ul>

<p>
To test this is all working, try typing
</p>

<pre>
java -version
cd examples/openwire/swissarmy
ant -version
</pre>

<h3>Running the example producer and consumer</h3>

<p>
Once you've got Java and Ant installed correctly you should be able to run
</p>

<pre>
cd examples/openwire/swissarmy
ant consumer
</pre>

<p>
and in another shell
</p>

<pre>
cd examples/openwire/swissarmy
ant producer
</pre>

<p>
you can specify exact URLs to connect to via command like arguments. e.g.
</p>

<pre>
ant producer -Durl=tcp://somehost:port
</pre>

<h2>Example programs</h2>

<p>Several runnable examples are in the examples directory, each with its own readme.md file containing instructions on how to run the example.</p>
<p>Configuration examples are located in example/conf directory.</p>

<h2>Further Readings</h2>

Expand Down
185 changes: 31 additions & 154 deletions assembly/src/release/examples/conf/jetty-demo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,169 +13,46 @@
limitations under the License.
-->
<!--
An embedded servlet engine for serving up the Admin consoles, REST and Ajax APIs and
some demos Include this file in your configuration to enable ActiveMQ web components
e.g. <import resource="jetty.xml"/>
An embedded servlet engine used for serving broker with demo applications.
-->
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

<bean id="securityLoginService" class="org.eclipse.jetty.security.HashLoginService">
<property name="name" value="ActiveMQRealm" />
<property name="config" value="${activemq.conf}/jetty-realm-5.x.properties" />
</bean>

<bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="user,admin" />
<!-- set authenticate=false to disable login -->
<property name="authenticate" value="true" />
</bean>
<bean id="adminSecurityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="admin" />
<!-- set authenticate=false to disable login -->
<property name="authenticate" value="true" />
</bean>
<bean id="securityConstraintMapping" class="org.eclipse.jetty.security.ConstraintMapping">
<property name="constraint" ref="securityConstraint" />
<property name="pathSpec" value="/admin,/api/*" />
</bean>
<bean id="adminSecurityConstraintMapping" class="org.eclipse.jetty.security.ConstraintMapping">
<property name="constraint" ref="adminSecurityConstraint" />
<property name="pathSpec" value="*.action" />
</bean>
<import resource="classpath:jetty.xml" />

<bean id="rewriteHandler" class="org.eclipse.jetty.rewrite.handler.RewriteHandler">
<property name="rules">
<bean id="secHandlerCollection" class="org.eclipse.jetty.server.handler.HandlerCollection">
<property name="handlers">
<list>
<bean id="header" class="org.eclipse.jetty.rewrite.handler.HeaderPatternRule">
<property name="pattern" value="*"/>
<property name="name" value="X-FRAME-OPTIONS"/>
<property name="value" value="SAMEORIGIN"/>
</bean>
</list>
</property>
</bean>

<bean id="secHandlerCollection" class="org.eclipse.jetty.server.handler.HandlerCollection">
<property name="handlers">
<list>
<ref bean="rewriteHandler"/>
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/admin" />
<property name="resourceBase" value="${activemq.home}/webapps/admin" />
<property name="logUrlOnStart" value="true" />
</bean>
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/demo" />
<property name="resourceBase" value="${activemq.home}/webapps-demo/demo" />
<property name="logUrlOnStart" value="true" />
</bean>
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/api" />
<property name="resourceBase" value="${activemq.home}/webapps/api" />
<property name="logUrlOnStart" value="true" />
</bean>
<bean class="org.eclipse.jetty.server.handler.ResourceHandler">
<property name="directoriesListed" value="false" />
<property name="welcomeFiles">
<list>
<value>index.html</value>
</list>
</property>
<property name="resourceBase" value="${activemq.home}/webapps/" />
</bean>
<bean id="defaultHandler" class="org.eclipse.jetty.server.handler.DefaultHandler">
<property name="serveIcon" value="false" />
</bean>
</list>
</property>
</bean>

<bean id="securityHandler" class="org.eclipse.jetty.security.ConstraintSecurityHandler">
<property name="loginService" ref="securityLoginService" />
<property name="authenticator">
<bean class="org.eclipse.jetty.security.authentication.BasicAuthenticator" />
</property>
<property name="constraintMappings">
<list>
<ref bean="adminSecurityConstraintMapping" />
<ref bean="securityConstraintMapping" />
</list>
</property>
<property name="handler" ref="secHandlerCollection" />
</bean>


<bean id="contexts" class="org.eclipse.jetty.server.handler.ContextHandlerCollection">
</bean>

<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="port" value="8161"/>
</bean>

<bean id="Server" depends-on="jettyPort" class="org.eclipse.jetty.server.Server"
destroy-method="stop">

<property name="handler">
<bean id="handlers" class="org.eclipse.jetty.server.handler.HandlerCollection">
<property name="handlers">
<list>
<ref bean="contexts" />
<ref bean="securityHandler" />
</list>
</property>
</bean>
</property>

</bean>

<bean id="invokeConnectors" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetObject" ref="Server" />
<property name="targetMethod" value="setConnectors" />
<property name="arguments">
<list>
<bean id="Connector" class="org.eclipse.jetty.server.ServerConnector">
<constructor-arg ref="Server" />
<!-- see the jettyPort bean -->
<property name="port" value="#{systemProperties['jetty.port']}" />
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/admin" />
<property name="resourceBase" value="${activemq.home}/webapps/admin" />
<property name="logUrlOnStart" value="true" />
</bean>
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/api" />
<property name="resourceBase" value="${activemq.home}/webapps/api" />
<property name="logUrlOnStart" value="true" />
</bean>
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/demo" />
<property name="resourceBase" value="${activemq.home}/webapps-demo/demo" />
<property name="logUrlOnStart" value="true" />
</bean>
<bean class="org.eclipse.jetty.server.handler.ResourceHandler">
<property name="directoriesListed" value="false" />
<property name="welcomeFiles">
<list>
<value>index.html</value>
</list>
</property>
<property name="resourceBase" value="${activemq.home}/webapps/" />
</bean>
<bean id="defaultHandler" class="org.eclipse.jetty.server.handler.DefaultHandler">
<property name="serveIcon" value="false" />
</bean>
<!--
Enable this connector to use https with web console
-->
<bean id="SecureConnector" class="org.eclipse.jetty.server.ServerConnector">
<constructor-arg ref="Server" />
<constructor-arg>
<bean id="handlers" class="org.eclipse.jetty.util.ssl.SslContextFactory$Server">
<property name="keyStorePath" value="${activemq.conf}/broker.ks" />
<property name="keyStorePassword" value="password" />
</bean>
</constructor-arg>
<property name="port" value="8162" />
</bean>
</list>
</property>
</bean>


<bean id="configureJetty" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="staticMethod" value="org.apache.activemq.web.config.JspConfigurer.configureJetty" />
<property name="arguments">
<list>
<ref bean="Server" />
<ref bean="secHandlerCollection" />
</list>
</property>
</bean>

<bean id="invokeStart" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"
depends-on="configureJetty, invokeConnectors">
<property name="targetObject" ref="Server" />
<property name="targetMethod" value="start" />
</property>
</bean>


</beans>

33 changes: 0 additions & 33 deletions assembly/src/release/examples/conf/jetty-realm-5.x.properties

This file was deleted.

Loading

0 comments on commit be37c9b

Please sign in to comment.