Compare the differences between Java 8 and Java 17 integration servers in IBM® App Connect Enterprise 13.0.7.0, including SOAP stack architecture, WS-Security,
WS-ReliableMessaging, and configuration approaches.
Overview
IBM App Connect Enterprise 13.0.7.0 introduces a new SOAP stack for Java 17
integration servers, replacing the WebSphere Application Server-based implementation used in Java 8.
This comparison helps you understand the key differences and plan your migration strategy.
General Java architecture comparison
| Component |
Java 8 |
Java 17 |
| XML Binding |
javax.xml (Java EE) |
jakarta.xml (Jakarta EE) |
| Classloading Architecture |
Standard classloading |
Dual stack classloading (can toggle between old and new stacks) |
| Build Requirements |
Can build with Java 8 |
Build JavaCompute nodes with Java 17 by default, can be changed in toolkit Build configuration for a Java project |
SOAP stack architecture comparison
| Component |
Java 8 (Old Stack) |
Java 17 (New Stack) |
| SOAP Engine |
WebSphere Application Server Axis2 |
Open Source Apache Axis2 |
| WS-Security Implementation |
WebSphere WS-Security with callbacks |
Apache Rampart with configuration |
| WS-ReliableMessaging Implementation |
WAS-packaged Apache Sandesha |
Open Source Apache Sandesha |
| WS-Trust Support |
Supported as a Security Provider outside the SOAP stack, resulting tokens read by SOAP stack from Properties folder |
WS-Security configuration comparison
| Aspect |
Java 8 |
Java 17 |
| Policy Set File |
.wssecpolicy.xml |
.wspolicy.xml (largely compatible format) |
| Policy Binding File |
.wssecbindings.xml |
.policyxml (WS-Security policy type) |
| Policy Editor |
Policy Set Wizard (full version) |
Simplified Policy Set Editor (focused view) |
| Binding Configuration |
Policy Set Wizard |
Standard Policy Editor with WS-Security policy type |
| Virtual Folder |
"WS Policy Sets and Bindings" |
"WS Policy" (separate folder) |
| SOAP Node Property |
Policy Set and Policy Set Bindings (can only be set in BAR file) |
WS-Security policy (can be set in node properties during development or in BAR file) |
| Certificate Selection for Signature Validation |
Explicit certificate alias can be specified |
Automatic selection based on certificate-id from inbound message |
| Key Selection for Decryption |
Explicit key alias can be specified |
Automatic selection based on certificate-id from inbound message |
| Multiple Keys/Certificates |
Different keys/certificates can be used for different message parts |
Only a single key/certificate may be used (although signing/encryption of different parts is
supported) |
| Asymmetric Encryption |
Can be configured on just Inbound or Outbound parts |
Must be performed on both Inbound and Outbound parts |
| SAML Token Support |
Supported (propagation and authentication) |
Not currently supported |
| Kerberos Token Support |
Authentication, signing and encryption supported by runtime |
Not currently supported |
| LTPA Token Support |
Supported (WebSphere family native) |
Not supported (not available in newer framework) |
| UserNameToken Support |
Supported |
Supported |
| Message Signing |
Supported |
Supported |
| Message Encryption |
Supported |
Supported |
| Timestamp Validation |
Supported |
Supported |
WS-ReliableMessaging configuration comparison
| Aspect |
Java 8 |
Java 17 |
| Policy Set Required |
Yes (.wssecpolicy.xml) |
No |
| Policy Binding Required |
Yes (.wssecbindings.xml) |
No |
| Basic Configuration |
Complex configuration through Policy Set Wizard |
Simple boolean property: Use WS-ReliableMessaging |
| Advanced Configuration |
Through policy sets and bindings |
Optional WS-ReliableMessaging policy (.policyxml) |
| Delivery Assurance |
AtMostOnce, AtLeastOnce, ExactlyOnce, InOrder |
AtMostOnce, AtLeastOnce, ExactlyOnce, InOrder |
| Sequence Management |
Automatic |
Automatic |
| Acknowledgments |
Automatic |
Automatic |
| Retransmission |
Configurable |
Configurable |
Toolkit comparison
| Feature |
Java 8 Toolkit |
Java 17 Toolkit |
| Policy Set Editor |
Full wizard with Add/Delete buttons, tree navigation |
Simplified editor (no Add/Delete, focused view, auto-expand to Authentication Tokens) |
| File Organization |
Single "WS Policy Sets and Bindings" virtual folder |
Separate "WS Policy" virtual folder for .wspolicy.xml files |
| Policy Creation |
Create policy set + binding together in wizard |
Create WS-Security policy in Policy Editor, then configure/browse to policy set |
| Node Configuration |
Selection of policy set and bindings only in bar file editor |
Select WS-Security policy from WS Extensions tab |
Feature support comparison
| Feature |
Java 8 |
Java 17 |
| SOAP Services |
✓ Supported |
✓ Supported |
| WS-ReliableMessaging |
✓ Supported |
✓ Supported |
| WS-Trust |
✓ Supported |
✓ Supported |
| Global Cache |
✓ Supported |
✓ Supported |
| CORBARequest Node |
✓ Supported |
✗ Not Supported |
| WSRR Nodes |
✓ Supported |
✗ Not Supported |
| SAML Tokens |
✓ Supported |
✗ Not currently supported |
| Kerberos Tokens |
✓ Supported |
✗ Not currently supported |
| LTPA Tokens |
✓ Supported |
✗ Not Supported |
Performance and resource usage
| Aspect |
Java 8 |
Java 17 |
| JVM Version |
Java 8 (1.8.x) |
Java 17 (17.x) |
| Garbage Collection |
Parallel GC (default) |
G1GC (default), improved performance |
| Memory Management |
Traditional heap management |
Improved memory management with better GC algorithms |
| Startup Time |
Baseline |
Comparable or slightly faster |
| Throughput |
Baseline |
Comparable or improved (depends on workload) |
| Latency |
Baseline |
Comparable or improved (especially with G1GC) |