You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by pa...@apache.org on 2020/01/10 14:32:50 UTC

[wicket] branch jakarta-api updated: WICKET-6723: migrate to servlet 4 and jetty 10

This is an automated email from the ASF dual-hosted git repository.

papegaaij pushed a commit to branch jakarta-api
in repository https://gitbox.apache.org/repos/asf/wicket.git


The following commit(s) were added to refs/heads/jakarta-api by this push:
     new 59b6a05  WICKET-6723: migrate to servlet 4 and jetty 10
59b6a05 is described below

commit 59b6a0554fff05065a861fa142f4822309da0cc4
Author: Emond Papegaaij <em...@topicus.nl>
AuthorDate: Fri Jan 10 15:32:28 2020 +0100

    WICKET-6723: migrate to servlet 4 and jetty 10
---
 pom.xml                                            |  5 +--
 .../testing/jstest/StartJavaScriptTests.java       |  2 +-
 .../protocol/http/mock/MockServletContext.java     | 41 ++++++++++++++++++++++
 wicket-examples/pom.xml                            |  2 +-
 .../org/apache/wicket/examples/StartExamples.java  | 11 +++---
 .../wicket-http2/wicket-http2-jetty/pom.xml        | 12 ++++++-
 .../wicket-native-websocket-javax/pom.xml          |  2 +-
 7 files changed, 62 insertions(+), 13 deletions(-)

diff --git a/pom.xml b/pom.xml
index eb72509..afa3083 100644
--- a/pom.xml
+++ b/pom.xml
@@ -155,7 +155,8 @@
 		<jakarta.validation-api.version>2.0.2</jakarta.validation-api.version>
 		<jakarta.websocket-api.version>1.1.2</jakarta.websocket-api.version>
 		<jdk-serializable-functional.version>1.9.0</jdk-serializable-functional.version>
-		<jetty.version>9.4.21.v20190926</jetty.version>
+		<jetty.version>10.0.0.alpha1</jetty.version>
+		<jetty9.version>9.4.21.v20190926</jetty9.version>
 		<junit.version>5.5.2</junit.version>
 		<jsr305.version>3.0.2</jsr305.version>
 		<logback.version>1.2.3</logback.version>
@@ -598,7 +599,7 @@
 			</dependency>
 			<dependency>
 				<groupId>org.eclipse.jetty.websocket</groupId>
-				<artifactId>javax-websocket-server-impl</artifactId>
+				<artifactId>javax-websocket-server</artifactId>
 				<version>${jetty.version}</version>
 				<scope>test</scope>
 			</dependency>
diff --git a/testing/wicket-js-tests/src/test/java/org/apache/wicket/testing/jstest/StartJavaScriptTests.java b/testing/wicket-js-tests/src/test/java/org/apache/wicket/testing/jstest/StartJavaScriptTests.java
index 05e99d5..ee5b6a2 100644
--- a/testing/wicket-js-tests/src/test/java/org/apache/wicket/testing/jstest/StartJavaScriptTests.java
+++ b/testing/wicket-js-tests/src/test/java/org/apache/wicket/testing/jstest/StartJavaScriptTests.java
@@ -74,7 +74,7 @@ public class StartJavaScriptTests
 			// use this certificate anywhere important as the passwords are
 			// available in the source.
 
-			SslContextFactory sslContextFactory = new SslContextFactory.Server();
+			SslContextFactory.Server sslContextFactory = new SslContextFactory.Server();
 			sslContextFactory.setKeyStoreResource(keystore);
 			sslContextFactory.setKeyStorePassword("wicket");
 			sslContextFactory.setKeyManagerPassword("wicket");
diff --git a/wicket-core/src/main/java/org/apache/wicket/protocol/http/mock/MockServletContext.java b/wicket-core/src/main/java/org/apache/wicket/protocol/http/mock/MockServletContext.java
index 6a0f8e6..9f17403 100755
--- a/wicket-core/src/main/java/org/apache/wicket/protocol/http/mock/MockServletContext.java
+++ b/wicket-core/src/main/java/org/apache/wicket/protocol/http/mock/MockServletContext.java
@@ -88,6 +88,8 @@ public class MockServletContext implements ServletContext
 	private final ValueMap mimeTypes = new ValueMap();
 
 	private File webappRoot;
