Hi Indraneel,
Welcome to OSGi! So, I strongly suspect that the issue is that the http jar isn't getting included in your bundle. Looking at your pom file, I see this:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5</version>
<optional>true</optional>
</dependency>
which is correct. However, you are missing some key instructions in the configuration instructions further up in your pom. Here is an example from one of mine:
<Embed-Dependency>*;scope=!provided</Embed-Dependency>
<Embed-Transitive>true</Embed-Transitive>
<Import-Package>*;resolution:=optional</Import-Package>
The <Embed-Dependency> clause allows me to say "embed everything unless I add the provided scope" This gives me a lot more control than having to add each jar I want to embed in the stanza. And, what you were missing is the <Import-Package> bit, which specifically says that if <optional> is true, we want to import it. If you make those changes, the app *should* start (unless something else is going on :-)).
-- scooter