diff --git a/archetypes/spark/src/main/resources/archetype-resources/pom.xml b/archetypes/spark/src/main/resources/archetype-resources/pom.xml
index c78e6d127..a725d7677 100644
--- a/archetypes/spark/src/main/resources/archetype-resources/pom.xml
+++ b/archetypes/spark/src/main/resources/archetype-resources/pom.xml
@@ -16,7 +16,7 @@
1.8
1.8
2.9.5
- 2.7.2
+ 2.8.0
diff --git a/aws-serverless-java-container-spark/pom.xml b/aws-serverless-java-container-spark/pom.xml
index 5aac26d26..e47a0692b 100644
--- a/aws-serverless-java-container-spark/pom.xml
+++ b/aws-serverless-java-container-spark/pom.xml
@@ -15,7 +15,7 @@
- 2.7.2
+ 2.8.0
diff --git a/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServer.java b/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServer.java
index 1db167ae5..f4f227c4e 100644
--- a/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServer.java
+++ b/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServer.java
@@ -5,6 +5,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import spark.ExceptionMapper;
import spark.embeddedserver.EmbeddedServer;
import spark.embeddedserver.jetty.websocket.WebSocketHandlerWrapper;
import spark.http.matching.MatcherFilter;
@@ -24,6 +25,7 @@ public class LambdaEmbeddedServer
//-------------------------------------------------------------
private Routes applicationRoutes;
+ private ExceptionMapper exceptionMapper;
private MatcherFilter sparkFilter;
private StaticFilesConfiguration staticFilesConfiguration;
private boolean hasMultipleHandler;
@@ -34,14 +36,15 @@ public class LambdaEmbeddedServer
// Constructors
//-------------------------------------------------------------
- LambdaEmbeddedServer(Routes routes, StaticFilesConfiguration filesConfig, boolean multipleHandlers) {
+ LambdaEmbeddedServer(Routes routes, StaticFilesConfiguration filesConfig, ExceptionMapper exceptionMapper, boolean multipleHandlers) {
Timer.start("SPARK_EMBEDDED_SERVER_CONSTRUCTOR");
applicationRoutes = routes;
staticFilesConfiguration = filesConfig;
hasMultipleHandler = multipleHandlers;
+ this.exceptionMapper = exceptionMapper;
// try to initialize the filter here.
- sparkFilter = new MatcherFilter(applicationRoutes, staticFilesConfiguration, true, hasMultipleHandler);
+ sparkFilter = new MatcherFilter(applicationRoutes, staticFilesConfiguration, exceptionMapper, true, hasMultipleHandler);
Timer.stop("SPARK_EMBEDDED_SERVER_CONSTRUCTOR");
}
@@ -50,17 +53,17 @@ public class LambdaEmbeddedServer
// Implementation - EmbeddedServer
//-------------------------------------------------------------
@Override
- public int ignite(String s, int i, SslStores sslStores, int i1, int i2, int i3)
+ public int ignite(String host, int port, SslStores sslStores, int maxThreads, int minThreads, int threadIdleTimeoutMillis)
throws ContainerInitializationException {
Timer.start("SPARK_EMBEDDED_IGNITE");
log.info("Starting Spark server, ignoring port and host");
// if not initialized yet
if (sparkFilter == null) {
- sparkFilter = new MatcherFilter(applicationRoutes, staticFilesConfiguration, true, hasMultipleHandler);
+ sparkFilter = new MatcherFilter(applicationRoutes, staticFilesConfiguration, exceptionMapper, true, hasMultipleHandler);
}
sparkFilter.init(null);
Timer.stop("SPARK_EMBEDDED_IGNITE");
- return i;
+ return port;
}
diff --git a/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerFactory.java b/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerFactory.java
index 255e442a2..a73b0005c 100644
--- a/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerFactory.java
+++ b/aws-serverless-java-container-spark/src/main/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerFactory.java
@@ -3,6 +3,7 @@
import com.amazonaws.serverless.proxy.internal.testutils.Timer;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import spark.ExceptionMapper;
import spark.embeddedserver.EmbeddedServer;
import spark.embeddedserver.EmbeddedServerFactory;
import spark.route.Routes;
@@ -39,10 +40,10 @@ public LambdaEmbeddedServerFactory(LambdaEmbeddedServer server) {
@Override
- public EmbeddedServer create(Routes routes, StaticFilesConfiguration staticFilesConfiguration, boolean multipleHandlers) {
+ public EmbeddedServer create(Routes routes, StaticFilesConfiguration staticFilesConfiguration, ExceptionMapper exceptionMapper, boolean multipleHandlers) {
Timer.start("SPARK_SERVER_FACTORY_CREATE");
if (embeddedServer == null) {
- LambdaEmbeddedServerFactory.embeddedServer = new LambdaEmbeddedServer(routes, staticFilesConfiguration, multipleHandlers);
+ LambdaEmbeddedServerFactory.embeddedServer = new LambdaEmbeddedServer(routes, staticFilesConfiguration, exceptionMapper, multipleHandlers);
}
Timer.stop("SPARK_SERVER_FACTORY_CREATE");
return embeddedServer;
diff --git a/aws-serverless-java-container-spark/src/test/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerTest.java b/aws-serverless-java-container-spark/src/test/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerTest.java
index af4dc275c..8a0e1f4eb 100644
--- a/aws-serverless-java-container-spark/src/test/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerTest.java
+++ b/aws-serverless-java-container-spark/src/test/java/com/amazonaws/serverless/proxy/spark/embeddedserver/LambdaEmbeddedServerTest.java
@@ -9,7 +9,7 @@
public class LambdaEmbeddedServerTest {
- private static LambdaEmbeddedServer server = new LambdaEmbeddedServer(null, null, false);
+ private static LambdaEmbeddedServer server = new LambdaEmbeddedServer(null, null, null, false);
@Test
public void webSocket_configureWebSocket_noException() {
diff --git a/samples/spark/pet-store/pom.xml b/samples/spark/pet-store/pom.xml
index 6cd8af479..320686170 100644
--- a/samples/spark/pet-store/pom.xml
+++ b/samples/spark/pet-store/pom.xml
@@ -27,14 +27,14 @@
1.8
1.8
2.9.4
- 2.7.2
+ 2.8.0
com.amazonaws.serverless
aws-serverless-java-container-spark
- [0.1,)
+ [0.2,)