Skip to content

Commit 254d5ce

Browse files
Merge pull request #337 from Spring-Framework-Java-Apps/DEV_UPDATE_SPRING
Dev update spring
2 parents 594e8ed + 785c1b5 commit 254d5ce

18 files changed

+196
-164
lines changed

.idea/compiler.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pom.xml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44

55
<groupId>org.woehlke</groupId>
66
<artifactId>simpleworklist</artifactId>
7-
<version>2.3.37-SNAPSHOT</version>
7+
<version>2.3.38-SNAPSHOT</version>
88
<packaging>jar</packaging>
99

1010
<parent>
1111
<groupId>org.springframework.boot</groupId>
1212
<artifactId>spring-boot-starter-parent</artifactId>
13-
<version>2.4.9</version>
13+
<version>2.7.0</version>
1414
</parent>
1515

1616
<scm>
@@ -75,6 +75,7 @@
7575
<maven.scm.version>1.13.0</maven.scm.version>
7676

7777
<maven-release-plugin.version>3.0.0-M5</maven-release-plugin.version>
78+
<liquibase-maven-plugin.version>4.4.3</liquibase-maven-plugin.version>
7879

7980
<!-- Maven Reports for Site -->
8081
<maven-site-plugin.version>3.12.0</maven-site-plugin.version>
@@ -106,24 +107,24 @@
106107

107108
<!-- Frontend Server Site: Thymeleaf Templates -->
108109
<thymeleaf.version>3.0.11.RELEASE</thymeleaf.version>
110+
<thymeleaf-spring-data-dialect.version>3.5.0</thymeleaf-spring-data-dialect.version>
111+
<thymeleaf-testing.version>3.1.0.M2</thymeleaf-testing.version>
109112
<!--
110113
<thymeleaf-extras-data-attribute.version>2.0.1</thymeleaf-extras-data-attribute.version>
111114
<thymeleaf-extras-java8time.version>3.0.4.RELEASE</thymeleaf-extras-java8time.version>
112115
<thymeleaf-layout-dialect.version>3.10</thymeleaf-layout-dialect.version>
113116
-->
114-
<thymeleaf-spring-data-dialect.version>3.5.0</thymeleaf-spring-data-dialect.version>
115-
<thymeleaf-testing.version>3.1.0.M2</thymeleaf-testing.version>
116117

117118
<!-- Spring Boot and Spring Frameworks -->
118119
<spring-boot-maven-plugin.version>${project.parent.version}</spring-boot-maven-plugin.version>
119120

120121
<!-- Unit and Integration Testing -->
121-
<xmlunit.version>2.9.0</xmlunit.version>
122-
<xmlunit2.version>2.9.0</xmlunit2.version>
123-
<htmlunit.version>2.62.0</htmlunit.version>
124-
<hamcrest.version>2.2</hamcrest.version>
125-
<jsoup.version>1.15.1</jsoup.version>
126122
<skipTests>true</skipTests>
123+
<xmlunit2.version>2.6.4</xmlunit2.version>
124+
<xmlunit.version>2.6.4</xmlunit.version>
125+
<htmlunit.version>2.43.0</htmlunit.version>
126+
<hamcrest.version>2.2</hamcrest.version>
127+
<jsoup.version>1.14.2</jsoup.version>
127128
</properties>
128129

129130
<repositories>

src/main/java/org/woehlke/simpleworklist/SimpleworklistApplication.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@
44
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
55
import org.springframework.boot.autoconfigure.SpringBootApplication;
66
import org.springframework.boot.context.properties.EnableConfigurationProperties;
7-
import org.woehlke.simpleworklist.application.ApplicationProperties;
8-
import org.woehlke.simpleworklist.application.config.WebMvcConfig;
9-
import org.woehlke.simpleworklist.application.config.WebSecurityConfig;
7+
import org.woehlke.simpleworklist.application.SimpleworklistProperties;
8+
import org.woehlke.simpleworklist.config.WebMvcConfig;
9+
import org.woehlke.simpleworklist.config.WebSecurityConfig;
1010

