diff --git a/pom.xml b/pom.xml index 314cf5200..5ab62c717 100644 --- a/pom.xml +++ b/pom.xml @@ -428,10 +428,6 @@ mysql-connector-java 8.0.30 - - net.sf.ehcache - ehcache - com.zaxxer HikariCP @@ -560,6 +556,7 @@ UTF-8 + 5.8.16 2.2.5.RELEASE 1.0.9.RELEASE 0.3.0 diff --git a/src/main/java/org/wise/Application.java b/src/main/java/org/wise/Application.java index 41602332b..06ee87c15 100644 --- a/src/main/java/org/wise/Application.java +++ b/src/main/java/org/wise/Application.java @@ -24,13 +24,11 @@ package org.wise; import org.springframework.beans.factory.config.PropertiesFactoryBean; -import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.core.env.Environment; import org.springframework.core.io.ClassPathResource; @@ -58,18 +56,4 @@ public PropertiesFactoryBean i18nProperties() { bean.setLocation(new ClassPathResource("i18n/i18n.properties")); return bean; } - - @Bean - public CommandLineRunner commandLineRunner(ApplicationContext ctx) { - return args -> { - /* - System.out.println("Beans provided by Spring Boot:"); - String[] beanNames = ctx.getBeanDefinitionNames(); - Arrays.sort(beanNames); - for (String beanName : beanNames) { - System.out.println(beanName); - } - */ - }; - } } diff --git a/src/main/java/org/wise/portal/spring/impl/ACLContext.java b/src/main/java/org/wise/portal/spring/impl/ACLContext.java index 9974b6145..14d2deeeb 100644 --- a/src/main/java/org/wise/portal/spring/impl/ACLContext.java +++ b/src/main/java/org/wise/portal/spring/impl/ACLContext.java @@ -23,13 +23,10 @@ */ package org.wise.portal.spring.impl; -import java.util.Properties; - import javax.sql.DataSource; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.cache.ehcache.EhCacheFactoryBean; -import org.springframework.cache.ehcache.EhCacheManagerFactoryBean; +import org.springframework.cache.CacheManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.env.Environment; @@ -37,10 +34,11 @@ import org.springframework.security.acls.domain.AclAuthorizationStrategyImpl; import org.springframework.security.acls.domain.ConsoleAuditLogger; import org.springframework.security.acls.domain.DefaultPermissionGrantingStrategy; -import org.springframework.security.acls.domain.EhCacheBasedAclCache; +import org.springframework.security.acls.domain.SpringCacheBasedAclCache; import org.springframework.security.acls.jdbc.BasicLookupStrategy; import org.springframework.security.acls.jdbc.JdbcMutableAclService; import org.springframework.security.acls.jdbc.LookupStrategy; +import org.springframework.security.acls.model.AclCache; import org.springframework.security.acls.model.MutableAclService; import org.springframework.security.acls.model.PermissionGrantingStrategy; import org.wise.portal.domain.authentication.MutableAclSid; @@ -60,22 +58,13 @@ public class ACLContext { @Autowired Environment appProperties; - @Bean - public EhCacheBasedAclCache aclCache() { - return new EhCacheBasedAclCache(aclEhCacheFactoryBean().getObject(), permissionGrantingStrategy(), aclAuthorizationStrategy()); - } - - @Bean - public EhCacheFactoryBean aclEhCacheFactoryBean() { - EhCacheFactoryBean ehCacheFactoryBean = new EhCacheFactoryBean(); - ehCacheFactoryBean.setCacheManager(aclCacheManager().getObject()); - ehCacheFactoryBean.setCacheName("aclCache"); - return ehCacheFactoryBean; - } + @Autowired + CacheManager cacheManager; @Bean - public EhCacheManagerFactoryBean aclCacheManager() { - return new EhCacheManagerFactoryBean(); + public AclCache aclCache() { + return new SpringCacheBasedAclCache(cacheManager.getCache("aclCache"), + permissionGrantingStrategy(), aclAuthorizationStrategy()); } @Bean @@ -90,14 +79,17 @@ public AclAuthorizationStrategy aclAuthorizationStrategy() { @Bean public LookupStrategy lookupStrategy() { - return new BasicLookupStrategy(dataSource, aclCache(), aclAuthorizationStrategy(), new ConsoleAuditLogger()); + return new BasicLookupStrategy(dataSource, aclCache(), aclAuthorizationStrategy(), + new ConsoleAuditLogger()); } @Bean public MutableAclService aclservice() { - JdbcMutableAclService aclService = new JdbcMutableAclService(dataSource, lookupStrategy(), aclCache()); + JdbcMutableAclService aclService = new JdbcMutableAclService(dataSource, lookupStrategy(), + aclCache()); if (appProperties.containsProperty("spring.datasource.driver-class-name")) { - String driverClass = (String) appProperties.getProperty("spring.datasource.driver-class-name"); + String driverClass = (String) appProperties + .getProperty("spring.datasource.driver-class-name"); if ("com.mysql.cj.jdbc.Driver".equals(driverClass)) { aclService.setClassIdentityQuery("SELECT @@IDENTITY"); aclService.setSidIdentityQuery("SELECT @@IDENTITY");