diff --git a/Calculator-Bean/.classpath b/Calculator-Bean/.classpath
index 0e8e3ff0a20c86b96bb4a4fc48ff4b17739adaed..1f5b6ae20a5e9087835a5166356f689574f17a9b 100644
--- a/Calculator-Bean/.classpath
+++ b/Calculator-Bean/.classpath
@@ -1,21 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="src" path="ejbModule"/>
-	<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4">
+	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
 		<attributes>
+			<attribute name="optional" value="true"/>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="src" path="src/main/java"/>
+	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
+		<attributes>
+			<attribute name="maven.pomderived" value="true"/>
 			<attribute name="org.eclipse.jst.component.nondependency" value=""/>
 		</attributes>
 	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.jboss.ide.eclipse.as.core.server.runtime.runtimeTarget/WildFly 10.x Runtime">
+	<classpathentry including="**/*.java" kind="src" output="target/classes" path="ejbModule">
+		<attributes>
+			<attribute name="optional" value="true"/>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.jboss.ide.eclipse.as.core.server.runtime.runtimeTarget/WildFly 12.0 Runtime">
 		<attributes>
 			<attribute name="owner.project.facets" value="jst.ejb"/>
 		</attributes>
 	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/java-1.8.0-openjdk-1.8.0.121-1.b14.fc24.x86_64">
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/Java SE 8 [1.8.0_162]">
 		<attributes>
 			<attribute name="owner.project.facets" value="java"/>
 		</attributes>
 	</classpathentry>
-	<classpathentry kind="output" path="build/classes"/>
+	<classpathentry kind="output" path="target/classes"/>
 </classpath>
diff --git a/Calculator-Bean/.gitignore b/Calculator-Bean/.gitignore
index 84c048a73cc2e5dd24f807669eb99b0ce3123195..76daa494e2c10b171342bd3a8eea5e1b50075514 100644
--- a/Calculator-Bean/.gitignore
+++ b/Calculator-Bean/.gitignore
@@ -1 +1,2 @@
 /build/
+/target/
diff --git a/Calculator-Bean/.project b/Calculator-Bean/.project
index be6228b4a12bbb6bd0117671bffe2468aeea0de5..94be53b103252bd3dc04dfb76a77a32f42d5b636 100644
--- a/Calculator-Bean/.project
+++ b/Calculator-Bean/.project
@@ -30,8 +30,20 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.fusesource.ide.project.RiderProjectBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.fusesource.ide.project.RiderProjectNature</nature>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
 		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
 		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
diff --git a/Calculator-Bean/.settings/org.eclipse.jdt.core.prefs b/Calculator-Bean/.settings/org.eclipse.jdt.core.prefs
index 0c68a61dca867ceb49e79d2402935261ec3e3809..6e80039d3b822e65e46fbf18906ef652814e9505 100644
--- a/Calculator-Bean/.settings/org.eclipse.jdt.core.prefs
+++ b/Calculator-Bean/.settings/org.eclipse.jdt.core.prefs
@@ -4,4 +4,5 @@ org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
 org.eclipse.jdt.core.compiler.compliance=1.8
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
 org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Calculator-Bean/.settings/org.eclipse.m2e.core.prefs b/Calculator-Bean/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000000000000000000000000000000000000..f897a7f1cb2389f85fe6381425d29f0a9866fb65
--- /dev/null
+++ b/Calculator-Bean/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/Calculator-Bean/.settings/org.eclipse.wst.common.component b/Calculator-Bean/.settings/org.eclipse.wst.common.component
index f0a7e442f19556a1fe6d3c69eeddc564a072d67e..9bb5de0a9180cf678668cd45bdedc516b36ad901 100644
--- a/Calculator-Bean/.settings/org.eclipse.wst.common.component
+++ b/Calculator-Bean/.settings/org.eclipse.wst.common.component
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
     <wb-module deploy-name="Calculator-Bean">
