Parameters of Collaboration Suite API Web Services

I wish to use the OCS API by invoking directly Web Services such as
FileManager.wsdl, UserManager.wsdl etc from BPEL process.
For example, when I use Java API I write
      NamedValue[] properties = RLM.login (username, password, null, null);but how can I pass those null's as parameters of Web Service when invoking
RemoteLoginManager.wsdl directly ?
Operation "login" requires 4 parameters:
<wsdl:message name="loginRequest">
  <wsdl:part name="username" type="soapenc:string" />
  <wsdl:part name="password" type="soapenc:string" />
  <wsdl:part name="options" type="impl:ArrayOfNamedValue" />
  <wsdl:part name="userAttributes" type="impl:ArrayOfAttributeRequest" />
</wsdl:message>When I assign only username and password (and do not assign other 2 parameters)
a runtime error occurs...
Another example.
When I want to create folder I write:
     NamedValue[] folderDef = newNamedValueArray (
     new Object[][]
          { Attributes.NAME,          folderName   },
          { Attributes.DESCRIPTION,     folderDesc   }
     Item folder = FM.createFolder (workspace.getId(), folderDef, null);But how can I pass that array of arrays "folderDef" as a Web Service parameter
when invoking FileManager.wsdl directly from BPEL process ?
Will you show me example, please ?
Message was edited by:
Z-User

I was also looking for something like this..I did not get any response.
Did you tried to add bpel:exec ? you can call OCS api in the java blockc within BPEL. I am using this and creating folder from BPEL.

Similar Messages

  • Dir API - Web services Time out

    Hi All,
    I am using Dir API web services to make some mass updates to Config objects. I have developed a client in Java and was able to access/edit the ID objects. The problem I am facing is since the number of objects in the change list is huge ( >1000),  the web services time out.
    I tried to set the time out parameter for the web service call using
    context.put(BindingProviderProperties.REQUEST_TIMEOUT, 600*1000);
    also,
    context.put("com.sun.xml.ws.connect.timeout", 600*1000);
    context.put("com.sun.xml.ws.request.timeout", 600*1000);
    None of them seem to have any impact.
    Any ideas what is the correct way to adjust this time out behaviour?
    Thanks
    Jai

    Hi RK,
    Thanks for that. I am not looking at changing the time outs at Server. I am just interested in changing the time outs for the request I make from the client. The point is I do not want to impact any other services running in the server.
    In WS Navigator, it seems possible to change the time out value using Invocation parameters. (Did not try this yet!!)
    So it must be possible to set the time out for the request from the client.
    Thanks
    Jai
    Edited by: Jaishankar on Aug 25, 2011 2:49 PM

  • Java Collaboration Suite API - Common Problems......and Solutions!

    , Hi all,
    I'd just like to share some of the issues I've come across in my first try at using the Java Collaboration Suite API (including the Accelerator Kit).
    In short,
    The Good: I've succeeded in getting a working application, and the code doesn't look half bad.
    The Bad: Man was it a pain to get to this point.
    Here are a few notes about what I've found, what can be improved by oracle, and hopefully it will help others.
    1. The initial setup went smoothly. I included the Jar's from the web kit, and was able to successfully connect using OCDConnectionFactory.CreateConnection. This first attempt didn't use the Accelerator Kit, as at the time I didn't even know it existed. As soon as I started to try any examples from Oracle, code snippets wouldn't even compile (usually due to FDKUtils and FDKSession) and I couldn't find out why. After exhaustive research, I found that the Accelerator Kit here (http://www.oracle.com/technology/products/cs/developer/contentservicesdev/contenservicesdevkit.html), but it is not a library in the lib. After even further research, I found a very interesting thing. If you click on the link I've shown, you will see 2 versions of the Accelerator Kit: The recent link just includes the kit as a bunch of classes. I found it kind of ugly to include those in my project. However, if you click on the older link you will find a jar called "content-ws-helper.jar". This is actually the Accelerator Kit in a JAR (yet without any documentation anywhere on this).
    2. When using the accelerator toolkit, the connection string you use to connect changes. It no longer should have "ws" at the end. Don't believe this is documented anywhere! So if your connection string is http://server:8888/content/ws it should be changed to http://server:8888/content/
    <strong>
    </strong>3. Most of the examples given are appreciated, but they are also impossible to read. Methods should not be hundreds of lines of code long! Here is a handy method that I seem to be using quite often (at least in my use cases).
    private Item getFolder(String path) throws OCSServiceException {
    try {
    FileManager fm = Managers.getFileManager(fdkSession);
    Item workspace = fm.resolvePath(path, null);
    CommonManager commonM = Managers.getCommonManager(fdkSession);
    workspace = commonM.getItem(workspace.getId(), attributeRequest);
    return workspace;
    } catch (Exception e) {
    LOGGER.error(e.getMessage(), e);
    throw new OCSServiceException("Exception getting folder");
    The key is the attributeRequest class variable. This is the object that changes depending on what properties I want to retreive regarding that folder. A commonly used one for getting categories is:
    attributeRequest = FdkUtils.newAttributeRequestArray(Attributes.CATEGORY_CONFIGURATION,
    FdkUtils.newAttributeRequestArray(Attributes.ATTRIBUTE_OVERRIDES,
    new AttributeRequest[]{
    FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDE_ATTRIBUTE),
    FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDE_DEFAULT),
    FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDE_CATEGORY_CLASS)
    By seperating this out, It gets rid of a ton of the speghetti like code that you see in most of the examples and on the forums.
    For example, this thread helped me in category updates for folders http://kr.forums.oracle.com/forums/thread.jspa?threadID=495959
    , but as the post at the bottom states, this should not be the difficult. My method, which performs a similar method, is as follows:
    public void updateFolderCategory(String path, String categoryName, String categoryAttributeName, Object value ) throws OCSServiceException {
    try {
    CategoryService cs = new CategoryServiceImpl();
    long categoryId = cs.getCustomCategory(categoryName).getId();
    long attributeId = cs.getCustomAttribute(categoryName, categoryAttributeName).getId();
    NamedValue[] attOverride = new NamedValue[]{
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_ATTRIBUTE, new Long(attributeId)),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_CATEGORY_CLASS, new Long(categoryId)),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_DEFAULT, value),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_REQUIRED, DEFAULT_REQUIRED),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_SETTABLE, DEFAULT_SETTABLE),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_PROMPT, DEFAULT_PROMPT),
    NamedValue[] categoryConfigurationAttributes = new NamedValue[]{
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE, attOverride)
    connect();
    Item folder = getFolder(path);
    Managers.getCategoryManager(fdkSession).setCategoryConfiguration(folder.getId(), categoryConfigurationAttributes);
    LOGGER.info("Updated folder category definition");
    } catch (Exception e) {
    LOGGER.error(e.getMessage(), e);
    throw new OCSServiceException("Exception updating category");
    } finally {
    disconnect();
    I hope this information helps someone, and I'd appreciate if anyone can also add input or critique my approach. I also hope that there is someone else out there who is still using the API and hasn't given up yet!

    I was also looking for something like this..I did not get any response.
    Did you tried to add bpel:exec ? you can call OCS api in the java blockc within BPEL. I am using this and creating folder from BPEL.

  • Anybody has experience calling ID API web service in Java

    Hello,
    as you know we can programmatically update ID objects by call ID APIs (web service). To do that you need to import the wsdl into a java project, generate web service client and call the client to update ID objects.
    I've tried this in NWDS CE version. However I got error when generating web service client from the wsdl of the ID web service. Only the BusinessComponentService passed the ws client genertion, the rest web services do not work.
    The error I got:
    IWAB0399E Error in generating Java from WSDL:  java.lang.NullPointerException
        java.lang.NullPointerException
        at org.apache.axis.wsdl.toJava.JavaInterfaceWriter.writeOperation(JavaInterfaceWriter.java:126)
    Anybody has experience with ID API?
    Thanks
    Jayson

    HI Jayson,
    you can also request the web service directly.
    For example, you could create a local xml file with the values you want to pass to the web service and configure a file 2 soap scenario within XI itself.
    You can create interfaces for each available web service.
    You could call this scenario "ID objects generator" or something and save the .tpz for the repository objects of this scenario, since you could reuse it in other projects.
    Other than that, in Teched '08, Bill Li showed a lot of proxies developed over Java to consume the ID API web services, and they all seemed to work ok. However I do think he used NW Developers Studio 7.0 (2004s), not CE.
    I'd raise an OSS msg with SAP in order to check the problem you're getting.
    Regards,
    Henrique.

  • Issue in creating sales order using process_header API (web service)

    Hi All,
    I am trying to create sales order header using web service call to OE_ORDER_PUB.Process_header API.
    When I pass the inputs and test the service,I get output with return_status='S'. But no record falls at the OE_ORDER_HEADER_ALL table.
    I cant identify where the problem is.Is there any commit missing? Pls help me resolve this issue.
    Thanks,
    Vinoth

    Hi All,
    I am trying to create sales order header using web service call to OE_ORDER_PUB.Process_header API.
    When I pass the inputs and test the service,I get output with return_status='S'. But no record falls at the OE_ORDER_HEADER_ALL table.
    I cant identify where the problem is.Is there any commit missing? Pls help me resolve this issue.
    Thanks,
    Vinoth

  • Parameters and database login with Web Services SDK

    I need to know how to do the two most common report tasks through the Web Services interface to Crystal Reports Server 2008:
    How do I get a list of a report's parameters and set the parameter's values?
    How do I set the database login information?
    I have considerable experience with writing custom web interfaces for Business Objects Enterprise with .NET, but now we're supposed to use web services instead of Enterprise services, especially when writing Windows forms apps. The official line is that writing thick client apps using Enterprise services is "possible but not supported." I can't seem to find the equivalent to the .Parameters property in Web Services.
    The tutorials for Web Services aren't much help. The BIPlatform examples show how to schedule a report without parameters and without setting the database login, but this isn't much help in the real world. The ReportEngine tutorial was apparently written by someone else, and is little or no help.
    This seems like such a simple question, but I have wasted an entire day and am no closer to the answer.

    I think the following resources will help:
    https://wiki.sdn.sap.com/wiki/display/BOBJ/GettingStartedwiththeWebServicesSDK
    http://help.sap.com/businessobject/product_guides/xir2PP/en/qaaws.pdf
    http://devlibrary.businessobjects.com/BusinessObjectsXIR2SP2/en/en/WS_SDK/wssdk_server/default.htm
    Also, see this forum thread:
    Web Services SDK secLDAP
    Ludek

  • XAMMP, APIs, WEB SERVICES, PROXY GENERATORS

    I have the following installed on my computer Dreamweaver CS4 localhost XAMPP with PHP5 & MYSQL I would like to use dreamweaver to connect to Web Service API's such as Google, Amazon etc. I would like to communicate to the API's with PHP5's SOAP. How do I configure the proxy generators in Dreamweaver? I have not got Coldfusion.

    Dreamweaver won't do it for you automatically. You need to write the code yourself. The Zend Framework makes it relatively easy to connect to a variety of services, such as Amazon. See: http://framework.zend.com/manual/en/zend.service.html. Requires a good understanding of PHP.

  • API/Web Service/CLI

    Does VIN have a CLI, Web Service or API to interact with, and schedule or automate tasks ?

    VIN does not have an officially supported API.
    But there are unofficial ways to interact with VIN, see William Lam blog post on the subject -
    http://www.virtuallyghetto.com/2012/11/extracting-information-from-vin-vsphere_6.html

  • Java API (web services) for  exportMetadata and importMetadata

    We ususally use WLST command : exportMetadata and importMetadata to export/import MDS. is there any corresponding web services or Java API avalaible for the similar purpose?
    Thanks

    Hi,
    U can expose a EJB or a java class as a webservice in webdynpro and u can use it in webdynpro directly and if u want to use it through Portal u need to create proxies and do it.
    U can go through this weblog which helps u in creating a Bean as a webservice.
    /people/sap.user72/blog/2005/09/15/creating-a-web-service-and-consuming-it-in-web-dynpro
      And u can expose the services created in XI also as webservices.
    Regards,
    Sirisha.

  • SAAJ API Web Services With Attachments

    I have developed a Web Service and it is running successfully. Now I want to pass attachments to it in the form of SOAP Messages (using SAAJ API). I saw several examples on the web of how to create a request with a SOAP Message and include attachments/body parts in it. But what I cannot understand is how to recieve this message in my web service. I came across an example which used a servlet to recieve the message but I cannot understand how a servlet can be fitted between the web service and the request. I am new to Web Services in Java and would appreciate any help. A detailed tutorial would be great as to how to implement SOAPMessages receiver. I am using Eclipse with Tomcat.

    hi berta,
    http://help.sap.com/saphelp_nw04/helpdata/en/5e/ea656273b74cf386a1f29fc55721fd/frameset.htm
    HTTP error 406 when consuming a Web Service with attachment
    let me know u need any further info
    bvr

  • Web Service exposing Java Collaborations vs designing with eInsight

    Hello
    I have relatively little experience in designing and implementing web services. We are now looking at implementing some minor services with JCAPS.
    I would like to have some input on above subject. what are the pros and cons using either of the strategies. Today we do not use eInsight.
    I have understood that you do not have access to the SOAP message when exposing a java collaboration as a web service. I can also understand some of the drawbacks if you develop a ws consumer and you want to manipulate the SOAP message. But if you develop a server service implementation, when do you need access to the SOAP message?
    Other issues that might arise:
    Security
    Distributed transactions
    Any references to best practice resources, biased towards JCAPS would be highly appreciated.
    TIA

    Hi again
    We are also interested in in using attachments in the SOAP message. I have googled a bit and from what I have found it seams that it is "not supported out of the box"
    Can anyone enlighten me in this area?
    A general comment, I find it very hard to get information from the documentation of JCAPS, maybe I have missed something so please direct me to the right source if you find my ?? to much "newbie like". Things like, specification of packages, classes, methods, parameters with data types, Exceptions etc where can I find it in JCAPS?
    As an example, The SAAJ package throws an exception in the log in 5.1.3, so it must be there. Where can I find information about that implementation in JCASP?
    TIA and Br,

  • PL/SQL Web Service.  Out Parameters are included in Request.

    I am using JDEVELOPER 11.1.1.3.0. I generated a web service from PL/SQL successfully.
    When the web service is generated and deployed (Deployed to the IntegratedWeblogicServer) it wants the output parameters to be included with the request.
    Here is an example of my wsdl.
    <wsdl:message name="AMP_WS_getCustomerDetails">
    <wsdl:part name="pGuid" type="xsd:string"/>
    <wsdl:part name="pCustName_out" type="xsd:string"/>
    <wsdl:part name="pCustomerId_out" type="xsd:decimal"/>
    <wsdl:part name="pStatus_out" type="xsd:decimal"/>
    <wsdl:part name="pMessage_out" type="xsd:string"/>
    </wsdl:message>
    <wsdl:message name="AMP_WS_getCustomerDetailsResponse">
    <wsdl:part name="pCustName_out" type="xsd:string"/>
    <wsdl:part name="pCustomerId_out" type="xsd:decimal"/>
    <wsdl:part name="pStatus_out" type="xsd:decimal"/>
    <wsdl:part name="pMessage_out" type="xsd:string"/>
    </wsdl:message>
    In the AMP_WS_getCustomerDetails I am not expecting pCustName_out, pCustomerId_out, pStatus_out, or pMessage_out to be included. They are out parameters in the pl/sql.
    Has anyone else run into this?
    Thanks for any help.

    Parameters relate to procedures. Web Services require XML messages.
    Where are the parameters coming from? You cannot pass a dynamic number of parameters into a procedure, but you can pass a structured type as a parameter which can contain multiple values, whether that is an array/collection type or an XML document itself.
    Just package up the values into the XML and pass it to the web service.
    If this doesn't answer your question, please post more information, with some example data and code. Read the FAQ: {message:id=9360002}

  • PL/SQL Web Service Optional Parameters

    I have created a PL/SQL web service and deployed successfully using Jdeveloper 10.1.3.5. The database is 9.2.0.8.
    When the web service request is made, all is well if all parameters are passed.
    I have been told that the request might come with some but not necessarily all of the parameters expected by the PL/SQL procedure.
    Is it possible when deploying through JDeveloper to indicate that all parameters might not be present?
    This is my first web service. Thanks in advance for your assistance.

    Parameters relate to procedures. Web Services require XML messages.
    Where are the parameters coming from? You cannot pass a dynamic number of parameters into a procedure, but you can pass a structured type as a parameter which can contain multiple values, whether that is an array/collection type or an XML document itself.
    Just package up the values into the XML and pass it to the web service.
    If this doesn't answer your question, please post more information, with some example data and code. Read the FAQ: {message:id=9360002}

  • Exposing a report as RESTful web service - Parameters

    Hi,
    I am creating a RESTful web service by exposing an apex report. It just works fine and it renders the data. However I want to have parameters and values in the web service URL so that the data can be filtered based on the parameter values?
    For example:
    http://127.0.0.1:8080/apex/apex_rest.getReport?app=100&page=15&reportid=rest_example renders correctly for the report query
    select * from (
    select
    "CUSTOMER_ID",
    "CUST_FIRST_NAME",
    "CUST_LAST_NAME",
    "CUST_STREET_ADDRESS1",
    "CUST_STREET_ADDRESS2",
    "CUST_CITY",
    "CUST_STATE",
    "CUST_POSTAL_CODE",
    "PHONE_NUMBER1",
    "PHONE_NUMBER2",
    "CREDIT_LIMIT",
    "CUST_EMAIL"
    from #OWNER#.DEMO_CUSTOMERS )
    where (
    instr(upper("CUST_FIRST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_FIRST_NAME"))) > 0  or
    instr(upper("CUST_LAST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_LAST_NAME"))) > 0
    )But I want to filter the result for a particular customer id by getting a value in the URL like this.
    http://127.0.0.1:8080/apex/apex_rest.getReport?app=100&page=15&reportid=rest_example&P15_CUSTOMER_ID=6 and to use the value received thro the URL in the report query
    select * from (
    select
    "CUSTOMER_ID",
    "CUST_FIRST_NAME",
    "CUST_LAST_NAME",
    "CUST_STREET_ADDRESS1",
    "CUST_STREET_ADDRESS2",
    "CUST_CITY",
    "CUST_STATE",
    "CUST_POSTAL_CODE",
    "PHONE_NUMBER1",
    "PHONE_NUMBER2",
    "CREDIT_LIMIT",
    "CUST_EMAIL"
    from #OWNER#.DEMO_CUSTOMERS
    where customer_id = :P15_CUSTOMER_ID)
    where (
    instr(upper("CUST_FIRST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_FIRST_NAME"))) > 0  or
    instr(upper("CUST_LAST_NAME"),upper(nvl(:P15_REPORT_SEARCH,"CUST_LAST_NAME"))) > 0
    )Is it possible to have it working in this way?
    I am currently testing this in apex 4.2 and Oracle 11g XE. My development environment will be Apex 4.1 and Oracle 11g.
    Thanks in Advance.
    Regards,
    Natarajan
    Edited by: Nattu on Dec 18, 2012 2:09 AM

    It does accept values for the parameters but does not accept value names in the URL.
    The previous thread Restful web service passing character parameters helped me to get it working.
    Thanks.

  • Oracle PL/SQL Web service - dynamic parameters... possible?

    Oracle 11.2.0.3 - newbie on web services!
    Currently we have a pl/sql web service taking in 2 static parameters and returning a varchar2 response.
    I was asked today if it's possible for a web service to take in a dynamic set of parameters and return a corresponding set of results. It's as if I need to pass the web service a table with two columns and return a table of one column.
    For example:
                        Input                          Output
              1 2                             3
              3 4                             7
              5 6                            11output being in XML of course. It is possible?
    p.s. I posted this in OC4J also - no response hence the re-post !

    Parameters relate to procedures. Web Services require XML messages.
    Where are the parameters coming from? You cannot pass a dynamic number of parameters into a procedure, but you can pass a structured type as a parameter which can contain multiple values, whether that is an array/collection type or an XML document itself.
    Just package up the values into the XML and pass it to the web service.
    If this doesn't answer your question, please post more information, with some example data and code. Read the FAQ: {message:id=9360002}

Maybe you are looking for