From daa42ab3a0f71d99ba45de268da9a75bb8db67b4 Mon Sep 17 00:00:00 2001
From: Krzysiek <krzysztofwoyke@gmail.com>
Date: Wed, 6 May 2020 01:05:52 +0200
Subject: [PATCH] JAVA-1529: Add MVC config

---
 spring-mvc-java-2/pom.xml                     | 18 ++++++++++-----
 .../baeldung/pathvariable/SiteController.java |  3 ++-
 .../src/main/webapp/WEB-INF/mvc-servlet.xml   | 17 ++++++++++++++
 .../src/main/webapp/WEB-INF/web.xml           | 22 +++++++++++++++++++
 4 files changed, 54 insertions(+), 6 deletions(-)
 create mode 100644 spring-mvc-java-2/src/main/webapp/WEB-INF/mvc-servlet.xml
 create mode 100644 spring-mvc-java-2/src/main/webapp/WEB-INF/web.xml

diff --git a/spring-mvc-java-2/pom.xml b/spring-mvc-java-2/pom.xml
index d5b7d087ab..7deab74fcb 100644
--- a/spring-mvc-java-2/pom.xml
+++ b/spring-mvc-java-2/pom.xml
@@ -7,14 +7,14 @@
     <version>0.1-SNAPSHOT</version>
     <name>spring-mvc-java-2</name>
     <packaging>war</packaging>
-    
+
     <parent>
         <groupId>com.baeldung</groupId>
         <artifactId>parent-boot-2</artifactId>
         <version>0.0.1-SNAPSHOT</version>
         <relativePath>../parent-boot-2</relativePath>
     </parent>
-    
+
     <dependencies>
         <dependency>
             <groupId>javax.servlet</groupId>
@@ -26,14 +26,22 @@
             <artifactId>spring-webmvc</artifactId>
             <version>${spring.mvc.version}</version>
         </dependency>
-
     </dependencies>
-    
+
+    <build>
+        <finalName>spring-mvc-java-2</finalName>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+            </resource>
+        </resources>
+    </build>
+
     <properties>
         <javax.version>4.0.1</javax.version>
         <spring.mvc.version>5.2.2.RELEASE</spring.mvc.version>
     </properties>
 
 
-    
 </project>
\ No newline at end of file
diff --git a/spring-mvc-java-2/src/main/java/com/baeldung/pathvariable/SiteController.java b/spring-mvc-java-2/src/main/java/com/baeldung/pathvariable/SiteController.java
index 0ba6d12a0f..493161b0eb 100644
--- a/spring-mvc-java-2/src/main/java/com/baeldung/pathvariable/SiteController.java
+++ b/spring-mvc-java-2/src/main/java/com/baeldung/pathvariable/SiteController.java
@@ -4,8 +4,9 @@ import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
-@Controller
+@RestController
 @RequestMapping("/site")
 public class SiteController {
 
diff --git a/spring-mvc-java-2/src/main/webapp/WEB-INF/mvc-servlet.xml b/spring-mvc-java-2/src/main/webapp/WEB-INF/mvc-servlet.xml
new file mode 100644
index 0000000000..b8e280dfdf
--- /dev/null
+++ b/spring-mvc-java-2/src/main/webapp/WEB-INF/mvc-servlet.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans
+        xmlns="http://www.springframework.org/schema/beans"
+        xmlns:context="http://www.springframework.org/schema/context"
+        xmlns:mvc="http://www.springframework.org/schema/mvc"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="
+        http://www.springframework.org/schema/mvc
+        http://www.springframework.org/schema/mvc/spring-mvc.xsd
+        http://www.springframework.org/schema/beans
+        http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
+        http://www.springframework.org/schema/context
+        http://www.springframework.org/schema/context/spring-context.xsd">
+<!--    <mvc:annotation-driven/>-->
+
+    <context:component-scan base-package="com.baeldung"/>
+</beans>
\ No newline at end of file
diff --git a/spring-mvc-java-2/src/main/webapp/WEB-INF/web.xml b/spring-mvc-java-2/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000000..86a24e7646
--- /dev/null
+++ b/spring-mvc-java-2/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="https://xmlns.jcp.org/xml/ns/javaee"
+         xsi:schemaLocation="https://xmlns.jcp.org/xml/ns/javaee https://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
+    <display-name>Spring MVC Application 2</display-name>
+    <!-- Add Spring MVC DispatcherServlet as front controller -->
+    <servlet>
+        <servlet-name>mvc</servlet-name>
+        <servlet-class>
+            org.springframework.web.servlet.DispatcherServlet
+        </servlet-class>
+        <init-param>
+            <param-name>contextConfigLocation</param-name>
+            <param-value>/WEB-INF/mvc-servlet.xml</param-value>
+        </init-param>
+        <load-on-startup>1</load-on-startup>
+    </servlet>
+
+    <servlet-mapping>
+        <servlet-name>mvc</servlet-name>
+        <url-pattern>/</url-pattern>
+    </servlet-mapping>
+</web-app>
\ No newline at end of file