+	
+	private int sessionTimeoutInMinutes = 30; 
 
 	private final SessionCookieConfig sessionCookieConfig = new SessionCookieConfig()
 	{
@@ -667,6 +669,12 @@ public class MockServletContext implements ServletContext
 	{
 		return servletRegistration;
 	}
+	
+	@Override
+	public Dynamic addJspFile(String servletName, String jspFile)
+	{
+		return null;
+	}
 
 	@Override
 	public FilterRegistration.Dynamic addFilter(String filterName, String className)
@@ -867,8 +875,41 @@ public class MockServletContext implements ServletContext
 	{
 		return "";
 	}
+	
+	@Override
+	public int getSessionTimeout()
+	{
+		return sessionTimeoutInMinutes;
+	}
+	
+	@Override
+	public void setSessionTimeout(int sessionTimeout)
+	{
+		this.sessionTimeoutInMinutes = sessionTimeout;
+	}
 
+	@Override
+	public String getRequestCharacterEncoding()
+	{
+		return null;
+	}
 
+	@Override
+	public void setRequestCharacterEncoding(String encoding)
+	{
+	}
+	
+	@Override
+	public String getResponseCharacterEncoding()
+	{
+		return null;
+	}
+	
+	@Override
+	public void setResponseCharacterEncoding(String encoding)
+	{
+	}
+	
 	/**
 	 * Invocation handler for proxy interface of {@link javax.servlet.ServletRegistration.Dynamic}.
 	 * This class intercepts invocation for method {@link javax.servlet.ServletRegistration.Dynamic#getMappings}
diff --git a/wicket-examples/pom.xml b/wicket-examples/pom.xml
index 6e16e75..875948d 100644
--- a/wicket-examples/pom.xml
+++ b/wicket-examples/pom.xml
@@ -169,7 +169,7 @@
 		</dependency>
 		<dependency>
 			<groupId>org.eclipse.jetty.websocket</groupId>
-			<artifactId>javax-websocket-server-impl</artifactId>
+			<artifactId>javax-websocket-server</artifactId>
 		</dependency>
 		<dependency>
 			<groupId>org.glassfish</groupId>
diff --git a/wicket-examples/src/test/java/org/apache/wicket/examples/StartExamples.java b/wicket-examples/src/test/java/org/apache/wicket/examples/StartExamples.java
index fecafda..27fda8c 100644
--- a/wicket-examples/src/test/java/org/apache/wicket/examples/StartExamples.java
+++ b/wicket-examples/src/test/java/org/apache/wicket/examples/StartExamples.java
@@ -16,10 +16,10 @@
  */
 package org.apache.wicket.examples;
 
-import java.io.File;
 import java.lang.management.ManagementFactory;
 
 import javax.management.MBeanServer;
+import javax.websocket.server.ServerContainer;
 
 import org.apache.wicket.protocol.ws.javax.WicketServerEndpointConfig;
 import org.eclipse.jetty.jmx.MBeanContainer;
@@ -29,13 +29,10 @@ import org.eclipse.jetty.server.SecureRequestCustomizer;
 import org.eclipse.jetty.server.Server;
 import org.eclipse.jetty.server.ServerConnector;
 import org.eclipse.jetty.server.SslConnectionFactory;
-import org.eclipse.jetty.server.session.DefaultSessionCache;
-import org.eclipse.jetty.server.session.FileSessionDataStore;
 import org.eclipse.jetty.util.resource.Resource;
 import org.eclipse.jetty.util.ssl.SslContextFactory;
 import org.eclipse.jetty.webapp.WebAppContext;
-import org.eclipse.jetty.websocket.jsr356.server.ServerContainer;
-import org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer;
+import org.eclipse.jetty.websocket.javax.server.config.JavaxWebSocketServletContainerInitializer;
 
 /**
  * Separate startup class for people that want to run the examples directly. Use parameter
@@ -75,7 +72,7 @@ public class StartExamples
 			// use this certificate anywhere important as the passwords are
 			// available in the source.
 
-			SslContextFactory sslContextFactory = new SslContextFactory.Server();
+			SslContextFactory.Server sslContextFactory = new SslContextFactory.Server();
 			sslContextFactory.setKeyStoreResource(keystore);
 			sslContextFactory.setKeyStorePassword("wicket");
 			sslContextFactory.setKeyManagerPassword("wicket");
@@ -107,7 +104,7 @@ public class StartExamples
 //		sessionCache.setSessionDataStore(sessionStore);
 //		bb.getSessionHandler().setSessionCache(sessionCache);
 		
-		ServerContainer serverContainer = WebSocketServerContainerInitializer.configureContext(bb);
+		ServerContainer serverContainer = JavaxWebSocketServletContainerInitializer.initialize(bb);
 		serverContainer.addEndpoint(new WicketServerEndpointConfig());
 
 		// uncomment next line if you want to test with JSESSIONID encoded in the urls
diff --git a/wicket-experimental/wicket-http2/wicket-http2-jetty/pom.xml b/wicket-experimental/wicket-http2/wicket-http2-jetty/pom.xml
index da82db0..640450d 100644
--- a/wicket-experimental/wicket-http2/wicket-http2-jetty/pom.xml
+++ b/wicket-experimental/wicket-http2/wicket-http2-jetty/pom.xml
@@ -36,12 +36,22 @@
 	<properties>
 		<automatic-module-name>org.apache.wicket.http2.jetty</automatic-module-name>
 	</properties>
+	
+	<dependencyManagement>
+		<dependencies>
+			<dependency>
+				<groupId>org.eclipse.jetty</groupId>
+				<artifactId>jetty-server</artifactId>
+				<version>${jetty9.version}</version>
+				<scope>provided</scope>
+			</dependency>
+		</dependencies>
+	</dependencyManagement>
 
 	<dependencies>
 		<dependency>
 			<groupId>org.eclipse.jetty</groupId>
 			<artifactId>jetty-server</artifactId>
-			<scope>provided</scope>
 		</dependency>
 		<dependency>
 			<groupId>org.apache.wicket.experimental.wicket9</groupId>
diff --git a/wicket-native-websocket/wicket-native-websocket-javax/pom.xml b/wicket-native-websocket/wicket-native-websocket-javax/pom.xml
index 5970d3c..94793ba 100644
--- a/wicket-native-websocket/wicket-native-websocket-javax/pom.xml
+++ b/wicket-native-websocket/wicket-native-websocket-javax/pom.xml
@@ -59,7 +59,7 @@
 		</dependency>
 		<dependency>
 			<groupId>org.eclipse.jetty.websocket</groupId>
-			<artifactId>javax-websocket-server-impl</artifactId>
+			<artifactId>javax-websocket-server</artifactId>
 		</dependency>
 		<dependency>
 			<groupId>org.junit.jupiter</groupId>