Forum - Leverage Data Management Web Services API to Export an IE

This topic contains 6 replies, has 4 voices, and was last updated by Anonymous 7 months ago.

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
  • #34447


    I am trying to bypass the UI and export an IE through the Data Management Web Services API call using the exportIE method. Below is the code I have so far and I am able to pass in the pdsHandle, pid, and path. What is highlighted in bold is where I’m stuck. I need to leverage this wsdl to connect to my drps-ua environment somehow, but am not quite sure. There is an example of a getSipStatusInfo in the SDK which uses the wsdl to pull back a status that I am trying to take from, again that is only an example. I have pasted it at the very bottom of this thread.

    My main goal is to have you help me make a web service call to our UA environment using this wsdl: http://l7654:1801/dpsws/repository/DataManagerServicesWS?wsdl

    In the code you will see right after I receive my pdsHandle is where I am needing to make the call to exportIE. We cannot seem to find the class in the sdk that corresponds with this method.

    package com.exlibris.rosetta;

    import com.exlibris.core.sdk.exceptions.UserAuthorizeException;
    import com.exlibris.repository.procauto.ExportEntityInfo;
    import java.lang.String;
    import com.exlibris.dps.sdk.pds.PdsClient;
    import com.exlibris.repository.procauto.TaskInfo;
    import org.springframework.beans.factory.annotation.Autowired;

    import javax.inject.Provider;

    public class MyIEExport {

    protected Provider<DataManagerServicePort> dmWS;

    private String path = null;
    private String pid = null;
    private String pdsHandle = null;
    private long processExectionID;

    public static void main(String args[]) throws UserAuthorizeException {

    final String WSDL_URL = “http://l7654:1801/dpsws/deposit/DepositWebServices?wsdl”;
    final String PDS_URL = “http://l7654:8991/pds”;

    String pdsHandle = null;
    String pid = “IE1113032”;
    final String path = “/Users/smurphy79”;

    String userName = “admin1”;
    String password = “a12345678A”;
    final String institution = “INS00”;

    try {
    PdsClient pds = PdsClient.getInstance();
    pds.init(PDS_URL, false);
    pdsHandle = pds.login(institution, userName, password);
    } catch (Exception e) {
    ExportEntityInfo eei = dmWS.get().exportIE(pdsHandle,pid,path);



    ***************** EXAMPLE BELOW OF getting a SIP STATUS back, this is similar to what I am trying to do ***********************

    package com.exlibris.dps.sdk.examples;


    import javax.xml.namespace.QName;

    import com.exlibris.dps.SipStatusInfo;
    import com.exlibris.dps.SipWebServices_Service;

    public class SipStatusTest {

    public static void main(String[] args) throws Exception {
    URL swsdlUrl = new URL(“http://localhost:1801/dpsws/repository/SipWebServices?wsdl”);
    SipStatusInfo sipStatus = new SipWebServices_Service(swsdlUrl,new QName(“”, “SipWebServices”)).getSipWebServicesPort().getSIPStatusInfo(“3”);



    I haven’t actually tried it yet, but wsimport should yield you these classes:


    and it looks like it will work in a very similar fashion to your SipWebServices_Service example… (Or am I missing something and merely restating the obvious)?



    Tested and found to work! Note the slight difference with no pds…

    import javax.xml.namespace.QName;

    import com.exlibris.dps.sdk.pds.HeaderHandlerResolver;
    import com.exlibris.dps.DataManagerServicesWS_Service;
    import com.exlibris.dps.DataManagerServicesWS;
    import com.exlibris.dps.ExportEntityInfo;

    public class RosettaExport {

    static final String usr = “xxx”;
    static final String pwd = “xxx”;
    static final String inst = “xxx”;

    static final String app = “http://rosetta_host:1801”;
    static final String dpsws = app + “/dpsws”;
    static final String DATAMANAGERSERVICES_WSDL_URL = dpsws
    + “/repository/DataManagerServicesWS?wsdl”;

    static final String path = “/operational_shared/staff_work_area/bill/export/ies/”;
    static final String ie = “IE583120”;

    * main
    public static void main ( String[] argv ) {

    org.apache.log4j.helpers.LogLog.setQuietMode ( false );
    try {
    DataManagerServicesWS_Service dataMgrWS_Service =
    new DataManagerServicesWS_Service (
    new QName(“”, “DataManagerServicesWS”)
    dataMgrWS_Service.setHandlerResolver (
    new HeaderHandlerResolver(usr,pwd,inst) );
    DataManagerServicesWS dataMgrWS =
    ExportEntityInfo eeInfo = dataMgrWS.exportIE ( null, ie, path );
    catch ( java.lang.Exception excp ) {


    Sorry, my formatting got borked — I don’t actually write code like that!



    Thanks a bunch for your reply. I’ll try things out as soon as I get a chance.

    Sure do appreciate the feedback!


    Hello all,

    sorry to revive this thread, but since I’m sitting on the same problem I thought is better than to create a new thread.
    I tried to implement the solution bill posted but could not get it to work with the current dps-sdk-5.3.0.

    The issue is that the class com.exlibris.dps.DataManagerServicesWS doesn’t have a method exportIE(…). There is another interface com.exlibris.digitool.repository.ifc.DataManagerServicesWS which does. However I haven’t managed to find an implementation for that.
    Am I missing something or is this feature no longer supported in the dps-sdk?

    Is there another way to export the IE out of Rosetta programatically?


    The best way I can think of is to create an export process (via the backoffice), and invoke it using runProcessOnPids.


Viewing 7 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic.