diff --git a/javax-servlets/.gitignore b/javax-servlets/.gitignore
new file mode 100644
index 0000000000..a51a433798
--- /dev/null
+++ b/javax-servlets/.gitignore
@@ -0,0 +1,5 @@
+# Created by .ignore support plugin (hsz.mobi)
+.idea
+classes
+target
+*.iml
\ No newline at end of file
diff --git a/javax-servlets/pom.xml b/javax-servlets/pom.xml
new file mode 100644
index 0000000000..4fe4575e48
--- /dev/null
+++ b/javax-servlets/pom.xml
@@ -0,0 +1,39 @@
+
+
+ 4.0.0
+
+ com.root
+ ServletmavenExample
+ 1.0-SNAPSHOT
+
+
+
+
+ javax.servlet
+ javax.servlet-api
+ ${javax.servlet.version}
+
+
+ junit
+ junit
+ ${junit.version}
+ test
+
+
+ org.apache.httpcomponents
+ httpclient
+ ${org.apache.httpcomponents.version}
+ test
+
+
+
+
+
+ 3.1.0
+ 4.12
+ 4.5
+
+
+
\ No newline at end of file
diff --git a/javax-servlets/src/main/java/com/root/FormServlet.java b/javax-servlets/src/main/java/com/root/FormServlet.java
new file mode 100644
index 0000000000..4f55a02745
--- /dev/null
+++ b/javax-servlets/src/main/java/com/root/FormServlet.java
@@ -0,0 +1,47 @@
+package com.root;
+
+import javax.servlet.RequestDispatcher;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+
+@WebServlet(name = "FormServlet", urlPatterns = "/calculateServlet")
+public class FormServlet extends HttpServlet {
+
+ @Override
+ protected void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ String height = request.getParameter("height");
+ String weight = request.getParameter("weight");
+
+ try {
+ double bmi = calculateBMI(Double.parseDouble(weight), Double.parseDouble(height));
+
+ request.setAttribute("bmi", bmi);
+ response.setHeader("Test", "Success");
+ response.setHeader("BMI", String.valueOf(bmi));
+
+ RequestDispatcher dispatcher = request.getRequestDispatcher("index.jsp");
+ dispatcher.forward(request, response);
+ } catch (Exception e) {
+
+ response.sendRedirect("index.jsp");
+ }
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ // do something else here
+ }
+
+ private Double calculateBMI(Double weight, Double height) {
+
+ return weight / (height * height);
+ }
+}
\ No newline at end of file
diff --git a/javax-servlets/src/test/java/com/root/FormServletTest.java b/javax-servlets/src/test/java/com/root/FormServletTest.java
new file mode 100644
index 0000000000..437741e12d
--- /dev/null
+++ b/javax-servlets/src/test/java/com/root/FormServletTest.java
@@ -0,0 +1,34 @@
+package com.root;
+
+import org.apache.http.HttpResponse;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.entity.UrlEncodedFormEntity;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.http.message.BasicNameValuePair;
+import org.junit.Test;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.junit.Assert.assertEquals;
+
+public class FormServletTest {
+
+ @Test
+ public void whenPostRequestUsingHttpClient_thenCorrect() throws Exception {
+
+ HttpClient client = new DefaultHttpClient();
+ HttpPost method = new HttpPost("http://localhost:8080/calculateServlet");
+
+ List nvps = new ArrayList();
+ nvps.add(new BasicNameValuePair("height", String.valueOf(2)));
+ nvps.add(new BasicNameValuePair("weight", String.valueOf(80)));
+
+ method.setEntity(new UrlEncodedFormEntity(nvps));
+ HttpResponse httpResponse = client.execute(method);
+
+ assertEquals("Success", httpResponse.getHeaders("Test")[0].getValue());
+ assertEquals("20.0", httpResponse.getHeaders("BMI")[0].getValue());
+ }
+}
diff --git a/javax-servlets/web/WEB-INF/web.xml b/javax-servlets/web/WEB-INF/web.xml
new file mode 100644
index 0000000000..66934d8fd3
--- /dev/null
+++ b/javax-servlets/web/WEB-INF/web.xml
@@ -0,0 +1,7 @@
+
+
+
+
\ No newline at end of file
diff --git a/javax-servlets/web/index.jsp b/javax-servlets/web/index.jsp
new file mode 100644
index 0000000000..5a2e018a41
--- /dev/null
+++ b/javax-servlets/web/index.jsp
@@ -0,0 +1,26 @@
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
+
+
+ Calculate BMI
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 77cf615a98..eacedf1e6a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -48,6 +48,7 @@
jackson
java-cassandra
+ javax-servlets
javaxval
jee7
jjwt