diff --git a/spring-mvc-simple/pom.xml b/spring-mvc-simple/pom.xml
index 14590f3de4..8a51c04113 100644
--- a/spring-mvc-simple/pom.xml
+++ b/spring-mvc-simple/pom.xml
@@ -27,6 +27,7 @@
3.0.7.RELEASE
2.4.12
2.3.23
+ 1.2.5
@@ -114,6 +115,13 @@
groovy-templates
${groovy.version}
+
+
+
+ de.neuland-bfi
+ spring-jade4j
+ ${jade.version}
+
diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/JadeTemplateConfiguration.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/JadeTemplateConfiguration.java
new file mode 100644
index 0000000000..10345bac58
--- /dev/null
+++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/JadeTemplateConfiguration.java
@@ -0,0 +1,39 @@
+package com.baeldung.spring.configuration;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.ViewResolver;
+import org.springframework.web.servlet.config.annotation.EnableWebMvc;
+
+import de.neuland.jade4j.JadeConfiguration;
+import de.neuland.jade4j.spring.template.SpringTemplateLoader;
+import de.neuland.jade4j.spring.view.JadeViewResolver;
+
+@Configuration
+@EnableWebMvc
+@ComponentScan(basePackages = { "com.baeldung.springmvcforms", "com.baeldung.spring.controller", "com.baeldung.spring.validator" })
+public class JadeTemplateConfiguration {
+ @Bean
+ public SpringTemplateLoader templateLoader() {
+ SpringTemplateLoader templateLoader = new SpringTemplateLoader();
+ templateLoader.setBasePath("/WEB-INF/views/");
+ templateLoader.setSuffix(".jade");
+ return templateLoader;
+ }
+
+ @Bean
+ public JadeConfiguration jadeConfiguration() {
+ JadeConfiguration configuration = new JadeConfiguration();
+ configuration.setCaching(false);
+ configuration.setTemplateLoader(templateLoader());
+ return configuration;
+ }
+
+ @Bean
+ public ViewResolver viewResolver() {
+ JadeViewResolver viewResolver = new JadeViewResolver();
+ viewResolver.setConfiguration(jadeConfiguration());
+ return viewResolver;
+ }
+}
diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/WebInitializer.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/WebInitializer.java
index 3e5b416191..d57d2c621a 100644
--- a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/WebInitializer.java
+++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/WebInitializer.java
@@ -18,6 +18,7 @@ public class WebInitializer implements WebApplicationInitializer {
//ctx.register(ThymeleafConfiguration.class);
//ctx.register(FreemarkerConfiguration.class);
//ctx.register(GroovyConfiguration.class);
+ //ctx.register(JadeTemplateConfiguration.class);
ctx.setServletContext(container);
// Manage the lifecycle of the root application context
diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/UserController.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/UserController.java
index 55179938fc..b402a376c0 100644
--- a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/UserController.java
+++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/UserController.java
@@ -35,6 +35,12 @@ public class UserController {
return "registration-groovy";
}
+ @GetMapping("/registration-jade")
+ public String getRegistrationJade(Model model) {
+ model.addAttribute("user", new User());
+ return "registration-jade";
+ }
+
@PostMapping("/register")
@ResponseBody
public void register(User user){
diff --git a/spring-mvc-simple/src/main/webapp/WEB-INF/views/registration-jade.jade b/spring-mvc-simple/src/main/webapp/WEB-INF/views/registration-jade.jade
new file mode 100644
index 0000000000..44b6293ff0
--- /dev/null
+++ b/spring-mvc-simple/src/main/webapp/WEB-INF/views/registration-jade.jade
@@ -0,0 +1,11 @@
+doctype html
+html
+ head
+ title User Registration
+ body
+ form(action="register" method="post" )
+ label(for="email") Emailaaaaaaaa:
+ input(type="text" name="email")
+ label(for="password") Password:
+ input(type="password" name="password")
+ input(type="submit" value="Submit")
\ No newline at end of file
diff --git a/spring-security-client/spring-security-jsp-authentication/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-jsp-authentication/src/main/java/org/baeldung/config/Application.java
index 4057a85f13..c2c5939676 100644
--- a/spring-security-client/spring-security-jsp-authentication/src/main/java/org/baeldung/config/Application.java
+++ b/spring-security-client/spring-security-jsp-authentication/src/main/java/org/baeldung/config/Application.java
@@ -2,10 +2,11 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
-import org.springframework.boot.context.web.SpringBootServletInitializer;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
-@SpringBootApplication
+@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class Application extends SpringBootServletInitializer {
@Override
diff --git a/spring-security-client/spring-security-jsp-authorize/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-jsp-authorize/src/main/java/org/baeldung/config/Application.java
index 4057a85f13..c2c5939676 100644
--- a/spring-security-client/spring-security-jsp-authorize/src/main/java/org/baeldung/config/Application.java
+++ b/spring-security-client/spring-security-jsp-authorize/src/main/java/org/baeldung/config/Application.java
@@ -2,10 +2,11 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
-import org.springframework.boot.context.web.SpringBootServletInitializer;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
-@SpringBootApplication
+@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class Application extends SpringBootServletInitializer {
@Override
diff --git a/spring-security-client/spring-security-jsp-config/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-jsp-config/src/main/java/org/baeldung/config/Application.java
index 4057a85f13..c2c5939676 100644
--- a/spring-security-client/spring-security-jsp-config/src/main/java/org/baeldung/config/Application.java
+++ b/spring-security-client/spring-security-jsp-config/src/main/java/org/baeldung/config/Application.java
@@ -2,10 +2,11 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
-import org.springframework.boot.context.web.SpringBootServletInitializer;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
-@SpringBootApplication
+@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class Application extends SpringBootServletInitializer {
@Override
diff --git a/spring-security-client/spring-security-thymeleaf-authentication/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-thymeleaf-authentication/src/main/java/org/baeldung/config/Application.java
index bea0194b40..329b104143 100644
--- a/spring-security-client/spring-security-thymeleaf-authentication/src/main/java/org/baeldung/config/Application.java
+++ b/spring-security-client/spring-security-thymeleaf-authentication/src/main/java/org/baeldung/config/Application.java
@@ -2,9 +2,10 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
@SpringBootApplication
-public class Application {
+public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
diff --git a/spring-security-client/spring-security-thymeleaf-authorize/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-thymeleaf-authorize/src/main/java/org/baeldung/config/Application.java
index bea0194b40..329b104143 100644
--- a/spring-security-client/spring-security-thymeleaf-authorize/src/main/java/org/baeldung/config/Application.java
+++ b/spring-security-client/spring-security-thymeleaf-authorize/src/main/java/org/baeldung/config/Application.java
@@ -2,9 +2,10 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
@SpringBootApplication
-public class Application {
+public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
diff --git a/spring-security-client/spring-security-thymeleaf-config/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-thymeleaf-config/src/main/java/org/baeldung/config/Application.java
index bea0194b40..329b104143 100644
--- a/spring-security-client/spring-security-thymeleaf-config/src/main/java/org/baeldung/config/Application.java
+++ b/spring-security-client/spring-security-thymeleaf-config/src/main/java/org/baeldung/config/Application.java
@@ -2,9 +2,10 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
@SpringBootApplication
-public class Application {
+public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
diff --git a/spring-security-core/src/main/java/org/baeldung/app/App.java b/spring-security-core/src/main/java/org/baeldung/app/App.java
index 06c295fcd7..37d8c34c5a 100644
--- a/spring-security-core/src/main/java/org/baeldung/app/App.java
+++ b/spring-security-core/src/main/java/org/baeldung/app/App.java
@@ -3,6 +3,7 @@ package org.baeldung.app;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
+import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
@@ -10,7 +11,7 @@ import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
@EnableJpaRepositories("org.baeldung.repository")
@ComponentScan("org.baeldung")
@EntityScan("org.baeldung.entity")
-public class App {
+public class App extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}