You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2014/12/02 17:57:18 UTC
[1/3] activemq-6 git commit: ACTIVEMQ6-35 - expose web server
configuration
Repository: activemq-6
Updated Branches:
refs/heads/master 592e47f28 -> 4e8edab4f
ACTIVEMQ6-35 - expose web server configuration
https://issues.apache.org/jira/browse/ACTIVEMQ6-35
Added configuration to allow a web server (or any external component) to be deployed. Added a default Jetty configuration and implementation.
Project: http://git-wip-us.apache.org/repos/asf/activemq-6/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-6/commit/eb4f8354
Tree: http://git-wip-us.apache.org/repos/asf/activemq-6/tree/eb4f8354
Diff: http://git-wip-us.apache.org/repos/asf/activemq-6/diff/eb4f8354
Branch: refs/heads/master
Commit: eb4f835477b7692f605c072e1319d88bcd4e92f2
Parents: b37321b
Author: Andy Taylor <an...@apache.org>
Authored: Fri Nov 28 11:46:12 2014 +0000
Committer: Andy Taylor <an...@apache.org>
Committed: Tue Dec 2 16:52:08 2014 +0000
----------------------------------------------------------------------
.../org/apache/activemq/cli/commands/Run.java | 24 +-
.../activemq/components/ExternalComponent.java | 25 ++
activemq-dto/pom.xml | 7 +-
.../java/org/apache/activemq/dto/AppDTO.java | 34 +++
.../java/org/apache/activemq/dto/BrokerDTO.java | 8 +
.../org/apache/activemq/dto/ComponentDTO.java | 30 +++
.../org/apache/activemq/dto/WebServerDTO.java | 43 ++++
activemq-journal/pom.xml | 38 ---
activemq-selector/pom.xml | 37 ---
activemq-web/pom.xml | 47 ++++
.../activemq/component/WebServerComponent.java | 112 +++++++++
.../activemq/test/WebServerComponentTest.java | 125 ++++++++++
.../webapps/WebServerComponentTest.txt | 1 +
activemq-website/pom.xml | 96 ++++++++
.../src/main/resources/images/activemq-logo.png | Bin 0 -> 6819 bytes
activemq-website/src/main/resources/index.html | 64 +++++
.../resources/styles/impact/css/pygmentize.css | 127 ++++++++++
.../main/resources/styles/impact/css/site.css | 235 +++++++++++++++++++
distribution/activemq/pom.xml | 25 +-
distribution/activemq/src/main/assembly/dep.xml | 53 +++--
.../resources/config/clustered/bootstrap.xml | 7 +-
.../config/non-clustered/bootstrap.xml | 7 +-
.../resources/config/replicated/bootstrap.xml | 7 +-
.../resources/config/shared-store/bootstrap.xml | 7 +-
docs/user-manual/pom.xml | 36 +--
pom.xml | 21 ++
readme.txt | 0
27 files changed, 1087 insertions(+), 129 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-bootstrap/src/main/java/org/apache/activemq/cli/commands/Run.java
----------------------------------------------------------------------
diff --git a/activemq-bootstrap/src/main/java/org/apache/activemq/cli/commands/Run.java b/activemq-bootstrap/src/main/java/org/apache/activemq/cli/commands/Run.java
index adf5b6e..8bab07e 100644
--- a/activemq-bootstrap/src/main/java/org/apache/activemq/cli/commands/Run.java
+++ b/activemq-bootstrap/src/main/java/org/apache/activemq/cli/commands/Run.java
@@ -20,9 +20,12 @@ import io.airlift.command.Arguments;
import io.airlift.command.Command;
import org.apache.activemq.cli.ActiveMQ;
+import org.apache.activemq.components.ExternalComponent;
import org.apache.activemq.core.config.Configuration;
+import org.apache.activemq.core.server.ActiveMQComponent;
import org.apache.activemq.core.server.impl.ActiveMQServerImpl;
import org.apache.activemq.dto.BrokerDTO;
+import org.apache.activemq.dto.ComponentDTO;
import org.apache.activemq.factory.BrokerFactory;
import org.apache.activemq.factory.CoreFactory;
import org.apache.activemq.factory.JmsFactory;
@@ -38,6 +41,7 @@ import javax.management.MBeanServer;
import java.io.File;
import java.lang.management.ManagementFactory;
+import java.util.ArrayList;
import java.util.Timer;
import java.util.TimerTask;
@@ -49,6 +53,7 @@ public class Run implements Action
String configuration;
private StandaloneNamingServer namingServer;
private JMSServerManager jmsServerManager;
+ private ArrayList<ActiveMQComponent> components = new ArrayList<>();
@Override
public Object execute(ActionContext context) throws Exception
@@ -56,9 +61,11 @@ public class Run implements Action
ActiveMQ.printBanner();
+ String activemqHome = System.getProperty("activemq.home").replace("\\", "/");
+
if (configuration == null)
{
- configuration = "xml:" + System.getProperty("activemq.home").replace("\\", "/") + "/config/non-clustered/bootstrap.xml";
+ configuration = "xml:" + activemqHome + "/config/non-clustered/bootstrap.xml";
}
System.out.println("Loading configuration file: " + configuration);
@@ -104,6 +111,20 @@ public class Run implements Action
jmsServerManager.start();
+ if (broker.web != null)
+ {
+ broker.components.add(broker.web);
+ }
+
+ for (ComponentDTO componentDTO : broker.components)
+ {
+ Class clazz = this.getClass().getClassLoader().loadClass(componentDTO.componentClassName);
+ ExternalComponent component = (ExternalComponent)clazz.newInstance();
+ component.configure(componentDTO, activemqHome);
+ component.start();
+ components.add(component);
+ }
+
return null;
}
@@ -133,6 +154,7 @@ public class Run implements Action
{
try
{
+ //TODO stop components
jmsServerManager.stop();
}
catch (Exception e)
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-bootstrap/src/main/java/org/apache/activemq/components/ExternalComponent.java
----------------------------------------------------------------------
diff --git a/activemq-bootstrap/src/main/java/org/apache/activemq/components/ExternalComponent.java b/activemq-bootstrap/src/main/java/org/apache/activemq/components/ExternalComponent.java
new file mode 100644
index 0000000..ae5d387
--- /dev/null
+++ b/activemq-bootstrap/src/main/java/org/apache/activemq/components/ExternalComponent.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.components;
+
+import org.apache.activemq.core.server.ActiveMQComponent;
+import org.apache.activemq.dto.ComponentDTO;
+
+public interface ExternalComponent extends ActiveMQComponent
+{
+ void configure(ComponentDTO config, String activemqHome) throws Exception;
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-dto/pom.xml
----------------------------------------------------------------------
diff --git a/activemq-dto/pom.xml b/activemq-dto/pom.xml
index 98d9bb7..f57a571 100644
--- a/activemq-dto/pom.xml
+++ b/activemq-dto/pom.xml
@@ -18,6 +18,11 @@
<dependencies>
<dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-commons</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson-databind.version}</version>
@@ -144,4 +149,4 @@
</profile>
</profiles>
-</project>
\ No newline at end of file
+</project>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-dto/src/main/java/org/apache/activemq/dto/AppDTO.java
----------------------------------------------------------------------
diff --git a/activemq-dto/src/main/java/org/apache/activemq/dto/AppDTO.java b/activemq-dto/src/main/java/org/apache/activemq/dto/AppDTO.java
new file mode 100644
index 0000000..5d1e043
--- /dev/null
+++ b/activemq-dto/src/main/java/org/apache/activemq/dto/AppDTO.java
@@ -0,0 +1,34 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.dto;
+
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+
+@XmlRootElement(name = "app")
+@XmlAccessorType(XmlAccessType.FIELD)
+public class AppDTO
+{
+ @XmlAttribute
+ public String url;
+
+ @XmlAttribute
+ public String war;
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-dto/src/main/java/org/apache/activemq/dto/BrokerDTO.java
----------------------------------------------------------------------
diff --git a/activemq-dto/src/main/java/org/apache/activemq/dto/BrokerDTO.java b/activemq-dto/src/main/java/org/apache/activemq/dto/BrokerDTO.java
index 6b0f399..70e6767 100644
--- a/activemq-dto/src/main/java/org/apache/activemq/dto/BrokerDTO.java
+++ b/activemq-dto/src/main/java/org/apache/activemq/dto/BrokerDTO.java
@@ -22,6 +22,8 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlRootElement;
+import java.util.ArrayList;
+import java.util.List;
@XmlRootElement(name = "broker")
@XmlAccessorType(XmlAccessType.FIELD)
@@ -41,4 +43,10 @@ public class BrokerDTO
@XmlElementRef
public NamingDTO naming;
+ @XmlElementRef(required = false)
+ public WebServerDTO web;
+
+ @XmlElementRef
+ public List<ComponentDTO> components = new ArrayList<>();
+
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-dto/src/main/java/org/apache/activemq/dto/ComponentDTO.java
----------------------------------------------------------------------
diff --git a/activemq-dto/src/main/java/org/apache/activemq/dto/ComponentDTO.java b/activemq-dto/src/main/java/org/apache/activemq/dto/ComponentDTO.java
new file mode 100644
index 0000000..8fd9868
--- /dev/null
+++ b/activemq-dto/src/main/java/org/apache/activemq/dto/ComponentDTO.java
@@ -0,0 +1,30 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.dto;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+
+@XmlRootElement(name = "component")
+@XmlAccessorType(XmlAccessType.FIELD)
+public class ComponentDTO
+{
+ @XmlAttribute
+ public String componentClassName;
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-dto/src/main/java/org/apache/activemq/dto/WebServerDTO.java
----------------------------------------------------------------------
diff --git a/activemq-dto/src/main/java/org/apache/activemq/dto/WebServerDTO.java b/activemq-dto/src/main/java/org/apache/activemq/dto/WebServerDTO.java
new file mode 100644
index 0000000..5875ac4
--- /dev/null
+++ b/activemq-dto/src/main/java/org/apache/activemq/dto/WebServerDTO.java
@@ -0,0 +1,43 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.dto;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElementRef;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.List;
+
+@XmlRootElement(name = "web")
+@XmlAccessorType(XmlAccessType.FIELD)
+public class WebServerDTO extends ComponentDTO
+{
+ @XmlAttribute
+ public String bind;
+
+ @XmlAttribute(required = true)
+ public String path;
+
+ @XmlElementRef
+ public List<AppDTO> apps;
+
+ public WebServerDTO()
+ {
+ componentClassName = "org.apache.activemq.component.WebServerComponent";
+ }
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-journal/pom.xml
----------------------------------------------------------------------
diff --git a/activemq-journal/pom.xml b/activemq-journal/pom.xml
index 1941313..7e61714 100644
--- a/activemq-journal/pom.xml
+++ b/activemq-journal/pom.xml
@@ -51,42 +51,4 @@
<scope>test</scope>
</dependency>
</dependencies>
-
- <profiles>
- <profile>
- <id>release</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.9</version>
- <configuration>
- <doclet>org.jboss.apiviz.APIviz</doclet>
- <docletArtifact>
- <groupId>org.jboss.apiviz</groupId>
- <artifactId>apiviz</artifactId>
- <version>1.3.2.GA</version>
- </docletArtifact>
- <useStandardDocletOptions>true</useStandardDocletOptions>
- <minmemory>128m</minmemory>
- <maxmemory>512m</maxmemory>
- <quiet>false</quiet>
- <aggregate>true</aggregate>
- <excludePackageNames>org.apache.activemq.core:org.apache.activemq.utils</excludePackageNames>
- </configuration>
- <executions>
- <execution>
- <id>javadocs</id>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
</project>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-selector/pom.xml
----------------------------------------------------------------------
diff --git a/activemq-selector/pom.xml b/activemq-selector/pom.xml
index 8a07b17..6089f9e 100644
--- a/activemq-selector/pom.xml
+++ b/activemq-selector/pom.xml
@@ -32,43 +32,6 @@
</dependency>
</dependencies>
- <profiles>
- <profile>
- <id>release</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.9</version>
- <configuration>
- <doclet>org.jboss.apiviz.APIviz</doclet>
- <docletArtifact>
- <groupId>org.jboss.apiviz</groupId>
- <artifactId>apiviz</artifactId>
- <version>1.3.2.GA</version>
- </docletArtifact>
- <useStandardDocletOptions>true</useStandardDocletOptions>
- <minmemory>128m</minmemory>
- <maxmemory>512m</maxmemory>
- <quiet>false</quiet>
- <aggregate>true</aggregate>
- <excludePackageNames>org.apache.activemq.core:org.apache.activemq.utils</excludePackageNames>
- </configuration>
- <executions>
- <execution>
- <id>javadocs</id>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
<build>
<resources>
<resource>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-web/pom.xml
----------------------------------------------------------------------
diff --git a/activemq-web/pom.xml b/activemq-web/pom.xml
new file mode 100644
index 0000000..8370fe8
--- /dev/null
+++ b/activemq-web/pom.xml
@@ -0,0 +1,47 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-pom</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>activemq-web</artifactId>
+ <packaging>jar</packaging>
+ <name>ActiveMQ6 Web</name>
+
+ <properties>
+ <activemq.basedir>${project.basedir}/..</activemq.basedir>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-dto</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-bootstrap</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.jetty.aggregate</groupId>
+ <artifactId>jetty-all-server</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.logmanager</groupId>
+ <artifactId>jboss-logmanager</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+
+</project>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-web/src/main/java/org/apache/activemq/component/WebServerComponent.java
----------------------------------------------------------------------
diff --git a/activemq-web/src/main/java/org/apache/activemq/component/WebServerComponent.java b/activemq-web/src/main/java/org/apache/activemq/component/WebServerComponent.java
new file mode 100644
index 0000000..95f58b4
--- /dev/null
+++ b/activemq-web/src/main/java/org/apache/activemq/component/WebServerComponent.java
@@ -0,0 +1,112 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.component;
+
+import org.apache.activemq.components.ExternalComponent;
+import org.apache.activemq.dto.AppDTO;
+import org.apache.activemq.dto.ComponentDTO;
+import org.apache.activemq.dto.WebServerDTO;
+import org.eclipse.jetty.server.Connector;
+import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.handler.DefaultHandler;
+import org.eclipse.jetty.server.handler.HandlerList;
+import org.eclipse.jetty.server.handler.ResourceHandler;
+import org.eclipse.jetty.server.nio.SelectChannelConnector;
+import org.eclipse.jetty.webapp.WebAppContext;
+
+import java.net.URI;
+
+public class WebServerComponent implements ExternalComponent
+{
+
+ private Server server;
+ private HandlerList handlers;
+ private WebServerDTO webServerConfig;
+
+ @Override
+ public void configure(ComponentDTO config, String activemqHome) throws Exception
+ {
+ webServerConfig = (WebServerDTO)config;
+ String path = webServerConfig.path.startsWith("/") ? webServerConfig.path : "/" + webServerConfig.path;
+ URI uri = new URI(webServerConfig.bind);
+ server = new Server();
+ org.eclipse.jetty.server.nio.SelectChannelConnector connector = new SelectChannelConnector();
+ connector.setPort(uri.getPort());
+ connector.setHost(uri.getHost());
+
+ server.setConnectors(new Connector[]{connector});
+
+ handlers = new HandlerList();
+
+ if (webServerConfig.apps != null)
+ {
+ for (AppDTO app : webServerConfig.apps)
+ {
+ deployWar(app.url, app.war, activemqHome, path);
+ }
+ }
+
+ WebAppContext handler = new WebAppContext();
+ handler.setContextPath("/");
+ handler.setResourceBase(activemqHome + path);
+ handler.setLogUrlOnStart(true);
+
+ ResourceHandler resourceHandler = new ResourceHandler();
+ resourceHandler.setResourceBase(activemqHome + path);
+ resourceHandler.setDirectoriesListed(true);
+ resourceHandler.setWelcomeFiles(new String[]{"index.html"});
+
+ DefaultHandler defaultHandler = new DefaultHandler();
+ defaultHandler.setServeIcon(false);
+
+ handlers.addHandler(resourceHandler);
+ handlers.addHandler(defaultHandler);
+ server.setHandler(handlers);
+ }
+
+ public void start() throws Exception
+ {
+ server.start();
+
+ System.out.println("Server started at " + webServerConfig.bind);
+ }
+
+ public void stop() throws Exception
+ {
+ server.stop();
+ }
+
+ public boolean isStarted()
+ {
+ return false;
+ }
+
+ private void deployWar(String url, String warURL, String activeMQHome, String path)
+ {
+ WebAppContext webapp = new WebAppContext();
+ if (url.startsWith("/"))
+ {
+ webapp.setContextPath(url);
+ }
+ else
+ {
+ webapp.setContextPath("/" + url);
+ }
+ webapp.setWar(activeMQHome + path + "/" + warURL);
+ handlers.addHandler(webapp);
+ }
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-web/src/test/java/org/apache/activemq/test/WebServerComponentTest.java
----------------------------------------------------------------------
diff --git a/activemq-web/src/test/java/org/apache/activemq/test/WebServerComponentTest.java b/activemq-web/src/test/java/org/apache/activemq/test/WebServerComponentTest.java
new file mode 100644
index 0000000..c170635
--- /dev/null
+++ b/activemq-web/src/test/java/org/apache/activemq/test/WebServerComponentTest.java
@@ -0,0 +1,125 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.test;
+
+import io.netty.bootstrap.Bootstrap;
+import io.netty.channel.Channel;
+import io.netty.channel.ChannelHandlerContext;
+import io.netty.channel.ChannelInitializer;
+import io.netty.channel.EventLoopGroup;
+import io.netty.channel.SimpleChannelInboundHandler;
+import io.netty.channel.nio.NioEventLoopGroup;
+import io.netty.channel.socket.nio.NioSocketChannel;
+import io.netty.handler.codec.http.DefaultFullHttpRequest;
+import io.netty.handler.codec.http.HttpClientCodec;
+import io.netty.handler.codec.http.HttpContent;
+import io.netty.handler.codec.http.HttpHeaders;
+import io.netty.handler.codec.http.HttpMethod;
+import io.netty.handler.codec.http.HttpObject;
+import io.netty.handler.codec.http.HttpRequest;
+import io.netty.handler.codec.http.HttpVersion;
+import io.netty.util.CharsetUtil;
+import org.apache.activemq.component.WebServerComponent;
+import org.apache.activemq.dto.WebServerDTO;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+
+public class WebServerComponentTest extends Assert
+{
+ static final String URL = System.getProperty("url", "http://localhost:8161/WebServerComponentTest.txt");
+ private Bootstrap bootstrap;
+ private EventLoopGroup group;
+
+ @Before
+ public void setupNetty() throws URISyntaxException
+ {
+ // Configure the client.
+ group = new NioEventLoopGroup();
+ bootstrap = new Bootstrap();
+ }
+ @Test
+ public void simpleServer() throws Exception
+ {
+ WebServerDTO webServerDTO = new WebServerDTO();
+ webServerDTO.bind = "http://localhost:8161";
+ webServerDTO.path = "webapps";
+ WebServerComponent webServerComponent = new WebServerComponent();
+ webServerComponent.configure(webServerDTO, "./src/test/resources/");
+ webServerComponent.start();
+ // Make the connection attempt.
+ CountDownLatch latch = new CountDownLatch(1);
+ final ClientHandler clientHandler = new ClientHandler(latch);
+ bootstrap.group(group).channel(NioSocketChannel.class).handler(new ChannelInitializer()
+ {
+ @Override
+ protected void initChannel(Channel ch) throws Exception
+ {
+ ch.pipeline().addLast(new HttpClientCodec());
+ ch.pipeline().addLast(clientHandler);
+ }
+ });
+ Channel ch = bootstrap.connect("localhost", 8161).sync().channel();
+
+ URI uri = new URI(URL);
+ // Prepare the HTTP request.
+ HttpRequest request = new DefaultFullHttpRequest(HttpVersion.HTTP_1_1, HttpMethod.GET, uri.getRawPath());
+ request.headers().set(HttpHeaders.Names.HOST, "localhost");
+
+
+ // Send the HTTP request.
+ ch.writeAndFlush(request);
+ assertTrue(latch.await(5, TimeUnit.SECONDS));
+ assertEquals(clientHandler.body, "12345");
+ // Wait for the server to close the connection.
+ ch.close();
+ webServerComponent.stop();
+ }
+
+ class ClientHandler extends SimpleChannelInboundHandler<HttpObject>
+ {
+ private CountDownLatch latch;
+ private String body;
+
+ public ClientHandler(CountDownLatch latch)
+ {
+ this.latch = latch;
+ }
+
+ @Override
+ public void channelRead0(ChannelHandlerContext ctx, HttpObject msg)
+ {
+ if (msg instanceof HttpContent)
+ {
+ HttpContent content = (HttpContent) msg;
+ body = content.content().toString(CharsetUtil.UTF_8);
+ latch.countDown();
+ }
+ }
+
+ public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause)
+ {
+ cause.printStackTrace();
+ ctx.close();
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-web/src/test/resources/webapps/WebServerComponentTest.txt
----------------------------------------------------------------------
diff --git a/activemq-web/src/test/resources/webapps/WebServerComponentTest.txt b/activemq-web/src/test/resources/webapps/WebServerComponentTest.txt
new file mode 100644
index 0000000..bd41cba
--- /dev/null
+++ b/activemq-web/src/test/resources/webapps/WebServerComponentTest.txt
@@ -0,0 +1 @@
+12345
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-website/pom.xml
----------------------------------------------------------------------
diff --git a/activemq-website/pom.xml b/activemq-website/pom.xml
new file mode 100644
index 0000000..5340ffe
--- /dev/null
+++ b/activemq-website/pom.xml
@@ -0,0 +1,96 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-pom</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>activemq-website</artifactId>
+ <packaging>jar</packaging>
+ <name>ActiveMQ6 Web</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-core-client</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-jms-client</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-server</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-jms-server</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-journal</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-selector</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+ <properties>
+ <activemq.basedir>${project.basedir}/..</activemq.basedir>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.10.1</version>
+ <executions>
+ <execution>
+ <id>javadoc-jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <doclet>org.jboss.apiviz.APIviz</doclet>
+ <docletArtifact>
+ <groupId>org.jboss.apiviz</groupId>
+ <artifactId>apiviz</artifactId>
+ <version>1.3.2.GA</version>
+ </docletArtifact>
+ <useStandardDocletOptions>true</useStandardDocletOptions>
+ <minmemory>128m</minmemory>
+ <maxmemory>512m</maxmemory>
+ <quiet>false</quiet>
+ <!-- switch on dependency-driven aggregation -->
+ <includeDependencySources>true</includeDependencySources>
+
+ <dependencySourceIncludes>
+ <!-- include ONLY dependencies I control -->
+ <dependencySourceInclude>org.apache.activemq:activemq-core-client</dependencySourceInclude>
+ <dependencySourceInclude>org.apache.activemq:activemq-jms-client</dependencySourceInclude>
+ <dependencySourceInclude>org.apache.activemq:activemq-server</dependencySourceInclude>
+ <dependencySourceInclude>org.apache.activemq:activemq-jms-server</dependencySourceInclude>
+ <dependencySourceInclude>org.apache.activemq:activemq-journal</dependencySourceInclude>
+ <dependencySourceInclude>org.apache.activemq:activemq-selector</dependencySourceInclude>
+ </dependencySourceIncludes>
+ <quiet>false</quiet>
+ <aggregate>true</aggregate>
+ <excludePackageNames>org.apache.activemq.core:org.apache.activemq.utils</excludePackageNames>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-website/src/main/resources/images/activemq-logo.png
----------------------------------------------------------------------
diff --git a/activemq-website/src/main/resources/images/activemq-logo.png b/activemq-website/src/main/resources/images/activemq-logo.png
new file mode 100644
index 0000000..d514448
Binary files /dev/null and b/activemq-website/src/main/resources/images/activemq-logo.png differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-website/src/main/resources/index.html
----------------------------------------------------------------------
diff --git a/activemq-website/src/main/resources/index.html b/activemq-website/src/main/resources/index.html
new file mode 100644
index 0000000..edb547a
--- /dev/null
+++ b/activemq-website/src/main/resources/index.html
@@ -0,0 +1,64 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ Architecture
+-->
+<html lang="en">
+<head>
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
+ <meta content="ActiveMQ's next generation of messaging" name="description"/>
+ <meta content="messaging,stomp,jms,activemq" name="keywords"/>
+ <meta content="ActiveMQ" name="author"/>
+ <link type="text/css" rel="stylesheet" href="styles/impact/css/pygmentize.css"/>
+ <link type="text/css" rel="stylesheet" href="styles/impact/css/site.css"/>
+ <title>ActiveMQ</title>
+</head>
+<body>
+<div id="navigation">
+ <div class="wrapper">
+ <ul>
+ <li><a href="index.html">ActiveMQ 6.0</a></li>
+ <li><a href="community/developers.html">Developers</a></li>
+ <li><a href="community/index.html">Community</a></li>
+ <li><a href="download.html">Download</a></li>
+ </ul> <div></div>
+ </div>
+</div>
+<div id="overview">
+ <div class="wrapper">
+ <div class="logo">
+ <img src="images/activemq-logo.png" alt="ActiveMQ logo"/>
+ </div>
+ <div class="message">
+ <h1>ActiveMQ 6.0</h1>
+ ActiveMQ's next generation of messaging
+
+ <div></div>
+ </div>
+ </div>
+</div>
+<div id="content">
+ <div class="wrapper">
+ <ul>
+ <li><a target="_blank" href="api/index.html">API</a></li>
+ <li><a target="_blank" href="user-manual/index.html">User Manual</a></li>
+ <li><a href="">Examples (to follow)</a></li>
+ </ul>
+ <div></div>
+ </div>
+</div>
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-website/src/main/resources/styles/impact/css/pygmentize.css
----------------------------------------------------------------------
diff --git a/activemq-website/src/main/resources/styles/impact/css/pygmentize.css b/activemq-website/src/main/resources/styles/impact/css/pygmentize.css
new file mode 100644
index 0000000..d9b19d9
--- /dev/null
+++ b/activemq-website/src/main/resources/styles/impact/css/pygmentize.css
@@ -0,0 +1,127 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+.syntax .hll { background-color: #ffffcc }
+.syntax { background: #f0f0f0; }
+.syntax .c { color: #60a0b0; font-style: italic } /* Comment */
+.syntax .err { border: 1px solid #FF0000 } /* Error */
+.syntax .k { color: #007020; font-weight: bold } /* Keyword */
+.syntax .o { color: #666666 } /* Operator */
+.syntax .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */
+.syntax .cp { color: #007020 } /* Comment.Preproc */
+.syntax .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */
+.syntax .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */
+.syntax .gd { color: #A00000 } /* Generic.Deleted */
+.syntax .ge { font-style: italic } /* Generic.Emph */
+.syntax .gr { color: #FF0000 } /* Generic.Error */
+.syntax .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.syntax .gi { color: #00A000 } /* Generic.Inserted */
+.syntax .go { color: #808080 } /* Generic.Output */
+.syntax .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
+.syntax .gs { font-weight: bold } /* Generic.Strong */
+.syntax .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.syntax .gt { color: #0040D0 } /* Generic.Traceback */
+.syntax .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
+.syntax .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
+.syntax .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
+.syntax .kp { color: #007020 } /* Keyword.Pseudo */
+.syntax .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
+.syntax .kt { color: #902000 } /* Keyword.Type */
+.syntax .m { color: #40a070 } /* Literal.Number */
+.syntax .s { color: #4070a0 } /* Literal.String */
+.syntax .na { color: #4070a0 } /* Name.Attribute */
+.syntax .nb { color: #007020 } /* Name.Builtin */
+.syntax .nc { color: #0e84b5; font-weight: bold } /* Name.Class */
+.syntax .no { color: #60add5 } /* Name.Constant */
+.syntax .nd { color: #555555; font-weight: bold } /* Name.Decorator */
+.syntax .ni { color: #d55537; font-weight: bold } /* Name.Entity */
+.syntax .ne { color: #007020 } /* Name.Exception */
+.syntax .nf { color: #06287e } /* Name.Function */
+.syntax .nl { color: #002070; font-weight: bold } /* Name.Label */
+.syntax .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
+.syntax .nt { color: #062873; font-weight: bold } /* Name.Tag */
+.syntax .nv { color: #bb60d5 } /* Name.Variable */
+.syntax .ow { color: #007020; font-weight: bold } /* Operator.Word */
+.syntax .w { color: #bbbbbb } /* Text.Whitespace */
+.syntax .mf { color: #40a070 } /* Literal.Number.Float */
+.syntax .mh { color: #40a070 } /* Literal.Number.Hex */
+.syntax .mi { color: #40a070 } /* Literal.Number.Integer */
+.syntax .mo { color: #40a070 } /* Literal.Number.Oct */
+.syntax .sb { color: #4070a0 } /* Literal.String.Backtick */
+.syntax .sc { color: #4070a0 } /* Literal.String.Char */
+.syntax .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
+.syntax .s2 { color: #4070a0 } /* Literal.String.Double */
+.syntax .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
+.syntax .sh { color: #4070a0 } /* Literal.String.Heredoc */
+.syntax .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
+.syntax .sx { color: #c65d09 } /* Literal.String.Other */
+.syntax .sr { color: #235388 } /* Literal.String.Regex */
+.syntax .s1 { color: #4070a0 } /* Literal.String.Single */
+.syntax .ss { color: #517918 } /* Literal.String.Symbol */
+.syntax .bp { color: #007020 } /* Name.Builtin.Pseudo */
+.syntax .vc { color: #bb60d5 } /* Name.Variable.Class */
+.syntax .vg { color: #bb60d5 } /* Name.Variable.Global */
+.syntax .vi { color: #bb60d5 } /* Name.Variable.Instance */
+.syntax .il { color: #40a070 } /* Literal.Number.Integer.Long */
+
+
+/* don't highlight errors */
+.syntax .err {
+ border: none;
+}
+
+.syntax {
+ font-size: .9em;
+ font-family:Monaco,"Courier New","DejaVu Sans Mono","Bitstream Vera Sans Mono",monospace;
+ background-color: #F8F8FF;
+
+ overflow:auto;
+ -moz-background-clip:border;
+ -moz-background-inline-policy:continuous;
+ -moz-background-origin:padding;
+ margin: 1em 0 1em 0;
+ border:1px solid #DDDDDD;
+
+ border-top-left-radius: 8px; -webkit-border-top-left-radius: 8px; -moz-border-radius-topleft: 8px;
+ border-top-right-radius: 8px; -webkit-border-top-right-radius: 8px; -moz-border-radius-topright: 8px;
+ border-style: solid; border-width: 1px; border-color: #dedede !important;
+ padding: 1em;
+}
+.syntax .linenodiv {
+ background-color:#ECECEC;
+ border-right:1px solid #DDDDDD;
+ color:#AAAAAA;
+ padding: .5em;
+ text-align:right;
+}
+.syntax .highlight {
+}
+.syntax pre {
+ margin:0;
+ padding:0;
+ border: none;
+}
+
+pre.syntax {
+ padding: .5em;
+ background-color: #F8F8FF; overflow:auto;
+}
+
+.syntax code {
+ font-family:Monaco,"Courier New","DejaVu Sans Mono","Bitstream Vera Sans Mono",monospace;
+ font-size: 10pt;
+}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/activemq-website/src/main/resources/styles/impact/css/site.css
----------------------------------------------------------------------
diff --git a/activemq-website/src/main/resources/styles/impact/css/site.css b/activemq-website/src/main/resources/styles/impact/css/site.css
new file mode 100644
index 0000000..27d1a79
--- /dev/null
+++ b/activemq-website/src/main/resources/styles/impact/css/site.css
@@ -0,0 +1,235 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+body, html {
+ font-family:Georgia, Arial, sans-serif;
+ color: #666666;
+}
+body, html, table, tr, td, tbody {
+ padding:0;
+ margin:0;
+ vertical-align: top;
+}
+body {
+ padding-top: 20px;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ font-family: 'Graublau Web', Helvetica, sans-serif;
+ overflow: visible;
+ color: #993333;
+}
+
+h2 {
+ border-top: 4px solid #E0E0E0 !important;
+ margin-top: 1.5em !important;
+ padding-top: 0.5em !important;
+}
+
+p { margin-bottom:0px; }
+
+a {
+ color: #700;
+ font-weight:bold;
+ text-decoration: none;
+}
+
+a:hover {
+ color: #ff3333;
+ text-decoration: underline;
+ }
+
+img {
+ border: none;
+/*
+ padding-right:2em
+*/
+}
+
+.wrapper { min-width: 762px; width: 762px; margin: 0 auto; }
+
+#navigation { width: 100%; float: left;
+ font-family: Helvetica,Verdana,Arial,sans-serif;
+ background: black;
+ text-align:center;
+ padding: 8px 0 8px 0;
+ color: #b55;
+ font-size: 10pt;
+ font-weight: bold;
+ position: absolute;
+ top: 0px;
+}
+#navigation a { color: white; }
+#navigation ul { display: block; margin:0; padding:0; }
+#navigation li { list-style-type: none; display: inline; margin:0 5px 0 5px;}
+
+#overview { width: 100%; padding-top:20px}
+#overview div.message {
+ font-size: 11pt;
+ margin-top: -20px;
+ padding-left: 120px;
+ width: 350px;
+}
+#overview div.message h1{ margin-bottom: 5px; display:none; }
+#overview div.message p{ margin-top: 0px; padding-bottom:14px; }
+
+#spot { width: 100%; float: left;
+ margin-top: 15px;
+ background:transparent url(../images/spot-banner.gif) repeat-x scroll 0 0;
+ height: 277px;
+}
+#spot div.title {
+ text-align:center; height:25px;
+ text-align:center; padding-top: 2px;
+ color: white; font-size: 10pt; font-weight: bold;
+ font-family: HelveticaNeue,"Helvetica Neue",Helvetica,Arial,Verdana,sans-serif;
+}
+#spot div.content table {
+ width: 100%; text-align:center;
+ color: black; font-size: 10pt;
+}
+
+#spot a:hover {text-decoration: none; }
+
+#spot div.spot-balloon {
+ background:transparent url( ../../../images/spot-get-involved.gif ) no-repeat;
+ background-position:center;
+ height: 121px;
+ text-align:left;
+ padding-top: 25px;
+ padding-left: 35px;
+}
+
+#spot div.spot-balloon li {
+/*
+ list-style: none;
+*/
+ list-style: disc;
+}
+
+/*
+#spot div.spot-balloon {
+ height: 120px;
+ text-align:left;
+ padding-top: 20px;
+ padding-left: 15px;
+}
+*/
+
+#content { width: 100%; float: left; padding-bottom: 20px; }
+#content .wrapper { min-width: 700px; width: 700px; margin: 0 auto; padding-top: 1em}
+#content div.left {
+ float:left;
+ width:200px;
+ text-align:right;
+ font-size: 18pt;
+ clear:both;
+}
+#content h1 {
+ font-size: 18pt;
+}
+#content div.right {
+ float:right;
+ width:450px;
+ text-align:left;
+}
+
+#blog { width: 100%; float: left; }
+#blog .wrapper { min-width: 600px; width: 600px; margin: 0 auto; }
+#blog h1 {
+ font-family: HelveticaNeue,"Helvetica Neue",Helvetica,Arial,Verdana,sans-serif;
+ font-size: 18pt; color: #993333;
+}
+#blog h2 {
+ border-bottom: thin dashed #DDD;
+ font-size: 16pt;
+ margin-bottom: 5px;
+}
+#blog div.post p {
+ padding-left: 10px;
+}
+#blog div.post .details {
+ padding-top: 5px;
+ color: #ccc;
+ font-size: 10pt;
+ font-family: HelveticaNeue,"Helvetica Neue",Helvetica,Arial,Verdana,sans-serif;
+}
+
+#content .post h2 {
+ margin-bottom:5px;
+}
+#content .post .details {
+ color: #ccc;
+ font-size: 10pt;
+ font-family: HelveticaNeue,"Helvetica Neue",Helvetica,Arial,Verdana,sans-serif;
+ margin-top:0px;
+}
+
+code {
+ font-size: .9em;
+ font-family: 'Droid Sans Mono', 'Courier New', monospace !important;
+}
+pre {
+ background-color: #F8F8FF;
+
+ overflow:auto;
+ -moz-background-clip:border;
+ -moz-background-inline-policy:continuous;
+ -moz-background-origin:padding;
+ margin: 1em 0 1em 0;
+ border:1px solid #DDDDDD;
+
+ border-top-left-radius: 8px; -webkit-border-top-left-radius: 8px; -moz-border-radius-topleft: 8px;
+ border-top-right-radius: 8px; -webkit-border-top-right-radius: 8px; -moz-border-radius-topright: 8px;
+ border-style: solid; border-width: 1px; border-color: #dedede !important;
+ padding: 1em;
+}
+pre code {
+ font-family:Monaco,"Courier New","DejaVu Sans Mono","Bitstream Vera Sans Mono",monospace;
+ font-weight:normal;
+ font-style:normal;
+}
+div.compare { width: 700px; }
+div.compare div.compare-left { float:left; width:340px; padding:5px; margin-top: 15px; }
+div.compare div.compare-right { float:right; width:340px; padding:5px; margin-top: 15px; }
+div.compare div h3 {
+ margin-left: 15px;
+ padding: 5px 15px;
+ display: inline;
+ font-size: .8em;
+ color: #666;
+
+ border-top: 1px solid #ccc; -moz-border-top-colors: #ccc white white #e5e5e5;
+ border-left: 1px solid #ccc; -moz-border-left-colors: #ccc white white #e5e5e5;
+ border-right: 1px solid #ccc;-moz-border-right-colors: #ccc white white #e5e5e5;
+ border-top-left-radius: 8px; -webkit-border-top-left-radius: 8px; -moz-border-radius-topleft: 8px;
+ border-top-right-radius: 8px; -webkit-border-top-right-radius: 8px; -moz-border-radius-topright: 8px;
+}
+div.compare div div {
+ margin: 5px 0px 0px 0px;
+}
+
+.clear {
+ clear:both;
+}
+
+.wide div.compare div.compare-left { float:none; width:700px; }
+.wide div.compare div.compare-right { float:none; width:700px; }
+
+.hide {
+ display:none;
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/distribution/activemq/pom.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/pom.xml b/distribution/activemq/pom.xml
index 9355c3d..8d60c60 100644
--- a/distribution/activemq/pom.xml
+++ b/distribution/activemq/pom.xml
@@ -109,6 +109,11 @@
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-web</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
<artifactId>activemq-core-client</artifactId>
<version>${project.version}</version>
</dependency>
@@ -155,7 +160,25 @@
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-client</artifactId>
</dependency>
-
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-website</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-website</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ <classifier>javadoc</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.jetty.aggregate</groupId>
+ <artifactId>jetty-all-server</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-servlet_3.0_spec</artifactId>
+ </dependency>
<!-- javadoc -->
<dependency>
<groupId>org.apache.activemq</groupId>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/distribution/activemq/src/main/assembly/dep.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/assembly/dep.xml b/distribution/activemq/src/main/assembly/dep.xml
index e3323d2..1a60ed2 100644
--- a/distribution/activemq/src/main/assembly/dep.xml
+++ b/distribution/activemq/src/main/assembly/dep.xml
@@ -45,9 +45,11 @@
<include>com.google.guava:guava</include>
<include>javax.inject:javax.inject</include>
<include>com.fasterxml.jackson.core:jackson-*</include>
+ <include>org.eclipse.jetty.aggregate:jetty-all-server</include>
+ <include>org.apache.geronimo.specs:geronimo-servlet_3.0_spec</include>
</includes>
<excludes>
- <exclude>*:javadoc</exclude>
+ <exclude>org.apache.activemq:activemq-website</exclude>
</excludes>
<outputDirectory>lib</outputDirectory>
<unpack>false</unpack>
@@ -65,17 +67,23 @@
</includes>
</unpackOptions>
</dependencySet>
- <!-- javadoc -->
- <dependencySet>
- <includes>
- <include>org.apache.activemq:activemq-core-client:*:javadoc</include>
- <include>org.apache.activemq:activemq-server:*:javadoc</include>
- <include>org.apache.activemq:activemq-jms-server:*:javadoc</include>
- <include>org.apache.activemq:activemq-jms-client:*:javadoc</include>
- </includes>
- <outputDirectory>docs/api/${artifact.artifactId}</outputDirectory>
- <unpack>true</unpack>
- </dependencySet>
+ <dependencySet>
+ <includes>
+ <include>org.apache.activemq:activemq-website</include>
+ </includes>
+ <excludes>
+ <exclude>org.apache.activemq:activemq-website:jar:javadoc</exclude>
+ </excludes>
+ <outputDirectory>web</outputDirectory>
+ <unpack>true</unpack>
+ </dependencySet>
+ <dependencySet>
+ <includes>
+ <include>org.apache.activemq:activemq-website:jar:javadoc</include>
+ </includes>
+ <outputDirectory>web/api</outputDirectory>
+ <unpack>true</unpack>
+ </dependencySet>
</dependencySets>
<fileSets>
<!-- schema -->
@@ -94,15 +102,15 @@
<directory>src/main/resources</directory>
<outputDirectory>/</outputDirectory>
<lineEnding>keep</lineEnding>
- <includes>
- <include>bin/*</include>
- <include>config/**</include>
- <include>licenses/*</include>
- </includes>
+ <excludes>
+ <exclude>**/target/**</exclude>
+ <exclude>**/**/*.iml</exclude>
+ <exclude>**/**/*.dat</exclude>
+ </excludes>
</fileSet>
<fileSet>
<directory>../../examples</directory>
- <outputDirectory>examples</outputDirectory>
+ <outputDirectory>web/examples</outputDirectory>
<lineEnding>keep</lineEnding>
<excludes>
<exclude>**/target/**</exclude>
@@ -113,13 +121,8 @@
<!-- docs -->
<!--todo, this is crap, there must be better jdocbook assembly integration-->
<fileSet>
- <directory>../../docs/user-manual/target/docbook/publish/en</directory>
- <outputDirectory>docs/user-manual</outputDirectory>
- <lineEnding>keep</lineEnding>
- </fileSet>
- <fileSet>
- <directory>../../docs/quickstart-guide/target/docbook/publish/en</directory>
- <outputDirectory>docs/quickstart-guide</outputDirectory>
+ <directory>../../docs/user-manual/target/docbook/publish/en/html/</directory>
+ <outputDirectory>web/user-manual</outputDirectory>
<lineEnding>keep</lineEnding>
</fileSet>
<fileSet>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml b/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
index 974d7b6..698da46 100644
--- a/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
@@ -18,12 +18,15 @@
<broker xmlns="http://activemq.org/schema">
- <core configuration="file:${activemq.home}/config/clustered/activemq-configuration.xml"></core>
- <jms configuration="file:${activemq.home}/config/clustered/activemq-jms.xml"></jms>
+ <core configuration="file:${activemq.home}/config/clustered/activemq-configuration.xml"/>
+
+ <jms configuration="file:${activemq.home}/config/clustered/activemq-jms.xml"/>
<basic-security/>
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
+ <web bind="http://localhost:8161" path="web"/>
+
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml b/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
index d539a5e..dbec706 100644
--- a/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
@@ -18,12 +18,15 @@
<broker xmlns="http://activemq.org/schema">
- <core configuration="file:${activemq.home}/config/non-clustered/activemq-configuration.xml"></core>
- <jms configuration="file:${activemq.home}/config/non-clustered/activemq-jms.xml"></jms>
+ <core configuration="file:${activemq.home}/config/non-clustered/activemq-configuration.xml"/>
+
+ <jms configuration="file:${activemq.home}/config/non-clustered/activemq-jms.xml"/>
<basic-security/>
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
+ <web bind="http://localhost:8161" path="web"/>
+
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml b/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
index e94e5f7..1bf29ed 100644
--- a/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
@@ -18,12 +18,15 @@
<broker xmlns="http://activemq.org/schema">
- <core configuration="file:${activemq.home}/config/replicated/activemq-configuration.xml"></core>
- <jms configuration="file:${activemq.home}/config/replicated/activemq-jms.xml"></jms>
+ <core configuration="file:${activemq.home}/config/replicated/activemq-configuration.xml"/>
+
+ <jms configuration="file:${activemq.home}/config/replicated/activemq-jms.xml"/>
<basic-security/>
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
+ <web bind="http://localhost:8161" path="web"/>
+
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml b/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
index 0da0da1..0da0234 100644
--- a/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
@@ -18,12 +18,15 @@
<broker xmlns="http://activemq.org/schema">
- <core configuration="file:${activemq.home}/config/shared-store/activemq-configuration.xml"></core>
- <jms configuration="file:${activemq.home}/config/shared-store/activemq-jms.xml"></jms>
+ <core configuration="file:${activemq.home}/config/shared-store/activemq-configuration.xml"/>
+
+ <jms configuration="file:${activemq.home}/config/shared-store/activemq-jms.xml"/>
<basic-security/>
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
+ <web bind="http://localhost:8161" path="web"/>
+
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/docs/user-manual/pom.xml
----------------------------------------------------------------------
diff --git a/docs/user-manual/pom.xml b/docs/user-manual/pom.xml
index 54ccfbf..cf693f2 100644
--- a/docs/user-manual/pom.xml
+++ b/docs/user-manual/pom.xml
@@ -84,9 +84,10 @@
</pluginRepositories>
<profiles>
- <!-- mvn compile -->
+
+ <!-- mvn compile -Phtml -->
<profile>
- <id>all</id>
+ <id>html</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
@@ -100,30 +101,19 @@
<configuration>
<formats>
<format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>${docname}.pdf</finalName>
- </format>
- <format>
<formatName>html</formatName>
<stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
</formats>
</configuration>
</plugin>
</plugins>
</build>
</profile>
-
- <!-- mvn compile -Phtml -->
+ <!-- mvn compile -->
<profile>
- <id>html</id>
+ <id>all</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
@@ -132,15 +122,25 @@
<plugin>
<groupId>org.jboss.maven.plugins</groupId>
<artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.2.1</version>
+ <version>2.3.5</version>
<extensions>true</extensions>
<configuration>
<formats>
<format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>${docname}.pdf</finalName>
+ </format>
+ <format>
<formatName>html</formatName>
<stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
</formats>
</configuration>
</plugin>
@@ -159,7 +159,7 @@
<plugin>
<groupId>org.jboss.maven.plugins</groupId>
<artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.2.1</version>
+ <version>2.3.5</version>
<extensions>true</extensions>
</plugin>
</plugins>
@@ -177,7 +177,7 @@
<plugin>
<groupId>org.jboss.maven.plugins</groupId>
<artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.2.1</version>
+ <version>2.3.5</version>
<extensions>true</extensions>
<configuration>
<formats>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index b49a9a4..c9281c0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -358,6 +358,17 @@
<artifactId>tjws</artifactId>
<version>${resteasy.version}</version>
</dependency>
+ <!-- needed for jetty web support-->
+ <dependency>
+ <groupId>org.eclipse.jetty.aggregate</groupId>
+ <artifactId>jetty-all-server</artifactId>
+ <version>7.6.9.v20130131</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-servlet_3.0_spec</artifactId>
+ <version>1.0</version>
+ </dependency>
<!-- needed to compile the tests -->
<dependency>
<groupId>junit</groupId>
@@ -471,6 +482,8 @@
</activation>
<modules>
<module>activemq-dto</module>
+ <module>activemq-web</module>
+ <module>activemq-website</module>
<module>activemq-bootstrap</module>
<module>activemq-commons</module>
<module>activemq-selector</module>
@@ -496,6 +509,8 @@
<id>maven-release</id>
<modules>
<module>activemq-dto</module>
+ <module>activemq-web</module>
+ <module>activemq-website</module>
<module>activemq-bootstrap</module>
<module>activemq-commons</module>
<module>activemq-selector</module>
@@ -521,6 +536,8 @@
<id>release</id>
<modules>
<module>activemq-dto</module>
+ <module>activemq-web</module>
+ <module>activemq-website</module>
<module>activemq-bootstrap</module>
<module>activemq-commons</module>
<module>activemq-selector</module>
@@ -548,6 +565,8 @@
<id>hudson-tests</id>
<modules>
<module>activemq-dto</module>
+ <module>activemq-web</module>
+ <module>activemq-website</module>
<module>activemq-bootstrap</module>
<module>activemq-commons</module>
<module>activemq-selector</module>
@@ -586,6 +605,7 @@
<id>jenkins-fast-tests</id>
<modules>
<module>activemq-dto</module>
+ <module>activemq-web</module>
<module>activemq-bootstrap</module>
<module>activemq-commons</module>
<module>activemq-selector</module>
@@ -620,6 +640,7 @@
<id>examples</id>
<modules>
<module>activemq-dto</module>
+ <module>activemq-web</module>
<module>activemq-bootstrap</module>
<module>activemq-commons</module>
<module>activemq-selector</module>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/eb4f8354/readme.txt
----------------------------------------------------------------------
diff --git a/readme.txt b/readme.txt
deleted file mode 100644
index e69de29..0000000
[2/3] activemq-6 git commit: ACTIVEMQ6-15 - expose Jolokia in web
server
Posted by cl...@apache.org.
ACTIVEMQ6-15 - expose Jolokia in web server
https://issues.apache.org/jira/browse/ACTIVEMQ6-15
The Jolokia War Agent is now bootstrapped with the server so mBeans are accessible via Rest API's
Project: http://git-wip-us.apache.org/repos/asf/activemq-6/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-6/commit/79a970bc
Tree: http://git-wip-us.apache.org/repos/asf/activemq-6/tree/79a970bc
Diff: http://git-wip-us.apache.org/repos/asf/activemq-6/diff/79a970bc
Branch: refs/heads/master
Commit: 79a970bc7af73efc83ef90300c006da80329c643
Parents: eb4f835
Author: Andy Taylor <an...@apache.org>
Authored: Tue Dec 2 09:54:10 2014 +0000
Committer: Andy Taylor <an...@apache.org>
Committed: Tue Dec 2 16:52:23 2014 +0000
----------------------------------------------------------------------
distribution/activemq/pom.xml | 5 +++++
distribution/activemq/src/main/assembly/dep.xml | 7 +++++++
.../src/main/resources/config/clustered/bootstrap.xml | 4 +++-
.../src/main/resources/config/non-clustered/bootstrap.xml | 4 +++-
.../src/main/resources/config/replicated/bootstrap.xml | 4 +++-
.../src/main/resources/config/shared-store/bootstrap.xml | 4 +++-
pom.xml | 8 +++++++-
7 files changed, 31 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/distribution/activemq/pom.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/pom.xml b/distribution/activemq/pom.xml
index 8d60c60..c0e5845 100644
--- a/distribution/activemq/pom.xml
+++ b/distribution/activemq/pom.xml
@@ -179,6 +179,11 @@
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_3.0_spec</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.jolokia</groupId>
+ <artifactId>jolokia-war</artifactId>
+ <type>war</type>
+ </dependency>
<!-- javadoc -->
<dependency>
<groupId>org.apache.activemq</groupId>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/distribution/activemq/src/main/assembly/dep.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/assembly/dep.xml b/distribution/activemq/src/main/assembly/dep.xml
index 1a60ed2..a4c17ac 100644
--- a/distribution/activemq/src/main/assembly/dep.xml
+++ b/distribution/activemq/src/main/assembly/dep.xml
@@ -84,6 +84,13 @@
<outputDirectory>web/api</outputDirectory>
<unpack>true</unpack>
</dependencySet>
+ <dependencySet>
+ <includes>
+ <include>org.jolokia:jolokia-war:war</include>
+ </includes>
+ <outputDirectory>web</outputDirectory>
+ <unpack>false</unpack>
+ </dependencySet>
</dependencySets>
<fileSets>
<!-- schema -->
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml b/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
index 698da46..76f88d1 100644
--- a/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/clustered/bootstrap.xml
@@ -26,7 +26,9 @@
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
- <web bind="http://localhost:8161" path="web"/>
+ <web bind="http://localhost:8161" path="web">
+ <app url="jolokia" war="jolokia-war-1.2.3.war"/>
+ </web>
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml b/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
index dbec706..a88b777 100644
--- a/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/non-clustered/bootstrap.xml
@@ -26,7 +26,9 @@
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
- <web bind="http://localhost:8161" path="web"/>
+ <web bind="http://localhost:8161" path="web">
+ <app url="jolokia" war="jolokia-war-1.2.3.war"/>
+ </web>
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml b/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
index 1bf29ed..6fd5686 100644
--- a/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/replicated/bootstrap.xml
@@ -26,7 +26,9 @@
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
- <web bind="http://localhost:8161" path="web"/>
+ <web bind="http://localhost:8161" path="web">
+ <app url="jolokia" war="jolokia-war-1.2.3.war"/>
+ </web>
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
----------------------------------------------------------------------
diff --git a/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml b/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
index 0da0234..344157b 100644
--- a/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
+++ b/distribution/activemq/src/main/resources/config/shared-store/bootstrap.xml
@@ -26,7 +26,9 @@
<naming bindAddress="localhost" port="1099" rmiBindAddress="localhost" rmiPort="1098"/>
- <web bind="http://localhost:8161" path="web"/>
+ <web bind="http://localhost:8161" path="web">
+ <app url="jolokia" war="jolokia-war-1.2.3.war"/>
+ </web>
</broker>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/79a970bc/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index c9281c0..580ce49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -368,7 +368,13 @@
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_3.0_spec</artifactId>
<version>1.0</version>
- </dependency>
+ </dependency>
+ <dependency>
+ <groupId>org.jolokia</groupId>
+ <artifactId>jolokia-war</artifactId>
+ <type>war</type>
+ <version>1.2.3</version>
+ </dependency>
<!-- needed to compile the tests -->
<dependency>
<groupId>junit</groupId>
[3/3] activemq-6 git commit: Merge #29 on WebServer integration
Posted by cl...@apache.org.
Merge #29 on WebServer integration
Project: http://git-wip-us.apache.org/repos/asf/activemq-6/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-6/commit/4e8edab4
Tree: http://git-wip-us.apache.org/repos/asf/activemq-6/tree/4e8edab4
Diff: http://git-wip-us.apache.org/repos/asf/activemq-6/diff/4e8edab4
Branch: refs/heads/master
Commit: 4e8edab4f66308a6577dbcde01b2b8ab95510552
Parents: 592e47f 79a970b
Author: Clebert Suconic <cl...@apache.org>
Authored: Tue Dec 2 11:56:02 2014 -0500
Committer: Clebert Suconic <cl...@apache.org>
Committed: Tue Dec 2 11:56:20 2014 -0500
----------------------------------------------------------------------
.../org/apache/activemq/cli/commands/Run.java | 24 +-
.../activemq/components/ExternalComponent.java | 25 ++
activemq-dto/pom.xml | 7 +-
.../java/org/apache/activemq/dto/AppDTO.java | 34 +++
.../java/org/apache/activemq/dto/BrokerDTO.java | 8 +
.../org/apache/activemq/dto/ComponentDTO.java | 30 +++
.../org/apache/activemq/dto/WebServerDTO.java | 43 ++++
activemq-journal/pom.xml | 38 ---
activemq-selector/pom.xml | 37 ---
activemq-web/pom.xml | 47 ++++
.../activemq/component/WebServerComponent.java | 112 +++++++++
.../activemq/test/WebServerComponentTest.java | 125 ++++++++++
.../webapps/WebServerComponentTest.txt | 1 +
activemq-website/pom.xml | 96 ++++++++
.../src/main/resources/images/activemq-logo.png | Bin 0 -> 6819 bytes
activemq-website/src/main/resources/index.html | 64 +++++
.../resources/styles/impact/css/pygmentize.css | 127 ++++++++++
.../main/resources/styles/impact/css/site.css | 235 +++++++++++++++++++
distribution/activemq/pom.xml | 30 ++-
distribution/activemq/src/main/assembly/dep.xml | 60 +++--
.../resources/config/clustered/bootstrap.xml | 9 +-
.../config/non-clustered/bootstrap.xml | 9 +-
.../resources/config/replicated/bootstrap.xml | 9 +-
.../resources/config/shared-store/bootstrap.xml | 9 +-
docs/user-manual/pom.xml | 36 +--
pom.xml | 27 +++
readme.txt | 0
27 files changed, 1113 insertions(+), 129 deletions(-)
----------------------------------------------------------------------