Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.

DefaultHttpClient is depricated in AEM-6.4

Avatar

Level 4

Dear All,

I am following the below help document for displaying data from a Restful Web Service.

Creating an Adobe Experience Manager 6.4 HTL Component that displays data from a Restful Web Service

But when I am writing the code for HeroRestComponent.java , then I am getting deprecated message , as shown below.

1774407_pastedImage_1.png

I am using AEM-6.4. Am I missing something ?

3 Replies

Avatar

Community Advisor

Hi,

Please check the dependency at http://localhost:4502/system/console/depfinder 

and include in pom, for 6.4 I found below:

<dependency>

<artifactId>commons-codec</artifactId>

<version>1.10</version>

<groupId>commons-codec</groupId>

<scope>provided</scope>

</dependency>



Arun Patidar

Avatar

Community Advisor

Hi Sunitha

  Please check this blog https://www.mkyong.com/java/the-type-defaulthttpclient-is-deprecated/  . This talks about the same issue. I also tried the same. You can rewrite the code like below

HttpClient client = HttpClientBuilder.create().build(); 

HttpGet getRequest = new HttpGet("http://services.groupkt.com/country/get/iso2code/"+code);

getRequest.addHeader("accept", "application/json");

HttpResponse response = client.execute(getRequest);

PS:- I have not executed the code. But guess this should work from little bit of googling Happy coding .

Thanks

Veena

Avatar

Employee Advisor

I just checked (AEM 6.5, but 6.4 should be very similar), and there is a bundle "org.apache.httpcomponents.httpclient", which exports the java namespaces "org.apache.http.{auth,client,conn, impl}". You should be able to adapt your code to fix this deprecation easily.

(If it's working can you raise a ticket with Adobe support and ask if this example can be adapted? Thanks!)

Jörg