Skip to main content
ExLibris

Knowledge Assistant

BETA
 
  • Subscribe by RSS
  • Back
    Rosetta

     

    Ex Libris Knowledge Center
    1. Search site
      Go back to previous article
      1. Sign in
        • Sign in
        • Forgot password
    1. Home
    2. Rosetta
    3. Knowledge Articles
    4. SOAP web services after Rosetta 7.1 SP

    SOAP web services after Rosetta 7.1 SP

    1. Last updated
    2. Save as PDF
    3. Share
      1. Share
      2. Tweet
      3. Share
    1. Description
    2. Resolution
    3. Example
    • Product: Rosetta
    • Product Version: 7.1
    • Relevant for Installation Type: Local

     

    Description

    Rosetta 7.1 Service Pack comes with an update to Java 15 (OpenJDK). As part of this update Rosetta also got a new Apache CXF version.

    As a result, SOAP web services wsdl was modified.
    The following APIs are affected: ProducerWebServices, SipWebServices and DepositWebServices

    This may cause an external application SOAP interface to break.

    Resolution

    1. It is advised to test Rosetta 7.1 SP on Sandbox environment prior to Production.

    2. If existing SOAP API breaks, the application developer will have to rebuild the stub from the new wsdl.

    wsdl is available on your environment under dpsws path as: https://rosetta.exlibrisgroup.com/dpsws/

    3. consider new REST APIs - https://rosetta.exlibrisgroup.com/rest/

     

    Example

    In the affected *WebService interface class, change the name attribute of the @WebResult annotation to be camelCase:

    From

        @WebMethod

        @WebResult(name = "CreateContact", targetNamespace = "")

        @RequestWrapper(localName = "createContact", targetNamespace = "http://dps.exlibris.com/", className = "com.exlibris.dps.CreateContact")

        @ResponseWrapper(localName = "createContactResponse", targetNamespace = "http://dps.exlibris.com/", className = "com.exlibris.dps.CreateContactResponse")

        public String createContact(

            @WebParam(name = "arg0", targetNamespace = "")

            String arg0,

            @WebParam(name = "arg1", targetNamespace = "")

            String arg1);

     

    To

       @WebMethod

        @WebResult(name = "createContact", targetNamespace = "")

        @RequestWrapper(localName = "createContact", targetNamespace = "http://dps.exlibris.com/", className = "com.exlibris.dps.CreateContact")

        @ResponseWrapper(localName = "createContactResponse", targetNamespace = "http://dps.exlibris.com/", className = "com.exlibris.dps.CreateContactResponse")

        public String createContact(

            @WebParam(name = "arg0", targetNamespace = "")

            String arg0,

            @WebParam(name = "arg1", targetNamespace = "")

            String arg1);

     

    And in the corresponding *Response class, remove the XmlElement annotation line.(Or fix the name attribute to be camelCase also):

    @XmlAccessorType(XmlAccessType.FIELD)

    @XmlType(name = "createContactResponse", propOrder = {"createContact"})

    public class CreateContactResponse {

     

        @XmlElement(name = "CreateContact")

        protected String createContact;

     

        // Rest of code

     

    }

     


    • Article last edited: 22-Nov-2021

     

     

     


     

    View article in the Exlibris Knowledge Center
    1. Back to top
      • SOAP / API Update calling updateRepresentation
      • Solaris 11 env.:SP installation failed with wget error
    • Was this article helpful?

    Recommended articles

    1. Article type
      Topic
      Content Type
      Knowledge Article
      Language
      English
    2. Tags
      This page has no tags.
    1. © Copyright 2025 Ex Libris Knowledge Center
    2. Powered by CXone Expert ®
    • Term of Use
    • Privacy Policy
    • Contact Us
    2025 Ex Libris. All rights reserved