From e3d380bb7d09b978ba0b57362ec9893c4cc252ff Mon Sep 17 00:00:00 2001
From: Greg Wilkins
Date: Thu, 12 Mar 2015 13:41:18 +1100
Subject: 461941 JMX Remote host:port set from start properties
---
.../org/eclipse/jetty/embedded/ServerWithJMX.java | 56 ++++++++++++++++++++++
jetty-jmx/src/main/config/etc/jetty-jmx-remote.xml | 22 +++++----
2 files changed, 68 insertions(+), 10 deletions(-)
create mode 100644 examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java
diff --git a/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java
new file mode 100644
index 0000000000..79d2a5fe28
--- /dev/null
+++ b/examples/embedded/src/main/java/org/eclipse/jetty/embedded/ServerWithJMX.java
@@ -0,0 +1,56 @@
+//
+// ========================================================================
+// Copyright (c) 1995-2015 Mort Bay Consulting Pty. Ltd.
+// ------------------------------------------------------------------------
+// All rights reserved. This program and the accompanying materials
+// are made available under the terms of the Eclipse Public License v1.0
+// and Apache License v2.0 which accompanies this distribution.
+//
+// The Eclipse Public License is available at
+// http://www.eclipse.org/legal/epl-v10.html
+//
+// The Apache License v2.0 is available at
+// http://www.opensource.org/licenses/apache2.0.php
+//
+// You may elect to redistribute this code under either of these licenses.
+// ========================================================================
+//
+
+package org.eclipse.jetty.embedded;
+
+import java.lang.management.ManagementFactory;
+
+import javax.management.remote.JMXServiceURL;
+
+import org.eclipse.jetty.jmx.ConnectorServer;
+import org.eclipse.jetty.jmx.MBeanContainer;
+import org.eclipse.jetty.server.Server;
+
+/**
+ * The simplest possible Jetty server.
+ */
+public class ServerWithJMX
+{
+ public static void main( String[] args ) throws Exception
+ {
+ // === jetty-jmx.xml ===
+ MBeanContainer mbContainer = new MBeanContainer(
+ ManagementFactory.getPlatformMBeanServer());
+
+ Server server = new Server(8080);
+ server.addBean(mbContainer);
+
+ ConnectorServer jmx = new ConnectorServer(
+ new JMXServiceURL(
+ "rmi",
+ null,
+ 1999,
+ "/jndi/rmi://localhost:1999/jmxrmi"),
+ "org.eclipse.jetty.jmx:name=rmiconnectorserver");
+ server.addBean(jmx);
+
+ server.start();
+ server.dumpStdErr();
+ server.join();
+ }
+}
diff --git a/jetty-jmx/src/main/config/etc/jetty-jmx-remote.xml b/jetty-jmx/src/main/config/etc/jetty-jmx-remote.xml
index 20a2dda239..3527d8b375 100644
--- a/jetty-jmx/src/main/config/etc/jetty-jmx-remote.xml
+++ b/jetty-jmx/src/main/config/etc/jetty-jmx-remote.xml
@@ -11,17 +11,19 @@
the RMI registry hostname and port number, that may need to be modified
in order to comply with the firewall requirements.
-->
-
+
-
- rmi
-
-
- /jndi/rmi://:/jmxrmi
+
+
+
+ rmi
+
+
+ /jndi/rmi://:/jmxrmi
+
+
+ org.eclipse.jetty.jmx:name=rmiconnectorserver
- org.eclipse.jetty.jmx:name=rmiconnectorserver
-
-
+
-
--
cgit v1.2.3
From afa926d45defb451aeb368eb9546cd4d5604867e Mon Sep 17 00:00:00 2001
From: Jan Bartel
Date: Thu, 12 Mar 2015 18:51:05 +1100
Subject: 461919 - Use osgi-friendly serviceloader mechanism for
WebSocketServletFactory
---
.../jetty/osgi/test/TestJettyOSGiBootCore.java | 4 ++--
jetty-websocket/websocket-server/pom.xml | 20 ++++++++++++++++++++
jetty-websocket/websocket-servlet/pom.xml | 1 +
3 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java
index ac4eb4afca..8f74dc3a66 100644
--- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java
+++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestJettyOSGiBootCore.java
@@ -110,8 +110,8 @@ public class TestJettyOSGiBootCore
res.add(mavenBundle().groupId( "org.eclipse.jetty" ).artifactId( "jetty-annotations" ).versionAsInProject().start());
res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-api" ).versionAsInProject().noStart());
res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-common" ).versionAsInProject().noStart());
- res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-servlet" ).versionAsInProject().noStart());
- res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-server" ).versionAsInProject().noStart());
+ res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-servlet" ).versionAsInProject());
+ res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-server" ).versionAsInProject());
res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "websocket-client" ).versionAsInProject().noStart());
res.add(mavenBundle().groupId( "javax.websocket" ).artifactId( "javax.websocket-api" ).versionAsInProject().noStart());
res.add(mavenBundle().groupId( "org.eclipse.jetty.websocket" ).artifactId( "javax-websocket-client-impl").versionAsInProject().noStart());
diff --git a/jetty-websocket/websocket-server/pom.xml b/jetty-websocket/websocket-server/pom.xml
index 5cc95c078e..062a326bbc 100644
--- a/jetty-websocket/websocket-server/pom.xml
+++ b/jetty-websocket/websocket-server/pom.xml
@@ -16,6 +16,26 @@
+
+ org.apache.felix
+ maven-bundle-plugin
+ true
+
+
+ generate-manifest
+
+ manifest
+
+
+
+ osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)"
+ osgi.serviceloader; osgi.serviceloader=org.eclipse.jetty.websocket.servlet.WebSocketServletFactory
+ <_nouses>true
+
+
+
+
+
org.apache.maven.plugins
maven-jar-plugin
diff --git a/jetty-websocket/websocket-servlet/pom.xml b/jetty-websocket/websocket-servlet/pom.xml
index 48c8b52886..98822255ca 100644
--- a/jetty-websocket/websocket-servlet/pom.xml
+++ b/jetty-websocket/websocket-servlet/pom.xml
@@ -42,6 +42,7 @@
<_nouses>true
org.eclipse.jetty.websocket.server.*;version="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}",org.eclipse.jetty.websocket.server.pathmap.*;version="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}"
+ osgi.serviceloader; filter:="(osgi.serviceloader=org.eclipse.jetty.websocket.servlet.WebSocketServletFactory)";cardinality:=multiple, osgi.extender; filter:="(osgi.extender=osgi.serviceloader.processor)"
--
cgit v1.2.3
From 4a4131750195cc27c23ac417df4bde55a2a79c13 Mon Sep 17 00:00:00 2001
From: Joakim Erdfelt
Date: Fri, 13 Mar 2015 13:35:04 -0700
Subject: 459273 - Redundant license notices
+ Adding missing .hasFiles() check in download path.
---
.../main/java/org/eclipse/jetty/start/Main.java | 2 +-
.../java/org/eclipse/jetty/start/LicenseTest.java | 27 ++++++++++++++++++++++
2 files changed, 28 insertions(+), 1 deletion(-)
diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
index d2b183ceef..9f2de829a0 100644
--- a/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
+++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
@@ -721,7 +721,7 @@ public class Main
{
for (Module module : args.getAllModules().resolveEnabled())
{
- if (!module.acknowledgeLicense())
+ if (!module.hasFiles(baseHome) && !module.acknowledgeLicense())
{
StartLog.warn(EXITING_LICENSE_NOT_ACKNOWLEDGED);
System.exit(1);
diff --git a/jetty-start/src/test/java/org/eclipse/jetty/start/LicenseTest.java b/jetty-start/src/test/java/org/eclipse/jetty/start/LicenseTest.java
index d7fc0580aa..5422aa169c 100644
--- a/jetty-start/src/test/java/org/eclipse/jetty/start/LicenseTest.java
+++ b/jetty-start/src/test/java/org/eclipse/jetty/start/LicenseTest.java
@@ -58,6 +58,7 @@ public class LicenseTest
int len = cmds.size();
String args[] = cmds.toArray(new String[len]);
+ System.err.printf("%n## Exec: %s%n", Main.join(cmds,", "));
Main main = new Main();
StartArgs startArgs = main.processCommandLine(args);
main.start(startArgs);
@@ -115,6 +116,32 @@ public class LicenseTest
assertThat("Contents",contents,containsString("--module=spdy"+System.lineSeparator()));
}
+ @Test
+ public void testAdd_HttpSpdy_Then_Deploy() throws Exception
+ {
+ File basePath = testdir.getEmptyDir();
+
+ List cmds = getBaseCommandLine(basePath);
+
+ cmds.add("-Dorg.eclipse.jetty.start.ack.license.protonego-impl=true");
+ cmds.add("--add-to-start=http,spdy");
+
+ execMain(cmds);
+
+ String contents = assertFileExists(basePath, "start.ini");
+ assertThat("Contents",contents,containsString("--module=http"+System.lineSeparator()));
+ assertThat("Contents",contents,containsString("--module=spdy"+System.lineSeparator()));
+
+ // now request deploy (no license check should occur)
+ List cmds2 = getBaseCommandLine(basePath);
+ cmds2.add("--add-to-start=deploy");
+ execMain(cmds2);
+
+ contents = assertFileExists(basePath, "start.ini");
+ assertThat("Contents",contents,containsString("--module=deploy"+System.lineSeparator()));
+ assertThat("Contents",contents,containsString("--module=spdy"+System.lineSeparator()));
+ }
+
@Test
public void testCreate_SPDY_Licensed() throws Exception
{
--
cgit v1.2.3