http-service: use own servlet for proxying requests to spark

This allows using websockets more easily later

Also exclude spark dependency on jetty during non tests since we don't use it
This commit is contained in:
Adam
2017-05-08 18:27:56 -04:00
parent d007cdfa9f
commit 872d22e524
3 changed files with 173 additions and 18 deletions

View File

@@ -35,6 +35,10 @@
<artifactId>http-service</artifactId>
<packaging>war</packaging>
<properties>
<jetty.version>9.3.6.v20151106</jetty.version> <!-- from Spark -->
</properties>
<dependencies>
<dependency>
<groupId>net.runelite</groupId>
@@ -42,10 +46,37 @@
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>servlet-api</artifactId>
<version>6.0.53</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.sparkjava</groupId>
<artifactId>spark-core</artifactId>
<version>2.5.5</version>
<exclusions>
<!-- Spark includes Jetty, even if you are using
another servlet container, so we exclude it -->
<exclusion>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
</exclusion>
<exclusion>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-webapp</artifactId>
</exclusion>
<exclusion>
<groupId>org.eclipse.jetty.websocket</groupId>
<artifactId>websocket-server</artifactId>
</exclusion>
<exclusion>
<groupId>org.eclipse.jetty.websocket</groupId>
<artifactId>websocket-servlet</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.sql2o</groupId>
@@ -80,6 +111,7 @@
<version>1.0.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.github.scribejava</groupId>
<artifactId>scribejava-apis</artifactId>
@@ -98,6 +130,33 @@
<version>1.10.19</version>
<scope>test</scope>
</dependency>
<!-- Spark tests use Jetty though, so include it here -->
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-webapp</artifactId>
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty.websocket</groupId>
<artifactId>websocket-server</artifactId>
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty.websocket</groupId>
<artifactId>websocket-servlet</artifactId>
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.inject.extensions</groupId>
<artifactId>guice-testlib</artifactId>