-        <wb-resource deploy-path="/" source-path="/ejbModule" tag="defaultRootSource"/>
+        <wb-resource deploy-path="/" source-path="/src/main/java"/>
+        <wb-resource deploy-path="/" source-path="/ejbModule"/>
         <property name="java-output-path" value="/Calculator-Bean/build/classes"/>
     </wb-module>
 </project-modules>
diff --git a/Calculator-Bean/.settings/org.eclipse.wst.common.project.facet.core.xml b/Calculator-Bean/.settings/org.eclipse.wst.common.project.facet.core.xml
index 38ff60521d07516957f8a2292f57b9aa23331ec1..30be2b4b90813a5248da374132e13bfcaad7d9b9 100644
--- a/Calculator-Bean/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ b/Calculator-Bean/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <faceted-project>
-  <runtime name="WildFly 10.x Runtime"/>
+  <runtime name="WildFly 12.0 Runtime"/>
   <fixed facet="jst.ejb"/>
   <fixed facet="java"/>
   <installed facet="java" version="1.8"/>
diff --git a/Calculator-Bean/.settings/org.eclipse.wst.validation.prefs b/Calculator-Bean/.settings/org.eclipse.wst.validation.prefs
new file mode 100644
index 0000000000000000000000000000000000000000..04cad8cb752a9761c4e5167d0301d3a27674430f
--- /dev/null
+++ b/Calculator-Bean/.settings/org.eclipse.wst.validation.prefs
@@ -0,0 +1,2 @@
+disabled=06target
+eclipse.preferences.version=1
diff --git a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorCommonBusiness.java b/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorCommonBusiness.java
deleted file mode 100644
index 23e1ba7e9653771b430923c8f4759616a0e62ade..0000000000000000000000000000000000000000
--- a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorCommonBusiness.java
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * 
- */
-package br.ufrn.imd.imd0409.calculator.bean;
-
-/**
- * @author kaduardo
- *
- */
-public interface CalculatorCommonBusiness {
-	public int add(int... arguments);
-}
diff --git a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorLocalBusiness.java b/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorLocalBusiness.java
deleted file mode 100644
index 9dca3990aa6c60c97553fbb0a6e0b4783338b7d7..0000000000000000000000000000000000000000
--- a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorLocalBusiness.java
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * 
- */
-package br.ufrn.imd.imd0409.calculator.bean;
-
-/**
- * @author kaduardo
- *
- */
-public interface CalculatorLocalBusiness extends CalculatorCommonBusiness {
-
-}
diff --git a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorRemoteBusiness.java b/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorRemoteBusiness.java
deleted file mode 100644
index cfbebb31514b1085324a8baaf4fa7b60f6d765d4..0000000000000000000000000000000000000000
--- a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorRemoteBusiness.java
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * 
- */
-package br.ufrn.imd.imd0409.calculator.bean;
-
-/**
- * @author kaduardo
- *
- */
-public interface CalculatorRemoteBusiness extends CalculatorCommonBusiness {
-
-}
diff --git a/Calculator-Bean/pom.xml b/Calculator-Bean/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..083b635d936326fb77bb0466a185095af7f0de0f
--- /dev/null
+++ b/Calculator-Bean/pom.xml
@@ -0,0 +1,48 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>br.ufrn.imd.web2</groupId>
+  <artifactId>Calculator-Bean</artifactId>
+  <version>0.0.1-SNAPSHOT</version>
+  <packaging>ejb</packaging>
+  <build>
+    <sourceDirectory>ejbModule</sourceDirectory>
+    <resources>
+      <resource>
+        <directory>ejbModule</directory>
+        <excludes>
+          <exclude>**/*.java</exclude>
+        </excludes>
+      </resource>
+    </resources>
+    <plugins>
+      <plugin>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <version>3.7.0</version>
+        <configuration>
+          <source>1.8</source>
+          <target>1.8</target>
+        </configuration>
+      </plugin>
+      <plugin>
+        <artifactId>maven-ejb-plugin</artifactId>
+        <version>2.5</version>
+        <configuration>
+          <ejbVersion>3.2</ejbVersion>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <dependencies>
+  	<dependency>
+  		<groupId>javax.ejb</groupId>
+  		<artifactId>javax.ejb-api</artifactId>
+  		<version>3.2</version>
+  	</dependency>
+  	<dependency>
+  		<groupId>junit</groupId>
+  		<artifactId>junit</artifactId>
+  		<version>4.12</version>
+  		<scope>test</scope>
+  	</dependency>
+  </dependencies>
+</project>
\ No newline at end of file
diff --git a/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/Calculator.java b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/Calculator.java
new file mode 100644
index 0000000000000000000000000000000000000000..ba29dc2aa79fd836793aa4993b57483c4066e36b
--- /dev/null
+++ b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/Calculator.java
@@ -0,0 +1,12 @@
+/**
+ * 
+ */
+package br.ufrn.imd.web2.calculator.bean;
+
+/**
+ * @author kaduardo
+ *
+ */
+public interface Calculator {
+	public int add(int... arguments);
+}
diff --git a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorBeanBase.java b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorBeanBase.java
similarity index 68%
rename from Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorBeanBase.java
rename to Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorBeanBase.java
index a03858330ba2833d2cbb526aacaf6f0f10973eb6..23dd2e2db610e2066ed2ee05da38f580f30347a8 100644
--- a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/CalculatorBeanBase.java
+++ b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorBeanBase.java
@@ -1,19 +1,18 @@
 /**
  * 
  */
