Skip to content

Runtime Considerations

Philip Helger edited this page Nov 12, 2024 · 3 revisions

phase4 is a Java library

Java versions

It is developed on Windows but works without (known) problems on Windows, Linux, Mac and AWS. For development I use the Eclipse Temurin Java version.

The minimum Java version is 11 but it is recommended to use at least Java 21 for performance reasons. See https://github.com/phax/phase4/discussions/132#discussioncomment-11224517 for the details on why Java 21 is recommended.

Proxy setup

The inbound proxy connection is usually best handled by a Reverse Proxy.

The outbound proxy connection requires customization in the way you call phase4. However, there are no predefined proxy configuration properties at the moment so you need to add them manually. See https://github.com/phax/phase4/issues/256 for the respective ticket requesting to add it.

Consider the following actions when setting the proxy server:

  • Sending AS4 messages
  • Performing SMP lookups
  • Download CRL (Certificate Revocation Lists)

An example snippet to set a proxy host to HttpClientSettings could look like that:

aHCS.setProxyHost (new HttpHost (AS4Configuration.getConfig ().getAsString ("http.proxy.host"),
                                 AS4Configuration.getConfig ().getAsInt ("http.proxy.port")));