WebSphere Application Server & Liberty

WebSphere Application Server & Liberty

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

Java SOAP Signing Handler Works on Oracle JVM but Fails on WAS (IBM i) – Envelope Conflict

  • 1.  Java SOAP Signing Handler Works on Oracle JVM but Fails on WAS (IBM i) – Envelope Conflict

    Posted Wed September 17, 2025 03:00 AM

    Hello,

    We are integrating a new SOAP-based service that connects to eFace, the Spanish electronic invoicing platform.

    This service requires the SOAP messages to be self-signed within the communication process.
    To achieve this, we are using a custom SOAP Handler that signs the outgoing XML payload before transmission.

    The implementation works flawlessly in an Oracle Java environment; however, when deploying the same code in WebSphere Application Server (WAS) 9.0.15 on IBM Power i, we encounter issues related to library conflicts:

    com.sun.xml.messaging.saaj.soap.ver1_1.Envelope1_1Impl
    incompatible with
    com.ibm.ws.webservices.engine.xmlsoap.SOAPEnvelope


    We believe this is due to WAS using its own internal SOAP engine and classes, which are incompatible with the SAAJ implementation we rely on.

    Is there a supported way to prevent WAS from overriding our SOAP library stack, so that we can use the same portable Java codebase across both environments without modifying core logic?

    Any guidance on how to disable or isolate WAS's internal SOAP processing in favor of the standard Oracle stack would be greatly appreciated.

    Thank you.



    ------------------------------
    Jose Luis Nebril
    ------------------------------


  • 2.  RE: Java SOAP Signing Handler Works on Oracle JVM but Fails on WAS (IBM i) – Envelope Conflict

    Posted Wed September 17, 2025 11:01 AM
    Edited by THOMAS JOHNSON Wed September 17, 2025 11:00 AM

    If you're using low level SOAP APIs to do your XML Web Services, I'd recommend disabling the JAX-WS Engine in WAS. While these APIs, com.ibm.ws.webservices.engine.xmlsoap.*, aren't JAX-WS specific, I think even the class-loading section of the document should help sort the problem out for you.



    ------------------------------
    THOMAS JOHNSON
    ------------------------------