You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+27-8Lines changed: 27 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,9 +15,10 @@ and building it yourself, you can use the `RUNME.sh` script. It uses gradle as t
15
15
push compiled jars to either a local repository (typically under `$HOME/.m2`) or to Maven Central.
16
16
When signing/authentication of modules is required, use the `gradle.properties.template` file as a starter for your own `gradle.properties`.
17
17
18
-
Java 17 is required as the compiler level when building this package, as that is the baseline for Spring 3.
18
+
Java 17 is required as the compiler level when building this package, as that is the baseline for Spring 3. Compiler directives are used to build
19
+
the Spring 2 version as compatible with the older Java 8 runtime.
19
20
20
-
The script builds modules for both the JMS2 and JMS3 standards. The JMS3 (Jakarta) variant does not have a separate source tree in this repository. Instead, the source is generated automatically during the build process, by simply changing package names in the JMS2 code. The created jar files have the same names, but different version numbers.
21
+
The script builds modules for both the JMS2 and JMS3 standards. The JMS3 (Jakarta) variant is the primary source. The older JMS2 version does not have a separate source tree in this repository. Instead, the source is generated automatically during the build process, by simply changing package names in the JMS3 code. The created jar files have the same names, but different version numbers.
21
22
22
23
### Spring Boot Applications
23
24
@@ -67,8 +68,10 @@ IBM MQ for Developers container which runs the server processes.
67
68
The default options have been selected to match the
68
69
[MQ container](https://github.com/ibm-messaging/mq-container) development configuration.
69
70
70
-
This means that you can run a queue manager using that environment and connect to it. This script
71
-
will run the container on a Linux system.
71
+
This means that you can run a queue manager using that environment and connect to it without special
72
+
configuration.
73
+
74
+
This script will run the container on a Linux system.
72
75
73
76
docker run --env LICENSE=accept --env MQ_QMGR_NAME=QM1 \
74
77
--publish 1414:1414 \
@@ -193,7 +196,23 @@ and
193
196
| ibm.mq.jks.keyStore | Where is the keystore with a personal key and certificate |
194
197
| ibm.mq.jks.keyStorePassword | Password for the keyStore |
195
198
196
-
These JKS options are an alternative to setting the `javax.net.ssl` system properties.
199
+
These JKS options are an alternative to setting the `javax.net.ssl` system properties, usually done on the command line.
200
+
201
+
An alternative preferred approach is
202
+
available from Spring 3.1, which introduced the concept of "SSL Bundles". This makes it possible to have different
203
+
SSL configurations - keystores, truststores etc - for different components executing in the same Spring-managed process.
204
+
See [here](https://spring.io/blog/2023/06/07/securing-spring-boot-applications-with-ssl)
205
+
for a description of the options available. Each bundle has an identifier with the `spring.ssl.bundle.jks.<key>` tree of options.
206
+
The key can be specified for this package with `ibm.mq.sslBundle` which will then use the Spring elements to create the
207
+
connection configuration. The default value for this key is empty, meaning that `SSLBundles` will not be used; the global
0 commit comments