-package br.ufrn.imd.imd0409.calculator.bean;
+package br.ufrn.imd.web2.calculator.bean;
 
 /**
  * @author kaduardo
  *
  */
-public class CalculatorBeanBase implements CalculatorCommonBusiness {
+public class CalculatorBeanBase implements Calculator {
 
 	/**
 	 * 
 	 */
 	public CalculatorBeanBase() {
-		// TODO Auto-generated constructor stub
 	}
 
 	/* (non-Javadoc)
diff --git a/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorLocal.java b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorLocal.java
new file mode 100644
index 0000000000000000000000000000000000000000..2638cc9a65d1c859e600377ebc38121cd1c24dcc
--- /dev/null
+++ b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorLocal.java
@@ -0,0 +1,12 @@
+/**
+ * 
+ */
+package br.ufrn.imd.web2.calculator.bean;
+
+/**
+ * @author kaduardo
+ *
+ */
+public interface CalculatorLocal extends Calculator {
+
+}
diff --git a/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorRemote.java b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorRemote.java
new file mode 100644
index 0000000000000000000000000000000000000000..3fa0fc9442aba2764c3589b1b27a3cee9842e996
--- /dev/null
+++ b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/CalculatorRemote.java
@@ -0,0 +1,12 @@
+/**
+ * 
+ */
+package br.ufrn.imd.web2.calculator.bean;
+
+/**
+ * @author kaduardo
+ *
+ */
+public interface CalculatorRemote extends Calculator {
+
+}
diff --git a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/NoInterfaceViewCalculatorBean.java b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/NoInterfaceViewCalculatorBean.java
similarity index 89%
rename from Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/NoInterfaceViewCalculatorBean.java
rename to Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/NoInterfaceViewCalculatorBean.java
index e8db1ae90d97655a4df2cc6d444f8ae09a443115..6cc7c5f671e49459c2332dc1e9eb880190885bb0 100644
--- a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/bean/NoInterfaceViewCalculatorBean.java
+++ b/Calculator-Bean/src/main/java/br/ufrn/imd/web2/calculator/bean/NoInterfaceViewCalculatorBean.java
@@ -1,4 +1,4 @@
-package br.ufrn.imd.imd0409.calculator.bean;
+package br.ufrn.imd.web2.calculator.bean;
 
 import javax.ejb.LocalBean;
 import javax.ejb.Stateless;
diff --git a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/test/CalculatorUnitTestCase.java b/Calculator-Bean/src/test/java/br/ufrn/imd/web2/calculator/bean/CalculatorUnitTestCase.java
similarity index 53%
rename from Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/test/CalculatorUnitTestCase.java
rename to Calculator-Bean/src/test/java/br/ufrn/imd/web2/calculator/bean/CalculatorUnitTestCase.java
index 2e41bdc104502fe8c698fce85791845cb2ed1ddf..efc66b28ddcbf9e4072f0efcc2d78ea775e9fb17 100644
--- a/Calculator-Bean/ejbModule/br/ufrn/imd/imd0409/calculator/test/CalculatorUnitTestCase.java
+++ b/Calculator-Bean/src/test/java/br/ufrn/imd/web2/calculator/bean/CalculatorUnitTestCase.java
@@ -1,17 +1,17 @@
-package br.ufrn.imd.imd0409.calculator.test;
+package br.ufrn.imd.web2.calculator.bean;
 
 import static org.junit.Assert.*;
 
 import org.junit.Test;
 
-import br.ufrn.imd.imd0409.calculator.bean.CalculatorCommonBusiness;
-import br.ufrn.imd.imd0409.calculator.bean.NoInterfaceViewCalculatorBean;
+import br.ufrn.imd.web2.calculator.bean.Calculator;
+import br.ufrn.imd.web2.calculator.bean.NoInterfaceViewCalculatorBean;
 
 public class CalculatorUnitTestCase {
 
 	@Test
 	public void testAdd() {
-		final CalculatorCommonBusiness calc = new NoInterfaceViewCalculatorBean();
+		final Calculator calc = new NoInterfaceViewCalculatorBean();
 		final int expectedSum = 2 + 3 + 5;
 		
 		final int actualSum = calc.add(2, 3, 5);
diff --git a/Calculator-Web/.classpath b/Calculator-Web/.classpath
index 20126426518401d63e289e1f1ee120bd927bb1dd..b7ac52e4454deb85dffb70b9fea0da2c928b6844 100644
--- a/Calculator-Web/.classpath
+++ b/Calculator-Web/.classpath
@@ -1,17 +1,32 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="src" path="JavaSource"/>
-	<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
-	<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
-	<classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.jboss.ide.eclipse.as.core.server.runtime.runtimeTarget/WildFly 10.x Runtime">
+	<classpathentry kind="src" output="target/classes" path="src/main/java">
 		<attributes>
-			<attribute name="owner.project.facets" value="jst.web;jst.jsf"/>
+			<attribute name="optional" value="true"/>
+			<attribute name="maven.pomderived" value="true"/>
 		</attributes>
 	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/java-1.8.0-openjdk-1.8.0.121-1.b14.fc24.x86_64">
+	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
 		<attributes>
-			<attribute name="owner.project.facets" value="java"/>
+			<attribute name="optional" value="true"/>
+			<attribute name="maven.pomderived" value="true"/>
 		</attributes>
 	</classpathentry>
-	<classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
+	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
+		<attributes>
+			<attribute name="maven.pomderived" value="true"/>
+			<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
+		<attributes>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
+		<attributes>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="output" path="target/classes"/>
 </classpath>
diff --git a/Calculator-Web/.gitignore b/Calculator-Web/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..b83d22266ac8aa2f8df2edef68082c789727841d
--- /dev/null
+++ b/Calculator-Web/.gitignore
@@ -0,0 +1 @@
+/target/
diff --git a/Calculator-Web/.project b/Calculator-Web/.project
index 00ad57e0b28177a12768082df0a4ad69233dd38a..2b2eecd3ef23018ae74a1489ac456164f23db753 100644
--- a/Calculator-Web/.project
+++ b/Calculator-Web/.project
@@ -25,13 +25,30 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.jboss.tools.ws.jaxrs.metamodelBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 		<buildCommand>
 			<name>org.eclipse.wst.validation.validationbuilder</name>
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.fusesource.ide.project.RiderProjectBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.fusesource.ide.project.RiderProjectNature</nature>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
 		<nature>org.eclipse.jdt.core.javanature</nature>
 		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
@@ -39,5 +56,6 @@
 		<nature>org.jboss.tools.jsf.jsfnature</nature>
 		<nature>org.jboss.tools.jst.web.kb.kbnature</nature>
 		<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
+		<nature>org.jboss.tools.ws.jaxrs.nature</nature>
 	</natures>
 </projectDescription>
diff --git a/Calculator-Web/.settings/org.eclipse.jdt.core.prefs b/Calculator-Web/.settings/org.eclipse.jdt.core.prefs
index c537b63063ce6052bdc49c5fd0745b078f162c90..6e80039d3b822e65e46fbf18906ef652814e9505 100644
--- a/Calculator-Web/.settings/org.eclipse.jdt.core.prefs
+++ b/Calculator-Web/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,8 @@
 eclipse.preferences.version=1
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Calculator-Web/.settings/org.eclipse.m2e.core.prefs b/Calculator-Web/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000000000000000000000000000000000000..f897a7f1cb2389f85fe6381425d29f0a9866fb65
--- /dev/null
+++ b/Calculator-Web/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/Calculator-Web/.settings/org.eclipse.wst.common.component b/Calculator-Web/.settings/org.eclipse.wst.common.component
index aac4bcbb75ab5049d14f8f716c8e21fac0f7b41d..5e2f0520e48b320ebcbbc74e17a95983f51f3775 100644
--- a/Calculator-Web/.settings/org.eclipse.wst.common.component
+++ b/Calculator-Web/.settings/org.eclipse.wst.common.component
@@ -1,7 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
-    <wb-module deploy-name="Calculator-Web">
-        <wb-resource deploy-path="/" source-path="/WebContent" tag="defaultRootSource"/>
-        <wb-resource deploy-path="/WEB-INF/classes" source-path="/JavaSource"/>
+    <wb-module deploy-name="Calculator-Web-0.0.1-SNAPSHOT">
+        <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
+        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
+        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
+        <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
+        <dependent-module archiveName="Calculator-Bean-0.0.1-SNAPSHOT.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/Calculator-Bean/Calculator-Bean">
+            <dependency-type>uses</dependency-type>
+        </dependent-module>
         <property name="context-root" value="Calculator-Web"/>
         <property name="java-output-path" value="/Calculator-Web/WebContent/WEB-INF/classes"/>
     </wb-module>
diff --git a/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml b/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml
index c32233e2625d35477f6996af2b75dd8fb9601d08..6d59853d98b151cf856bb9c3a2c2d2d151db3c35 100644
--- a/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml
+++ b/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml
@@ -4,4 +4,9 @@
       <attribute name="provider-id" value="jsf-no-op-library-provider"/>
     </node>
   </facet>
+  <facet id="jst.jaxrs">
+    <node name="libprov">
+      <attribute name="provider-id" value="jaxrs-no-op-library-provider"/>
+    </node>
+  </facet>
 </root>
diff --git a/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.xml b/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.xml
index 62f3750eaa685e5c0effb970274b44aac7eb7b7a..037da5dc0b2110b717fac4569c0826b36d389ad3 100644
--- a/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ b/Calculator-Web/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -1,12 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <faceted-project>
-  <runtime name="WildFly 10.x Runtime"/>
+  <runtime name="WildFly 12.0 Runtime"/>
   <fixed facet="jst.jsf"/>
   <fixed facet="java"/>
   <fixed facet="jst.web"/>
   <fixed facet="wst.jsdt.web"/>
-  <installed facet="java" version="1.6"/>
   <installed facet="jst.web" version="3.0"/>
   <installed facet="jst.jsf" version="2.2"/>
   <installed facet="wst.jsdt.web" version="1.0"/>
+  <installed facet="java" version="1.8"/>
+  <installed facet="jst.jaxrs" version="2.0"/>
 </faceted-project>
diff --git a/Calculator-Web/.settings/org.eclipse.wst.validation.prefs b/Calculator-Web/.settings/org.eclipse.wst.validation.prefs
new file mode 100644
index 0000000000000000000000000000000000000000..04cad8cb752a9761c4e5167d0301d3a27674430f
--- /dev/null
+++ b/Calculator-Web/.settings/org.eclipse.wst.validation.prefs
@@ -0,0 +1,2 @@
+disabled=06target
+eclipse.preferences.version=1
diff --git a/Calculator-Web/WebContent/WEB-INF/classes/.gitignore b/Calculator-Web/WebContent/WEB-INF/classes/.gitignore
deleted file mode 100644
index fd56ef212f1e5fc898978819e422c8521756aea3..0000000000000000000000000000000000000000
--- a/Calculator-Web/WebContent/WEB-INF/classes/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/br/
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/Calculator-Bean.jar b/Calculator-Web/WebContent/WEB-INF/lib/Calculator-Bean.jar
deleted file mode 100644
index 9f84f3b440028effcccb52bdcac2cd2db230ce4d..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/Calculator-Bean.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/common-annotations.jar b/Calculator-Web/WebContent/WEB-INF/lib/common-annotations.jar
deleted file mode 100644
index e01a2062cbd700ae5297ca3493028121f4a0334e..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/common-annotations.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/commons-beanutils.jar b/Calculator-Web/WebContent/WEB-INF/lib/commons-beanutils.jar
deleted file mode 100644
index b1b89c9c921f16af22a88db3ff28975a8e40d886..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/commons-beanutils.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/commons-collections.jar b/Calculator-Web/WebContent/WEB-INF/lib/commons-collections.jar
deleted file mode 100644
index 41e230feeaa53618b6ac5f8d11792c2eecf4d4fd..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/commons-collections.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/commons-digester.jar b/Calculator-Web/WebContent/WEB-INF/lib/commons-digester.jar
deleted file mode 100644
index 1783dbea232ced6db122268f8faa5ce773c7ea42..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/commons-digester.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/commons-logging.jar b/Calculator-Web/WebContent/WEB-INF/lib/commons-logging.jar
deleted file mode 100644
index b73a80fab641131e6fbe3ae833549efb3c540d17..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/commons-logging.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/jstl.jar b/Calculator-Web/WebContent/WEB-INF/lib/jstl.jar
deleted file mode 100644
index 5cf7a6953b07ad5854772f1beb37fcf0278156ad..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/jstl.jar and /dev/null differ
diff --git a/Calculator-Web/WebContent/WEB-INF/lib/standard.jar b/Calculator-Web/WebContent/WEB-INF/lib/standard.jar
deleted file mode 100644
index bc528acb949096eeb2e3048de1ff5b9ab12a66c5..0000000000000000000000000000000000000000
Binary files a/Calculator-Web/WebContent/WEB-INF/lib/standard.jar and /dev/null differ
diff --git a/Calculator-Web/ant/build.properties b/Calculator-Web/ant/build.properties
deleted file mode 100644
index 20b4b593da39ad427c47753421b2918b8f4fbb66..0000000000000000000000000000000000000000
--- a/Calculator-Web/ant/build.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-#
-#Thu Oct 01 16:01:07 BRT 2015
-classpath.external=
diff --git a/Calculator-Web/pom.xml b/Calculator-Web/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9eeb963ab776eafc4d852cd7ef7bf0a270c8751c
--- /dev/null
+++ b/Calculator-Web/pom.xml
@@ -0,0 +1,43 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>br.ufrn.imd.web2</groupId>
+  <artifactId>Calculator-Web</artifactId>
+  <version>0.0.1-SNAPSHOT</version>
+  <packaging>war</packaging>
+  <name>Calculator-Web</name>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <version>3.7.0</version>
+        <configuration>
+          <source>1.8</source>
+          <target>1.8</target>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <dependencies>
+  	<dependency>
+  		<groupId>javax.ejb</groupId>
+  		<artifactId>javax.ejb-api</artifactId>
+  		<version>3.2</version>
+  	</dependency>
+  	<dependency>
+  		<groupId>javax.servlet</groupId>
+  		<artifactId>javax.servlet-api</artifactId>
+  		<version>4.0.0</version>
+  	</dependency>
+  	<dependency>
+  		<groupId>br.ufrn.imd.web2</groupId>
+  		<artifactId>Calculator-Bean</artifactId>
+  		<version>0.0.1-SNAPSHOT</version>
+  		<type>ejb</type>
+  	</dependency>
+  	<dependency>
+  		<groupId>javax</groupId>
+  		<artifactId>javaee-api</artifactId>
+  		<version>7.0</version>
+  	</dependency>
+  </dependencies>
+</project>
\ No newline at end of file
diff --git a/Calculator-Web/JavaSource/br/ufrn/imd/imd0409/calculator/servlet/CalculatorServlet.java b/Calculator-Web/src/main/java/br/ufrn/imd/web2/calculator/servlet/CalculatorServlet.java
similarity index 94%
rename from Calculator-Web/JavaSource/br/ufrn/imd/imd0409/calculator/servlet/CalculatorServlet.java
rename to Calculator-Web/src/main/java/br/ufrn/imd/web2/calculator/servlet/CalculatorServlet.java
index b192dac04157e6509652018c2b09d8f474f6d52a..4f3df72729a014910bb40881feefdf7aa883fbe7 100644
--- a/Calculator-Web/JavaSource/br/ufrn/imd/imd0409/calculator/servlet/CalculatorServlet.java
+++ b/Calculator-Web/src/main/java/br/ufrn/imd/web2/calculator/servlet/CalculatorServlet.java
@@ -1,4 +1,4 @@
-package br.ufrn.imd.imd0409.calculator.servlet;
+package br.ufrn.imd.web2.calculator.servlet;
 
 import java.io.IOException;
 import java.io.PrintWriter;
@@ -10,7 +10,7 @@ import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import br.ufrn.imd.imd0409.calculator.bean.NoInterfaceViewCalculatorBean;
+import br.ufrn.imd.web2.calculator.bean.NoInterfaceViewCalculatorBean;
 
 /**
  * Servlet implementation class CalculatorServlet
diff --git a/Calculator-Web/JavaSource/br/ufrn/imd/imd0409/calculator/view/CalculatorManagedBean.java b/Calculator-Web/src/main/java/br/ufrn/imd/web2/calculator/view/CalculatorManagedBean.java
similarity index 76%
rename from Calculator-Web/JavaSource/br/ufrn/imd/imd0409/calculator/view/CalculatorManagedBean.java
rename to Calculator-Web/src/main/java/br/ufrn/imd/web2/calculator/view/CalculatorManagedBean.java
index 8f527a3bf186fdfce15deffa00c81a7cc90ec162..9dd45f03209341fc049979af5a9848af6c405f9f 100644
--- a/Calculator-Web/JavaSource/br/ufrn/imd/imd0409/calculator/view/CalculatorManagedBean.java
+++ b/Calculator-Web/src/main/java/br/ufrn/imd/web2/calculator/view/CalculatorManagedBean.java
@@ -1,11 +1,11 @@
-package br.ufrn.imd.imd0409.calculator.view;
+package br.ufrn.imd.web2.calculator.view;
 
 import javax.ejb.EJB;
-import javax.faces.bean.ManagedBean;
+import javax.inject.Named;
 
-import br.ufrn.imd.imd0409.calculator.bean.NoInterfaceViewCalculatorBean;
+import br.ufrn.imd.web2.calculator.bean.NoInterfaceViewCalculatorBean;
 
-@ManagedBean
+@Named
 public class CalculatorManagedBean {
 	private int numero1, numero2, resultado;
 	
@@ -17,6 +17,7 @@ public class CalculatorManagedBean {
 	
 	public String calcula() {
 		setResultado(calc.add(numero1, numero2));
+		System.out.println("Resultado: " + resultado);
 		return "Soma";
 	}
 
diff --git a/Calculator-Web/WebContent/META-INF/MANIFEST.MF b/Calculator-Web/src/main/resources/META-INF/MANIFEST.MF
similarity index 100%
rename from Calculator-Web/WebContent/META-INF/MANIFEST.MF
rename to Calculator-Web/src/main/resources/META-INF/MANIFEST.MF
diff --git a/Calculator-Web/WebContent/WEB-INF/.faces-config.xml.jsfdia b/Calculator-Web/src/main/webapp/WEB-INF/.faces-config.xml.jsfdia
similarity index 100%
rename from Calculator-Web/WebContent/WEB-INF/.faces-config.xml.jsfdia
rename to Calculator-Web/src/main/webapp/WEB-INF/.faces-config.xml.jsfdia
diff --git a/Calculator-Web/WebContent/WEB-INF/faces-config.xml b/Calculator-Web/src/main/webapp/WEB-INF/faces-config.xml
similarity index 65%
rename from Calculator-Web/WebContent/WEB-INF/faces-config.xml
rename to Calculator-Web/src/main/webapp/WEB-INF/faces-config.xml
index 74bb67c69443f9e6c13bce3b28bd78eda5d16f72..b841bf5238f3de22068795827ccab42c85e75519 100644
--- a/Calculator-Web/WebContent/WEB-INF/faces-config.xml
+++ b/Calculator-Web/src/main/webapp/WEB-INF/faces-config.xml
@@ -1,12 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <faces-config version="2.2" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd">
- <managed-bean>
-  <managed-bean-name>calculatorManagedBean</managed-bean-name>
-  <managed-bean-class>br.ufrn.imd.imd0409.calculator.view.CalculatorManagedBean</managed-bean-class>
-  <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
- <navigation-rule>
+  <navigation-rule>
   <from-view-id>/formulario.xhtml</from-view-id>
   <navigation-case>
    <from-outcome>Soma</from-outcome>
diff --git a/Calculator-Web/WebContent/WEB-INF/web.xml b/Calculator-Web/src/main/webapp/WEB-INF/web.xml
similarity index 87%
rename from Calculator-Web/WebContent/WEB-INF/web.xml
rename to Calculator-Web/src/main/webapp/WEB-INF/web.xml
index 58349f17db580f31062f638383deb10735ca96b4..848a2ab5a4cde745ae71f0b764287867b6353ed1 100644
--- a/Calculator-Web/WebContent/WEB-INF/web.xml
+++ b/Calculator-Web/src/main/webapp/WEB-INF/web.xml
@@ -8,7 +8,7 @@
   </servlet>
   <servlet-mapping>
     <servlet-name>Faces Servlet</servlet-name>
-    <url-pattern>*.jsf</url-pattern>
+    <url-pattern>*.xhtml</url-pattern>
   </servlet-mapping>
   <servlet-mapping>
     <servlet-name>Faces Servlet</servlet-name>
@@ -18,4 +18,7 @@
     <servlet-name>Faces Servlet</servlet-name>
     <url-pattern>/faces/*</url-pattern>
   </servlet-mapping>
+  <welcome-file-list>
+  <welcome-file>index.html</welcome-file>
+ </welcome-file-list>
 </web-app>
\ No newline at end of file
diff --git a/Calculator-Web/WebContent/formulario.html b/Calculator-Web/src/main/webapp/formulario.html
similarity index 100%
rename from Calculator-Web/WebContent/formulario.html
rename to Calculator-Web/src/main/webapp/formulario.html
diff --git a/Calculator-Web/WebContent/formulario.xhtml b/Calculator-Web/src/main/webapp/formulario.xhtml
similarity index 100%
rename from Calculator-Web/WebContent/formulario.xhtml
rename to Calculator-Web/src/main/webapp/formulario.xhtml
diff --git a/Calculator-Web/WebContent/index.html b/Calculator-Web/src/main/webapp/index.html
similarity index 100%
rename from Calculator-Web/WebContent/index.html
rename to Calculator-Web/src/main/webapp/index.html
diff --git a/Calculator-Web/WebContent/resultado.xhtml b/Calculator-Web/src/main/webapp/resultado.xhtml
similarity index 100%
rename from Calculator-Web/WebContent/resultado.xhtml
rename to Calculator-Web/src/main/webapp/resultado.xhtml