Hi Thai, it looks like a bug to me, can you raise a JIRA ( https://issues.apache.org/jira/projects/ARTEMIS)?
It should be easy to fix setting the right context path (context.getContextPath()) for activemq-branding and artemis-plugin: https://github.com/apache/activemq-artemis/blob/main/artemis-hawtio/activemq-branding/src/main/java/org/apache/activemq/hawtio/branding/PluginContextListener.java#L42 https://github.com/apache/activemq-artemis/blob/main/artemis-hawtio/artemis-plugin/src/main/java/org/apache/activemq/hawtio/plugin/PluginContextListener.java#L42 Regards, Domenico On Fri, 10 Sept 2021 at 17:53, Thai Le <lnthai2...@gmail.com> wrote: > Hello, > > I am trying to expose the web console at https://companyhostname/artemis. > Basically i want the context of the web console to start with /artemis. I > changed my bootstrap.xml as follow: > <broker xmlns="http://activemq.org/schema"> > <jaas-security domain="activemq"/> > <server > configuration="file:/C:/Users/nle/ActiveMQ/mybroker2/etc//broker.xml"/> > > <web bind="http://0.0.0.0:8161" path="web"> > <app url="artemis/activemq-branding" war="activemq-branding.war"/> > <app url="artemis/artemis-plugin" war="artemis-plugin.war"/> > <app url="artemis/console" war="console.war"/> > </web> > </broker> > > Running this on localhost for testing, when I hit > http://localhost:8161/artemis/console/ > I got redirected to the login screen which means the context of the > console app has been prefixed with /artemis correctly. > However, i see that all the css from artemis-branding and js from > artemis-plugin are missing (404): > [image: image.png] > As you can see from the screenshot above, the request for artemisPlugin.js > does not start with /artemis as i set in my bootstrap.xml. I believe the > cause of this is from the return of the > http://localhost:8161/artemis/console/plugin > (io.hawt.web.plugin.PluginServlet): > > {"artemis-plugin":{"Context":"\/artemis-plugin","Scripts":["plugin\/js\/artemisHelpers.js","plugin\/js\/artemisPlugin.js","plugin\/js\/components\/addressSendMessage.js","plugin\/js\/components\/addresses.js","plugin\/js\/components\/browse.js","plugin\/js\/components\/connections.js","plugin\/js\/components\/consumers.js","plugin\/js\/components\/createAddress.js","plugin\/js\/components\/createQueue.js","plugin\/js\/components\/deleteAddress.js","plugin\/js\/components\/deleteQueue.js","plugin\/js\/components\/diagram.js","plugin\/js\/components\/help.js","plugin\/js\/components\/navigation.js","plugin\/js\/components\/preferences.js","plugin\/js\/components\/producers.js","plugin\/js\/components\/queues.js","plugin\/js\/components\/sendMessage.js","plugin\/js\/components\/sessions.js","plugin\/js\/components\/status.js","plugin\/js\/components\/tree.js","plugin\/js\/services\/pagination.js","plugin\/js\/services\/resource.js","plugin\/js\/services\/sendMessageService.js","plugin\/js\/services\/toolbar.js"],"Domain":null,"Name":"artemis-plugin"},"activemq-branding":{"Context":"\/activemq-branding","Scripts":["plugin\/js\/brandingPlugin.js"],"Domain":null,"Name":"activemq-branding"}} > > I think there is some script that reads this json and issues the resource > requests but it does not seem to take into account the context i put in the > bootstrap.xml. > Is it a bug or there is a way to force the console app to load resource > from the context specified in the bootstrap.xml ? > > Regards > > Thai Le > -- > Where there is will, there is a way >