Merge branch 'master' of https://gitbox.apache.org/repos/asf/empire-db
diff --git a/empire-db-examples/empire-db-example-vue/pom.xml b/empire-db-examples/empire-db-example-vue/pom.xml
index 6fd451c..a6123ea 100644
--- a/empire-db-examples/empire-db-example-vue/pom.xml
+++ b/empire-db-examples/empire-db-example-vue/pom.xml
@@ -74,12 +74,24 @@
 		<dependency>
 			<groupId>org.glassfish.jersey.containers</groupId>
 			<artifactId>jersey-container-servlet-core</artifactId>
-			<version>2.25.1</version>
+			<version>2.35</version>
 		</dependency>
 		<dependency>
-			<groupId>org.glassfish.jersey.media</groupId>
-			<artifactId>jersey-media-json-jackson</artifactId>
-			<version>2.25.1</version>
+		    <groupId>org.glassfish.jersey.media</groupId>
+		    <artifactId>jersey-media-json-jackson</artifactId>
+		    <version>2.35</version>
+		</dependency>
+		<dependency>
+		    <groupId>org.glassfish.jersey.inject</groupId>
+		    <artifactId>jersey-hk2</artifactId>
+		    <version>2.35</version>
+		</dependency>
+
+		<!-- Swagger -->
+		<dependency>
+		    <groupId>io.swagger</groupId>
+		    <artifactId>swagger-jersey2-jaxrs</artifactId>
+		    <version>1.6.5</version>
 		</dependency>
 
 		<!-- logging -->
diff --git a/empire-db-examples/empire-db-example-vue/readme.txt b/empire-db-examples/empire-db-example-vue/readme.txt
index 14c7e8d..6e63537 100644
--- a/empire-db-examples/empire-db-example-vue/readme.txt
+++ b/empire-db-examples/empire-db-example-vue/readme.txt
@@ -15,20 +15,26 @@
 specific language governing permissions and limitations
 under the License.
 
-In order to run the vue example please do the following:
+--------------------------------------------------------
+
+In order to run the Vue example please do the following:
 
 1. Start the REST-Service via "Debug on Server" using Tomcat
 
 2. Browse to: 	http://localhost:8080/empvue
 
-In order to debug and develop the vue example please do the following:
+3. API-Doc: 	http://localhost:8080/empvue/api/swagger.yaml
 
-3. Go to the directory "src/main/vue" (or open in WebStorm)
+----------------------------------------------------
 
-4. Rename file "_eslintrc.js.bak" to ".eslintrc.js" (must start with .)
+Here is how to to debug and develop the Vue example:
 
-5. Run the command:	npm install
+1. Go to the directory "src/main/vue" (or open in WebStorm)
 
-6. Run the command:	npm run dev
+2. Rename file "_eslintrc.js.bak" to ".eslintrc.js" (must start with .)
 
-7. Open Url:  http://localhost:8088/
+3. Run the command:	npm install
+
+4. Run the command:	npm run dev
+
+5. Open Url:  http://localhost:8088/
diff --git a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/AuthenticationService.java b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/AuthenticationService.java
index c5f9b2e..512d673 100644
--- a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/AuthenticationService.java
+++ b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/AuthenticationService.java
@@ -36,6 +36,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+@io.swagger.annotations.Api(value = "auth")
 @Path("/auth")
 public class AuthenticationService
 {
diff --git a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/EmployeeService.java b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/EmployeeService.java
index 71719a2..4ba5059 100644
--- a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/EmployeeService.java
+++ b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/EmployeeService.java
@@ -51,6 +51,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+@io.swagger.annotations.Api(value = "employee")
 @Path("/employee")
 public class EmployeeService extends Service {
 
diff --git a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/filter/ServiceRequestFilter.java b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/filter/ServiceRequestFilter.java
index 22a6007..83b5ea4 100644
--- a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/filter/ServiceRequestFilter.java
+++ b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/service/filter/ServiceRequestFilter.java
@@ -44,7 +44,7 @@
     private static final Logger log = LoggerFactory.getLogger(ServiceRequestFilter.class);
 
     @Context
-    private ServletContext      servletContext;
+    private ServletContext servletContext;
 
     @Override
     public void filter(ContainerRequestContext requestContext)
@@ -52,6 +52,11 @@
     {
         String path = requestContext.getUriInfo().getPath();
         log.info("Filtering request path: " + path);
+        // swagger
+        if (path.startsWith("swagger."))
+        {
+            return;
+        }
         // Check authentication
         if (!path.startsWith("auth") && !requestContext.getMethod().equals("OPTIONS"))
         {
diff --git a/empire-db-examples/empire-db-example-vue/src/main/webapp/WEB-INF/web.xml b/empire-db-examples/empire-db-example-vue/src/main/webapp/WEB-INF/web.xml
index e64db01..0306be8 100644
--- a/empire-db-examples/empire-db-example-vue/src/main/webapp/WEB-INF/web.xml
+++ b/empire-db-examples/empire-db-example-vue/src/main/webapp/WEB-INF/web.xml
@@ -20,11 +20,25 @@
 		<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
 		<init-param>
 			<param-name>jersey.config.server.provider.packages</param-name>
-			<param-value>org.apache.empire.rest.service</param-value>
+			<param-value>io.swagger.jaxrs.listing, org.apache.empire.rest.service</param-value>
 		</init-param>
 		<load-on-startup>1</load-on-startup>
 	</servlet>
 	
+    <servlet>
+        <servlet-name>Jersey2Config</servlet-name>
+        <servlet-class>io.swagger.jersey.config.JerseyJaxrsConfig</servlet-class>
+        <init-param>
+            <param-name>api.version</param-name>
+            <param-value>1.0.0</param-value>
+        </init-param>
+        <init-param>
+            <param-name>swagger.api.basepath</param-name>
+            <param-value>http://localhost:8080/empvue/api</param-value>
+        </init-param>
+        <load-on-startup>2</load-on-startup>
+    </servlet>
+	
 	<servlet-mapping>
 		<servlet-name>EmployeeServiceServlet</servlet-name>
 		<url-pattern>/api/*</url-pattern>