1111

1212
@ImportAutoConfiguration({
1313
WebMvcConfig.class,
1414
WebSecurityConfig.class
1515
})
1616
@EnableConfigurationProperties({
17-
ApplicationProperties.class
17+
SimpleworklistProperties.class
1818
})
1919
@SpringBootApplication
2020
public class SimpleworklistApplication {

src/main/java/org/woehlke/simpleworklist/application/ApplicationProperties.java renamed to src/main/java/org/woehlke/simpleworklist/application/SimpleworklistProperties.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,15 @@
77
import org.springframework.validation.annotation.Validated;
88

99
import javax.validation.Valid;
10+
import javax.validation.constraints.NotBlank;
1011
import javax.validation.constraints.NotNull;
1112

1213
@Component
1314
@Getter
1415
@Setter
1516
@ConfigurationProperties(prefix="org.woehlke.simpleworklist")
1617
@Validated
17-
public class ApplicationProperties {
18+
public class SimpleworklistProperties {
1819

1920
@Valid
2021
private Mail mail = new Mail();
@@ -86,7 +87,7 @@ public static class WebMvc {
8687

8788
private String[] staticResourceHandler;
8889

89-
private String[] dynaicResourceHandler;
90+
private String[] dynamicResourceHandler;
9091
}
9192

9293
@Getter
@@ -106,10 +107,10 @@ public static class WebSecurity {
106107
private Boolean invalidateHttpSession;
107108

108109
@NotNull
109-
private String defaultSuccessUrl;
110+
private String failureForwardUrl;
110111

111112
@NotNull
112-
private String failureForwardUrl;
113+
private String defaultSuccessUrl;
113114

114115
@NotNull
115116
private String usernameParameter;
@@ -124,6 +125,15 @@ public static class WebSecurity {
124125

125126
@NotNull
126127
private Integer strengthBCryptPasswordEncoder;
128+
129+
/*
130+
@NotNull
131+
private Integer hashWidth;
132+
133+
@NotBlank
134+
private String secret;
135+
*/
136+
127137
}
128138

129139
}

src/main/java/org/woehlke/simpleworklist/common/domain/AbstractController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import org.springframework.web.bind.annotation.ModelAttribute;
66
import org.springframework.web.bind.annotation.SessionAttributes;
77
import org.woehlke.simpleworklist.domain.breadcrumb.BreadcrumbService;
8-
import org.woehlke.simpleworklist.application.ApplicationProperties;
8+
import org.woehlke.simpleworklist.application.SimpleworklistProperties;
99
import org.woehlke.simpleworklist.domain.context.Context;
1010
import org.woehlke.simpleworklist.domain.project.Project;
1111
import org.woehlke.simpleworklist.domain.task.TaskService;
@@ -37,7 +37,7 @@
3737
public abstract class AbstractController {
3838

3939
@Autowired
40-
protected ApplicationProperties applicationProperties;
40+
protected SimpleworklistProperties simpleworklistProperties;
4141

4242
@Autowired
4343
protected ProjectService projectService;

src/main/java/org/woehlke/simpleworklist/common/error/ApplicationErrorController.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ public String handleError(
9898
return "error/error";
9999
}
100100

101-
@Override
102101
public String getErrorPath() {
103102
return "/fehler";
104103
}

src/main/java/org/woehlke/simpleworklist/application/config/WebMvcConfig.java renamed to src/main/java/org/woehlke/simpleworklist/config/WebMvcConfig.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.woehlke.simpleworklist.application.config;
1+
package org.woehlke.simpleworklist.config;
22

33
import org.springframework.beans.factory.annotation.Autowired;
44
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@@ -18,7 +18,7 @@
1818
import org.springframework.web.servlet.i18n.LocaleChangeInterceptor;
1919
import org.springframework.web.servlet.i18n.SessionLocaleResolver;
2020
import org.thymeleaf.dialect.springdata.SpringDataDialect;
21-
import org.woehlke.simpleworklist.application.ApplicationProperties;
21+
import org.woehlke.simpleworklist.application.SimpleworklistProperties;
2222

2323
import java.util.Locale;
2424
import java.util.Properties;
@@ -33,42 +33,42 @@
3333
"org.woehlke.simpleworklist"
3434
})
3535
@EnableConfigurationProperties({
36-
ApplicationProperties.class
36+
SimpleworklistProperties.class
3737
})
3838
public class WebMvcConfig extends WebMvcConfigurerAdapter implements WebMvcConfigurer {
3939

40-
private final ApplicationProperties applicationProperties;
40+
private final SimpleworklistProperties simpleworklistProperties;
4141

4242
@Autowired
43-
public WebMvcConfig(ApplicationProperties applicationProperties) {
44-
this.applicationProperties = applicationProperties;
43+
public WebMvcConfig(SimpleworklistProperties simpleworklistProperties) {
44+
this.simpleworklistProperties = simpleworklistProperties;
4545
}
4646

4747
@Bean
4848
public JavaMailSender mailSender(){
4949
Properties javaMailProperties = new Properties();
5050
javaMailProperties.setProperty(
5151
"mail.smtp.auth",
52-
applicationProperties.getMail().getAuth().toString()
52+
simpleworklistProperties.getMail().getAuth().toString()
5353
);
5454
javaMailProperties.setProperty(
5555
"mail.smtp.ssl.enable",
56-
applicationProperties.getMail().getSslEnable().toString()
56+
simpleworklistProperties.getMail().getSslEnable().toString()
5757
);
5858
javaMailProperties.setProperty(
5959
"mail.smtp.socketFactory.port",
60-
applicationProperties.getMail().getSocketFactoryPort()
60+
simpleworklistProperties.getMail().getSocketFactoryPort()
6161
);
6262
javaMailProperties.setProperty(
6363
"mail.smtp.socketFactory.class",
64-
applicationProperties.getMail().getSocketFactoryClass()
64+
simpleworklistProperties.getMail().getSocketFactoryClass()
6565
);
6666
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
6767
mailSender.setJavaMailProperties(javaMailProperties);
68-
mailSender.setHost(applicationProperties.getMail().getHost());
69-
mailSender.setPort(applicationProperties.getMail().getPort());
70-
mailSender.setUsername(applicationProperties.getMail().getUsername());
71-
mailSender.setPassword(applicationProperties.getMail().getPassword());
68+
mailSender.setHost(simpleworklistProperties.getMail().getHost());
69+
mailSender.setPort(simpleworklistProperties.getMail().getPort());
70+
mailSender.setUsername(simpleworklistProperties.getMail().getUsername());
71+
mailSender.setPassword(simpleworklistProperties.getMail().getPassword());
7272
return mailSender;
7373
}
7474

@@ -113,12 +113,12 @@ public void addViewControllers(ViewControllerRegistry registry) {
113113
}
114114

115115
public void addResourceHandlers(ResourceHandlerRegistry registry) {
116-
for(String h :applicationProperties.getWebMvc().getStaticResourceHandler()){
116+
for(String h : simpleworklistProperties.getWebMvc().getStaticResourceHandler()){
117117
String location = "classpath:/static"+h+"/";
118118
registry.addResourceHandler(h+"/*").addResourceLocations(location);
119119
registry.addResourceHandler(h+"/**").addResourceLocations(location);
120120
}
121-
for(String h :applicationProperties.getWebMvc().getDynaicResourceHandler()){
121+
for(String h : simpleworklistProperties.getWebMvc().getDynamicResourceHandler()){
122122
String location = h+"/";
123123
registry.addResourceHandler(h+"/*").addResourceLocations(location);
124124
registry.addResourceHandler(h+"/**").addResourceLocations(location);
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.woehlke.simpleworklist.application.config;
1+
package org.woehlke.simpleworklist.config;
22

33
import org.springframework.beans.factory.annotation.Autowired;
44
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
@@ -16,12 +16,11 @@
1616
import org.springframework.security.core.userdetails.UserDetailsService;
1717
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
1818
import org.springframework.security.crypto.password.PasswordEncoder;
19-
import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
19+
import org.springframework.security.crypto.password.Pbkdf2PasswordEncoder;
2020
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
2121
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
22-
import org.woehlke.simpleworklist.application.ApplicationProperties;
23-
import org.woehlke.simpleworklist.user.login.LoginSuccessHandler;
24-
import org.woehlke.simpleworklist.user.services.UserAccountSecurityService;
22+
import org.woehlke.simpleworklist.application.SimpleworklistProperties;
23+
import org.woehlke.simpleworklist.user.services.SimpleworklistUserAccountSecurityService;
2524

2625

2726
@Configuration
@@ -34,25 +33,25 @@
3433
WebMvcConfig.class
3534
})
3635
@EnableConfigurationProperties({
37-
ApplicationProperties.class
36+
SimpleworklistProperties.class
3837
})
3938
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
4039

4140
private final AuthenticationManagerBuilder authenticationManagerBuilder;
42-
private final AuthenticationSuccessHandler loginSuccessHandler;
43-
private final UserAccountSecurityService userAccountSecurityService;
44-
private final ApplicationProperties applicationProperties;
41+
//private final AuthenticationSuccessHandler loginSuccessHandler;
42+
private final SimpleworklistUserAccountSecurityService simpleworklistUserAccountSecurityService;
43+
private final SimpleworklistProperties simpleworklistProperties;
4544

4645
@Autowired
4746
public WebSecurityConfig(
48-
AuthenticationManagerBuilder authenticationManagerBuilder,
49-
LoginSuccessHandler loginSuccessHandler,
50-
UserAccountSecurityService userAccountSecurityService,
51-
ApplicationProperties applicationProperties) {
52-
this.authenticationManagerBuilder = authenticationManagerBuilder;
53-
this.loginSuccessHandler = loginSuccessHandler;
54-
this.userAccountSecurityService = userAccountSecurityService;
55-
this.applicationProperties = applicationProperties;
47+
AuthenticationManagerBuilder auth,
48+
//LoginSuccessHandler loginSuccessHandler,
49+
SimpleworklistUserAccountSecurityService simpleworklistUserAccountSecurityService,
50+
SimpleworklistProperties simpleworklistProperties) {
51+
this.authenticationManagerBuilder = auth;
52+
//this.loginSuccessHandler = loginSuccessHandler;
53+
this.simpleworklistUserAccountSecurityService = simpleworklistUserAccountSecurityService;
54+
this.simpleworklistProperties = simpleworklistProperties;
5655
}
5756

5857
@Override
@@ -61,35 +60,35 @@ protected void configure(HttpSecurity http) throws Exception {
6160
.headers()
6261
.disable()
6362
.authorizeRequests()
64-
.antMatchers(applicationProperties.getWebSecurity().getAntPatternsPublic())
63+
.antMatchers(simpleworklistProperties.getWebSecurity().getAntPatternsPublic())
6564
.permitAll()
6665
.anyRequest()
6766
.fullyAuthenticated()
6867
.and()
6968
.csrf()
7069
.and()
7170
.formLogin()
72-
.loginPage(applicationProperties.getWebSecurity().getLoginPage())
73-
.usernameParameter(applicationProperties.getWebSecurity().getUsernameParameter())
74-
.passwordParameter(applicationProperties.getWebSecurity().getPasswordParameter())
75-
.loginProcessingUrl(applicationProperties.getWebSecurity().getLoginProcessingUrl())
76-
.failureForwardUrl(applicationProperties.getWebSecurity().getFailureForwardUrl())
77-
.defaultSuccessUrl(applicationProperties.getWebSecurity().getDefaultSuccessUrl())
78-
.successHandler(loginSuccessHandler)
71+
.loginPage(simpleworklistProperties.getWebSecurity().getLoginPage())
72+
.usernameParameter(simpleworklistProperties.getWebSecurity().getUsernameParameter())
73+
.passwordParameter(simpleworklistProperties.getWebSecurity().getPasswordParameter())
74+
.loginProcessingUrl(simpleworklistProperties.getWebSecurity().getLoginProcessingUrl())
75+
.failureForwardUrl(simpleworklistProperties.getWebSecurity().getFailureForwardUrl())
76+
.defaultSuccessUrl(simpleworklistProperties.getWebSecurity().getDefaultSuccessUrl())
77+
//.successHandler(loginSuccessHandler)
7978
.permitAll()
8079
.and()
8180
.csrf()
8281
.and()
8382
.logout()
84-
.logoutUrl(applicationProperties.getWebSecurity().getLogoutUrl())
85-
.deleteCookies(applicationProperties.getWebSecurity().getCookieNamesToClear())
86-
.invalidateHttpSession(applicationProperties.getWebSecurity().getInvalidateHttpSession())
83+
.logoutUrl(simpleworklistProperties.getWebSecurity().getLogoutUrl())
84+
.deleteCookies(simpleworklistProperties.getWebSecurity().getCookieNamesToClear())
85+
.invalidateHttpSession(simpleworklistProperties.getWebSecurity().getInvalidateHttpSession())
8786
.permitAll();
8887
}
8988

9089
@Bean
9190
public UserDetailsService userDetailsService(){
92-
return this.userAccountSecurityService;
91+
return this.simpleworklistUserAccountSecurityService;
9392
}
9493

9594
/**
@@ -98,8 +97,16 @@ public UserDetailsService userDetailsService(){
9897
*/
9998
@Bean
10099
public PasswordEncoder encoder(){
101-
int strength = applicationProperties.getWebSecurity().getStrengthBCryptPasswordEncoder();
100+
int strength = simpleworklistProperties.getWebSecurity().getStrengthBCryptPasswordEncoder();
102101
return new BCryptPasswordEncoder(strength);
102+
/*Ü
103+
CharSequence secret=this.simpleworklistProperties.getWebSecurity().getSecret();
104+
int iterations=this.simpleworklistProperties.getWebSecurity().getIterations();
105+
int hashWidth=this.simpleworklistProperties.getWebSecurity().getHashWidth();
106+
Pbkdf2PasswordEncoder encoder = (new Pbkdf2PasswordEncoder(secret,iterations,hashWidth));
107+
encoder.setEncodeHashAsBase64(true);
108+
return encoder;
109+
*/
103110
}
104111

105112
@Bean
@@ -113,7 +120,7 @@ public AuthenticationManager authenticationManager() throws Exception {
113120
public UsernamePasswordAuthenticationFilter authenticationFilter() throws Exception {
114121
UsernamePasswordAuthenticationFilter filter = new UsernamePasswordAuthenticationFilter();
115122
filter.setAuthenticationManager(authenticationManager());
116-
filter.setFilterProcessesUrl(applicationProperties.getWebSecurity().getLoginProcessingUrl());
123+
filter.setFilterProcessesUrl(simpleworklistProperties.getWebSecurity().getLoginProcessingUrl());
117124
return filter;
118125
}
119126
}

src/main/java/org/woehlke/simpleworklist/user/services/UserAccountSecurityService.java renamed to src/main/java/org/woehlke/simpleworklist/user/services/SimpleworklistUserAccountSecurityService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22

33
import org.springframework.security.core.userdetails.UserDetailsService;
44

5-
public interface UserAccountSecurityService extends UserDetailsService {
5+
public interface SimpleworklistUserAccountSecurityService extends UserDetailsService {
66
}

0 commit comments

Comments
 (0)