Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

As a result, this topic is heavy on examples, and going beyond the examples is more a case of reading javadocs and finding the right settings than reading some documentation to magically impart the right answer.

General Configuration

A set of Spring factory beans are provided that understand how to build an HttpClient instance with a variety of features and settings. For technical reasons the basic caching behavior of the client is determined by selecting from among three different factory bean types:

...

Expand
titleProperties

These properties are used in a set of DEPRECATED parent beans that are no longer supported due to a Spring bug that can impact the reloading of service configurations. They remain present for compatibility and for convenience should you choose to use them in your own bean definitions

Name

Type

Default

Description

idp.httpclient.useSecurityEnhancedTLSSocketFactory

Boolean

false

If true, causes the default clients to be injected with a special socket factory that supports advanced TLS features (requires substantial additional configuration)

idp.httpclient.connectionDisregardTLSCertificate              

Boolean

false

If the previous property is false, this allows the default TLS behavior of the client to ignore the TLS server certificate entirely (use with obvious caution, typically only while testing)

idp.httpclient.connectionRequestTimeout

Duration

PT1M

TIme to wait for a connection to be returned from the pool (can be 0 for no imposed value)

idp.httpclient.connectionTimeout

Duration

PT1M

TIme to wait for a connection to be established (can be 0 for no imposed value)

idp.httpclient.socketTimeout

Duration

PT1M

Time to allow between packets on a connection (can be 0 for no imposed value)

NOTE: This is NOT an aggregate timeout on the whole request but merely between packets. There is no aggregate request timeout at present as the Apache library doesn’t support it.

idp.httpclient.maxConnectionsTotal

Integer

100

Caps the number of simultaneous connections created by the pooling connection manager

idp.httpclient.maxConnectionsPerRoute

Integer

100

Caps the number of simultaneous connections per route created by the pooling connection manager

idp.httpclient.memorycaching.maxCacheEntries

Integer

50

Size of the in-memory result cache

idp.httpclient.memorycaching.maxCacheEntrySize

Long

1048576 (1MB)

Largest size to allow for an in-memory cache entry

idp.httpclient.filecaching.maxCacheEntries

Integer

100

Size of the on-disk result cache

idp.httpclient.filecaching.maxCacheEntrySize

Long

10485760 (10MB)

Largest sze to allow for an on-disk cache entry

idp.httpclient.filecaching.cacheDirectory

Local directory

Location of on-disk cache

...