diff --git a/spring-all/.settings/org.eclipse.wst.common.project.facet.core.xml b/spring-all/.settings/org.eclipse.wst.common.project.facet.core.xml
index 9ca0d1c1b7..991897a4ac 100644
--- a/spring-all/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ b/spring-all/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/spring-all/src/main/java/org/baeldung/caching/config/CachingConfig.java b/spring-all/src/main/java/org/baeldung/caching/config/CachingConfig.java
new file mode 100644
index 0000000000..4153ec9636
--- /dev/null
+++ b/spring-all/src/main/java/org/baeldung/caching/config/CachingConfig.java
@@ -0,0 +1,29 @@
+package org.baeldung.caching.config;
+
+import java.util.Arrays;
+
+import org.baeldung.caching.example.CustomerDataService;
+import org.springframework.cache.CacheManager;
+import org.springframework.cache.annotation.EnableCaching;
+import org.springframework.cache.concurrent.ConcurrentMapCache;
+import org.springframework.cache.support.SimpleCacheManager;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+@EnableCaching
+public class CachingConfig {
+
+ @Bean
+ public CustomerDataService customerDataService() {
+ return new CustomerDataService();
+ }
+
+ @Bean
+ public CacheManager cacheManager() {
+ final SimpleCacheManager cacheManager = new SimpleCacheManager();
+ cacheManager.setCaches(Arrays.asList(new ConcurrentMapCache("directory"), new ConcurrentMapCache("addresses")));
+ return cacheManager;
+ }
+
+}
diff --git a/spring-all/src/main/java/org/baeldung/caching/config/MyAppConfig.java b/spring-all/src/main/java/org/baeldung/caching/config/MyAppConfig.java
deleted file mode 100644
index 467e50c15e..0000000000
--- a/spring-all/src/main/java/org/baeldung/caching/config/MyAppConfig.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package org.baeldung.caching.config;
-
-import org.springframework.cache.annotation.EnableCaching;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@EnableCaching
-public class MyAppConfig {
- // Your configuration code goes here.
-}
diff --git a/spring-all/src/main/java/org/baeldung/caching/example/CustomerDataService.java b/spring-all/src/main/java/org/baeldung/caching/example/CustomerDataService.java
index 86026de93a..fe4de5d282 100644
--- a/spring-all/src/main/java/org/baeldung/caching/example/CustomerDataService.java
+++ b/spring-all/src/main/java/org/baeldung/caching/example/CustomerDataService.java
@@ -10,12 +10,18 @@ import org.springframework.cache.annotation.Caching;
import org.springframework.stereotype.Component;
@Component
-@CacheConfig(cacheNames = { "addressDemo" })
+@CacheConfig(cacheNames = { "addresses" })
public class CustomerDataService {
@Autowired
CacheManager cacheManager;
+ // this method configuration is equivalent to xml configuration
+ @Cacheable(value = "addresses", key = "#customer.name")
+ public String getAddress(final Customer customer) {
+ return customer.getAddress();
+ }
+
/**
* The method returns the customer's address,
only it doesn't find it the cache- addresses and directory.
diff --git a/spring-all/src/main/resources/config.xml b/spring-all/src/main/resources/config.xml
index 244e9027ec..23458539b0 100644
--- a/spring-all/src/main/resources/config.xml
+++ b/spring-all/src/main/resources/config.xml
@@ -10,8 +10,7 @@
-
-
+
@@ -21,7 +20,6 @@
-
@@ -34,7 +32,7 @@
-
+
diff --git a/spring-all/src/test/java/org/baeldung/caching/test/SpringCachingBehaviorTest.java b/spring-all/src/test/java/org/baeldung/caching/test/SpringCachingBehaviorTest.java
index 0b3edaffb3..a4a3733dd8 100644
--- a/spring-all/src/test/java/org/baeldung/caching/test/SpringCachingBehaviorTest.java
+++ b/spring-all/src/test/java/org/baeldung/caching/test/SpringCachingBehaviorTest.java
@@ -1,11 +1,11 @@
package org.baeldung.caching.test;
+import org.baeldung.caching.config.CachingConfig;
import org.baeldung.caching.example.Customer;
import org.baeldung.caching.example.CustomerDataService;
import org.junit.Test;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Component;
+import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
@Component
public class SpringCachingBehaviorTest {
@@ -13,12 +13,16 @@ public class SpringCachingBehaviorTest {
@Test
public void testCaching() {
@SuppressWarnings("resource")
- final ApplicationContext context = new ClassPathXmlApplicationContext("config.xml");
+ final
+ // final ApplicationContext context = new ClassPathXmlApplicationContext("config.xml");
+ AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
+ context.register(CachingConfig.class);
+ context.refresh();
final CustomerDataService service = context.getBean(CustomerDataService.class);
final Customer cust = new Customer("Tom", "67-2, Downing Street, NY");
- service.getAddress1(cust);
- service.getAddress1(cust);
+ service.getAddress(cust);
+ service.getAddress(cust);
// fail("Unable to instantiate the CustomerDataService");
}
diff --git a/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/ClientPreemptiveDigestAuthentication.java b/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/ClientPreemptiveDigestAuthentication.java
index 5887d2dcab..de94a6e393 100644
--- a/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/ClientPreemptiveDigestAuthentication.java
+++ b/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/ClientPreemptiveDigestAuthentication.java
@@ -6,11 +6,14 @@ import org.apache.http.HttpResponse;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.AuthCache;
+import org.apache.http.client.CredentialsProvider;
import org.apache.http.client.methods.HttpGet;
-import org.apache.http.client.protocol.ClientContext;
+import org.apache.http.client.protocol.HttpClientContext;
import org.apache.http.impl.auth.DigestScheme;
import org.apache.http.impl.client.BasicAuthCache;
-import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.http.impl.client.BasicCredentialsProvider;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
import org.apache.http.protocol.BasicHttpContext;
import org.apache.http.util.EntityUtils;
@@ -27,9 +30,11 @@ public class ClientPreemptiveDigestAuthentication {
public static void main(final String[] args) throws Exception {
final HttpHost targetHost = new HttpHost("localhost", 8080, "http");
- final DefaultHttpClient httpclient = new DefaultHttpClient();
+ final CredentialsProvider credsProvider = new BasicCredentialsProvider();
+ credsProvider.setCredentials(new AuthScope(targetHost.getHostName(), targetHost.getPort()), new UsernamePasswordCredentials("user1", "user1Pass"));
+
+ final CloseableHttpClient httpclient = HttpClients.custom().setDefaultCredentialsProvider(credsProvider).build();
try {
- httpclient.getCredentialsProvider().setCredentials(new AuthScope(targetHost.getHostName(), targetHost.getPort()), new UsernamePasswordCredentials("user1", "user1Pass"));
// Create AuthCache instance
final AuthCache authCache = new BasicAuthCache();
@@ -43,7 +48,7 @@ public class ClientPreemptiveDigestAuthentication {
// Add AuthCache to the execution context
final BasicHttpContext localcontext = new BasicHttpContext();
- localcontext.setAttribute(ClientContext.AUTH_CACHE, authCache);
+ localcontext.setAttribute(HttpClientContext.AUTH_CACHE, authCache);
final HttpGet httpget = new HttpGet("http://localhost:8080/spring-security-rest-digest-auth/api/foos/1");
@@ -63,7 +68,7 @@ public class ClientPreemptiveDigestAuthentication {
}
} finally {
// When HttpClient instance is no longer needed, shut down the connection manager to ensure immediate deallocation of all system resources
- httpclient.getConnectionManager().shutdown();
+ httpclient.close();
}
}
diff --git a/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/HttpComponentsClientHttpRequestFactoryDigestAuth.java b/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/HttpComponentsClientHttpRequestFactoryDigestAuth.java
index 698ab4cb92..49487da545 100644
--- a/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/HttpComponentsClientHttpRequestFactoryDigestAuth.java
+++ b/spring-security-rest-digest-auth/src/main/java/org/baeldung/client/HttpComponentsClientHttpRequestFactoryDigestAuth.java
@@ -5,7 +5,7 @@ import java.net.URI;
import org.apache.http.HttpHost;
import org.apache.http.client.AuthCache;
import org.apache.http.client.HttpClient;
-import org.apache.http.client.protocol.ClientContext;
+import org.apache.http.client.protocol.HttpClientContext;
import org.apache.http.impl.auth.DigestScheme;
import org.apache.http.impl.client.BasicAuthCache;
import org.apache.http.protocol.BasicHttpContext;
@@ -41,7 +41,7 @@ public class HttpComponentsClientHttpRequestFactoryDigestAuth extends HttpCompon
// Add AuthCache to the execution context
final BasicHttpContext localcontext = new BasicHttpContext();
- localcontext.setAttribute(ClientContext.AUTH_CACHE, authCache);
+ localcontext.setAttribute(HttpClientContext.AUTH_CACHE, authCache);
return localcontext;
}