IBM Support

PH22498: JAX-PRC WEB SERVICE CLIENT CREATION FAILS IF AN HTTP REDIRECT SWITCHES PROTOCOL WHEN ACCESSING THE WSDL URL.

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Creation of a JAX-RPC client failed when the HTTP Request
    accessing the provider's WSDL was redirected with the
    redirected URL switching protocol from HTTP to HTTPS.
    
    A typical FFDC associated with the issue is shown below:
    
    Exception:javax.wsdl.WSDLException SourceId:com.ibm.ws.webservic
    es.multiprotocol.AgnosticServiceFactory.getDefinitionFromURL
    ProbeId:281 Reporter:com.ibm.ws.webservices.multiprotocol.Agnos
    ticServiceFactory@fd7a80f0
    javax.wsdl.WSDLException:
    WSDLException: faultCode=PARSER_ERROR: Problem parsing
    'http://***/***Web/services/******************?wsdl'.:
    org.xml.sax.SAXParseException: White spaces are required
    between publicId and systemId.
    at
    com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLReaderImpl.java:
    2337)
    at
    com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:241
    2)
    at
    com.ibm.ws.webservices.multiprotocol.AgnosticServiceFactory.getD
    efinitionFromURL(AgnosticServiceFactory.java:501)
    at
    com.ibm.ws.webservices.multiprotocol.AgnosticServiceFactory.crea
    teService(AgnosticServiceFactory.java:164)
    :
    Caused by:
    org.xml.sax.SAXParseException: White spaces are required
    between publicId and systemId.
    at
    org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
    at
    org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown
    Source)
    at com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLRead
    erImpl.java:2327)
    ... 53 mor
    ------------------
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  WebSphere Application Server users of       *
    *                  JAX-RPC or JAX-WS Web Services              *
    ****************************************************************
    * PROBLEM DESCRIPTION: javax.wsdl.WSDLException occurs         *
    *                      when accessing a Web Service            *
    *                      provider's WSDL that is redirected      *
    *                      across protocols                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When creating a Web Service client, the provider's WSDL is
    read.  If the provider's WSDL is accessed via the HTTP
    Protocol then a redirection may occur, instructing the client
    to access a different URL.  By default, this redirection will
    occur only if the protocol, for example HTTP or HTTPS, does
    not change.  If the redirected URL has a different protocol
    then the redirection fails.  This default behaviour comes from
    the use of the JRE's java.net.* classes themselves and is
    deliberate since switching protocols with no warning to the
    user could represent a security issue.
    

Problem conclusion

  • Retrieval of a Web Service provider's WSDL can be configured to
    automatically follow HTTP redirects that switch protocol to
    HTTPS by configuring the JVM system property
    com.ibm.wsdl.followRedirects to a value of true.  The default
    behaviour remains unchanged.
    
    The fix for this APAR is targeted for inclusion in fix packs
    8.5.5.18 and 9.0.5.5. For more information, see 'Recommended
    Updates for WebSphere Application Server':
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH22498

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-02-21

  • Closed date

    2020-06-05

  • Last modified date

    2020-06-05

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

[{"Line of Business":{"code":"LOB36","label":"IBM Automation"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"850"}]

Document Information

Modified date:
14 September 2020