Using a Proxy to Call a Web Service

Last modified: February 13, 2024

1 Introduction

In some cases, you’re stuck behind a firewall, and thus unable to call a webservice directly. This document shows you how to configure the JVM to use a proxy to call such services.

2 Proxy host and proxy port

There are two JVM parameters (system properties) that specify which proxy server to use. These are http.proxyHost and http.proxyPort You can specify these in your .m2eerc under JVM parameters:

1
2
3
4
...
# custom java options, like -Xmx256m or -Djava.foo=bar
 javaopts: [ ..., "-Dhttp.proxyHost=myproxyserver.com", "-Dhttp.proxyPort=3128"]
...

or directly (when calling from, for instance, eclipse):

1
-Dhttp.proxyHost=myproxyserver.com  -Dhttp.proxyPort=3128

3 Proxy user and password

Some proxies require authentication. To specify the user and password, simply pass two JVM parameters:

1
-Dhttp.proxyUser=myusername -Dhttp.proxyPassword=mypassword

4 SSL

You can also connect while using a secure sockets layer (ie https). To configure the proxy, you need to specify different proxy settings to connect. These settings are called https.proxyHost and https.proxyPort. In addition, you need to import the ssl certificate of the proxy server into your java keystore. More info can be found on the Oracle website

5 References

Oracle documentation on proxies