2008.2 Webservice API

2008.2 Webservice API
We got the approval working via the Req Approval Webservice in 2008.2.  Othan this code, you need to add the user that is used in the call to Role of
‘WebServices Integrator’ in the Administration Module. This example uses SSO integration with the HTTP Header.

We migrated from 2006.0.2 to 2007.1.3 back in Feb. This required an interim upgrade to 2006.0.7, which you shouldn't have to do. Then, because of business needs, we went ahead and upgraded to 2008.2. The 2008.2 was much easier from a newScale perspective, though we also upgraded to Weblogic 10.3.
Feel free to shoot me an email for more details.
[email protected]

Similar Messages

  • XI 3.1 Webservices API: Read time out during getDocumentInformation()

    Hi,
    my client is moving vom BO 6.5 to BO XI 3.1. The client uses BO to create mass reports for indivual subscribers in a batch mode fashion. We are currently evaluating the Webservices API, dealing with Desktop Intelligence reports.
    I have implemented a load test prototype using the Webservices API with the help of the examples found here.
    Retrieving a single report works fine, but when I try to put some load on the server and request reports with several parallel threads, I get the "Read timeout error" when calling getDocumentInformation(repID, null, actions, null, boRetrieveData). The actions array just contains the FillPrompts instance.
    2008-12-05 11:05:07,448 INFO  (test-5    ) [HTTPSender                    ]   Unable to sendViaPost to url[http://bojv01:8080/dswsbobje/services/ReportEngine]
    java.net.SocketTimeoutException: Read timed out
         at java.net.SocketInputStream.socketRead0(Native Method)
         at java.net.SocketInputStream.read(SocketInputStream.java:129)
         at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
         at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
         at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:77)
         at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:105)
         at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1115)
         at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1373)
         at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1832)
         at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1590)
         at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:995)
         at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397)
         at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
         at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
         at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
         at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:520)
         at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:191)
         at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77)
         at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:327)
         at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:206)
         at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
         at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
         at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
         at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
         at com.businessobjects.dsws.reportengine.ReportEngine.getDocumentInformation(Unknown Source)
    BTW, the threads use different logins and in consequence different connections/sessions.
    The timeout occurs after 30secs, so simple reports with no prompts are created without error. Increasing the timeout on the connection as suggested in other postings did not help.
    I think the issue is related to Axis2. I don't know how to set the timeout on the Axis client via the BO API. Trying to recreate the client API from the WSDL did not work. Is there any example how to do this correctly? Having the source of the Axis client, one would have the chance to set the timeout on the client programmatically ...
    Any help would be greatly appreciated,
    con

    I found a workaround for the issue by patching and compiling the Axis2 kernel library. You need to download it form Apache, install Maven 2.0.7, set the default timeout in .../client/Options.java to a value that suits your needs (for me: 20min), and compile the whole thing using mvn clean install.
    But this is obviously not the solution one wants. So, is there anybody with a REAL answer to the problem?
    Regards,
    con

  • How to create a user in Opensso Identity Service Webservices api?

    Hi All,
    I am getting struck with the creation of user in OpenSSO through the webservices api they are providing.
    I used the following wsdl link to create the API's. http://localhost:8080/opensso/identityservices?WSDL
    Now my requirement is, i have to create a user profile through the program which has the api create(identity,admin) created by the WSDL link.
    Here identity is the com.sun.idsvcs.IdentityDetails and admin is the com.sun.idsvcs.Token. I want to append givenName,cn,sn,userPassword in that. But dont have any idea how to given these details in IdentityDetails. If anyone give any sample solution i can follow.
    Any Help Greatly Appreciated.
    Thanks in Advance.
    With Regards,
    Nithya.

    Hey, I've managed to implement OpenSSO user registration through SOAP.
    My code is:
    package ru.vostrets.service.implementation.helper.opensso;
    import ru.vostrets.model.person.Person;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    import ru.vostrets.dao.PropertiesDao;
    import ru.vostrets.exception.FatalError;
    import com.sun.identity.idsvcs.opensso.*;
    import java.util.HashMap;
    import java.util.Map;
    import org.slf4j.LoggerFactory;
    import org.slf4j.Logger;
    import ru.vostrets.exception.ConfigurationError;
    * @author Kuchumov Nikolay
    * email: [email protected]
    @Service
    public class OpenSsoPersonServiceHelper
         private enum AttributeName
              USER_NAME("uid"),
              PASS_WORD("userpassword"),
              GIVEN_NAME("givenname"),
              FAMILY_NAME("sn"),
              FULL_NAME("cn"),
              EMAIL("mail");
              private final String name;
              AttributeName(String name)
                   this.name = name;
              public String getName()
                   return name;
         private static final Logger LOG = LoggerFactory.getLogger(OpenSsoPersonServiceHelper.class);
         private PropertiesDao propertiesDao;
         public void create(Person person)
              try
                   IdentityServicesImplService service = new IdentityServicesImplService();
                   IdentityServicesImpl servicePort = service.getIdentityServicesImplPort();
                   java.util.List<java.lang.String> attributeNames = null;
                   Token subject = new Token();
                   subject.setId(request.getParameter("token"));
                   UserDetails results = servicePort.attributes(attributeNames, subject);
                   for (Attribute attribute : results.getAttributes())
                        LOG.info("************ Attribute: Name = " + attribute.getName() + ", Values = " + attribute.getValues());
                   LOG.info("Roles = " + results.getRoles());
                   IdentityDetails identity = newIdentity
                             person.getCredentials().getUserName(),
                             getAttributes(person)
                    * Creates an identity object with the specified attributes.
                    * @param admin Token identifying the administrator to be used to authorize
                    * the request.
                    * @param identity object containing the attributes of the object
                    * to be created.
                    * @throws NeedMoreCredentials when more credentials are required for
                    * authorization.
                    * @throws DuplicateObject if an object matching the name, type and
                    * realm already exists.
                    * @throws TokenExpired when subject's token has expired.
                    * @throws GeneralFailure on other errors.
                   servicePort.create
                             identity,
                             authenticateAdministrator()
              catch (DuplicateObject_Exception exception)
                   throw new UserAlreadyExistsError();
              catch (Exception exception)
                   //GeneralFailure_Exception
                   //NeedMoreCredentials_Exception
                   //TokenExpired_Exception
                   throw new FatalError(exception);
         private Token authenticateAdministrator()
              try
                   IdentityServicesImplService service = new IdentityServicesImplService();
                   IdentityServicesImpl servicePort = service.getIdentityServicesImplPort();
                   if (propertiesDao.get().getAuthentication().getOpenSso().getAdministrator().getUserName() == null
                             || propertiesDao.get().getAuthentication().getOpenSso().getAdministrator().getPassWord() == null)
                        throw new ConfigurationError("OpenSSO administration properties not initialized");
                    * Attempt to authenticate using simple user/password credentials.
                    * @param username Subject's user name.
                    * @param password Subject's password
                    * @param uri Subject's context such as module, organization, etc.
                    * @return Subject's token if authenticated.
                    * @throws UserNotFound if user not found.
                    * @throws InvalidPassword if password is invalid.
                    * @throws NeedMoreCredentials if additional credentials are needed for
                    * authentication.
                    * @throws InvalidCredentials if credentials are invalid.
                    * @throws GeneralFailure on other errors.
                   Token token = servicePort.authenticate
                             propertiesDao.get().getAuthentication().getOpenSso().getAdministrator().getUserName(),
                             propertiesDao.get().getAuthentication().getOpenSso().getAdministrator().getPassWord(),
                   LOG.info("******************************** Admin token: " + token.getId());
                   return token;
              catch (Exception exception)
                   throw new FatalError(exception);
              com.sun.identity.idsvcs.opensso.IdentityServicesImplService service = new com.sun.identity.idsvcs.opensso.IdentityServicesImplService();
              QName portQName = new QName("http://opensso.idsvcs.identity.sun.com/" , "IdentityServicesImplPort");
              String request = "<authenticate  xmlns=\"http://opensso.idsvcs.identity.sun.com/\"><username>ENTER VALUE</username><password>ENTER VALUE</password><uri>ENTER VALUE</uri></authenticate>";
              try
                   // Call Web Service Operation
                   Dispatch<Source> sourceDispatch = null;
                   sourceDispatch = service.createDispatch(portQName, Source.class, Service.Mode.PAYLOAD);
                   Source result = sourceDispatch.invoke(new StreamSource(new StringReader(request)));
              catch (Exception exception)
                   // TODO handle custom exceptions here
         private Attribute newAttribute(AttributeName name, Object value)
              Attribute attribute = new Attribute();
              attribute.setName(name.getName());
              attribute.getValues().add(value.toString());
              return attribute;
         private Map<AttributeName, Object> fillAttributes(Map<AttributeName, Object> attributes, Person person)
              attributes.put(AttributeName.USER_NAME, person.getCredentials().getUserName());
              attributes.put(AttributeName.PASS_WORD, person.getCredentials().getPassWord());
              attributes.put(AttributeName.GIVEN_NAME, person.getPersonal().getGivenName());
              attributes.put(AttributeName.FAMILY_NAME, person.getPersonal().getFamilyName());
              attributes.put(AttributeName.FULL_NAME, person);
              attributes.put(AttributeName.EMAIL, person.getContacts().getEmail());
              return attributes;
         private Map<AttributeName, Object> getAttributes(Person person)
              return fillAttributes(new HashMap<AttributeName, Object>(), person);
         private IdentityDetails newIdentity(Object name, Map<AttributeName, Object> attributes)
              IdentityDetails identity = new IdentityDetails();
              identity.setName(name.toString());
              return fillAttributes(identity, attributes);
         private IdentityDetails fillAttributes(IdentityDetails identity, Map<AttributeName, Object> rawAttributes)
              for (Map.Entry<AttributeName, Object> rawAttribute : rawAttributes.entrySet())
                   identity.getAttributes().add(
                             newAttribute(rawAttribute.getKey(), rawAttribute.getValue()));
              return identity;
         @Autowired
         public void setPropertiesDao(PropertiesDao propertiesDao)
              this.propertiesDao = propertiesDao;
    }

  • Error while invoking Webservice API ItemService_GetItemInformation

    The following error is encountered while invoking Webservice API "ItemService_GetItemInformation"
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <env:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <faultcode>wsse:InvalidSecurity</faultcode>
    <faultstring>Missing &lt;wsse:Security> in SOAP Header</faultstring>
    <faultactor/>
    </env:Fault>
    </env:Body>
    </env:Envelope>
    Same is repeated even after passing
    RESPONSIBILITY_NAME => Inventory
    RESPONSIBILITY_APPL_NAME => INV
    SECURITY_GROUP_NAME => Standard
    NLS_LANGUAGE => AMERICAN
    Any pointer for the root cause of this error & how to resolve this?
    Thanks In Advance!
    priyadarshi

    Hi ..
    The error meaning: you need input the user_name and password for the SOAPHeader

  • URL Escaping when calling Webservices API Changed?

    Hello,
    It seems that something has changed recently with the Adobe Connect Webservices API. In the past, when I would call 'principal-update' to create or update a user, I would sanitize all my strings using urlencode() in PHP, which takes any non-alphanumeric characters (or dashes and underscores) and "percent encodes" them. For example, a "@" character in an email address becomes "%40".
    This is important especially in the case that a string contains an ampersand (&) or question mark (?) since those characters are used to pass the parameters themselves in the URL string.
    This has always worked fine until I noticed a few days ago it was no longer working.
    If I attempt to create a user with an email address formatted with the "%40", Connect now comes back with an error message saying it wasn't formatted properly. Removing the encoding fixes the problem.
    However, this is NOT best practice. And especially for passwords, which could theoretically contain ampersands and question marks, you cannot simply pass the raw string in the URL as it will create a malformed URL.
    Has anyone noticed this, and does Adobe know about it? Seems like a major problem, and means I will have to prevent users from using these special characters in their passwords until this is fixed.
    -Jeff

    Jeff,
    Thanks for the posting. I suggest you should call this into Support as a bug. It's possible that they changed something that affected this without seeing the ramifications.

  • BPM 11g: JAVA API and Webservice API

    Who knows BPM 11g: JAVA API and Webservice API?
    Customer want to call BPM 11g between Heterogeneous systems, such .net framework. One way is use webservice API, I think, but where can find it? thank you

    When you create a BPM application in 11g, you're actually creating a SOA composite application with a BPMN component in the composite. From within the BPMN editor, you can specify the interface (parameters) of each start node in the process. If you select a start node, look at the implementation tab, you'll see a properties group that lets you define the interface one property at a time, or by selecting an interface from the catalog.
    By defining these properties you're also defining the shape of the Web Service interface that will automatically be created in the composite. If you switch to the composite view, you'll see your BPMN process with a wire to it from a Web Service that's generated from the interface defined in the BPMN editor. The naming convention is the BPMN process name with ".service" appended. When you deploy the BPMN process, the web service will also be deployed, since it's also part of the composite. From Enterprise Manager (EM) you can test the service and get the WSDL, which could be used by other applications (e.g. .NET) to start and interact with a process instance.
    This is one of the advantages of the 11g architecture. The composite exposes services to consumers/clients. The implementation could have been BPEL, BPMN, a Mediator, Java/EJBs, or any combination working together. To the consumer, it's just a web service.
    In case your next question was about security ... you won't see properties about security in the BPMN editor. You use Web Service Manager to apply security or other constraints to the web service endpoint.

  • What easy to use (MS or third party) tool can I use to create and host a webservice API on a SQL server database

    I'm looking for a (MS or third party) tool with which I can create, publish and host webservice API's on a custom SQL database. For example a API which presents all customers, or validates a user login.
    I prefer a tool that can be used without .NET programming skills, just using database scripts and queries.
    Could somebody suggest a tool for this?
    Many thank,
    Slowytech

    Use Visual Studio (Microsoft Visual Studio Express 2013 for Web ) and the WebAPI framework.  You can easily create REST endpoints for your data.  You can even
    use ODATA to enable RESTful queries over your data.
    See
    http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api
    David
    David http://blogs.msdn.com/b/dbrowne/

  • Error when calling getAllServerPools() using WebService API

    Hi,
    I try to get All the Server Pool created on my Oracle VM Manager with the WebService API, but i'm get an error.
    Here is the code (I used the wsimport to create proxy class Oracle VM 2.2.0):
    - 1.Get "AdminService Webservice" --> OK
    private AdminService_Service adminServiceService=null;
    private AdminService adminService=null;
    try
    this.adminServiceService=new AdminService_Service(new URL(url + WS.CONTEXT_PATH +WS.ADMINSERVICEWS),new QName(WS.QNAME, WS.ADMINSERVICE));
    catch (MalformedURLException e)
    // TODO Auto-generated catch block
    e.printStackTrace();
    this.adminService=this.adminServiceService.getAdminServiceSoapHttpPort();
    bindProvider = (BindingProvider) this.adminService;
    requestContext = bindProvider.getRequestContext();
    requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url + WS.CONTEXT_PATH +WS.ADMINSERVICEPORT);
    requestContext.put(BindingProvider.SESSION_MAINTAIN_PROPERTY, new Boolean(true));
    requestContext.put(BindingProvider.USERNAME_PROPERTY, userName);
    requestContext.put(BindingProvider.PASSWORD_PROPERTY, password);
    - 2. Login to OracleVM Manager with an administrator user account--> OK
    LoginElement loginElmnt=new LoginElement();
    loginElmnt.setAccountName(userName);
    loginElmnt.setPassword(encyptPassword(password));
    LoginResponseElement res=this.adminService.login(loginElmnt);
    String loginToken=res.getResult();
    --> Admin Session token: 510175389-1257996206446
    -3. Get the "ServerPoolService Webserice" --> OK
    private ServerPoolService serverPoolService=null;
    private ServerPoolService_Service serverPoolSrvService=null;
    try
    this.serverPoolSrvService=new ServerPoolService_Service(new URL(url + WS.CONTEXT_PATH +WS.SERVERPOOLSERVICEWS),new QName(WS.QNAME, WS.SERVERPOOLSERVICE));
    catch (MalformedURLException e)
    // TODO Auto-generated catch block
    e.printStackTrace();
    this.serverPoolService=this.serverPoolSrvService.getServerPoolServiceSoapHttpPort();
    bindProvider = (BindingProvider) this.serverPoolService;
    requestContext = bindProvider.getRequestContext();
    requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url + WS.CONTEXT_PATH +WS.SERVERPOOLSERVICEPORT);
    requestContext.put(BindingProvider.SESSION_MAINTAIN_PROPERTY, new Boolean(true));
    requestContext.put(BindingProvider.USERNAME_PROPERTY, userName);
    requestContext.put(BindingProvider.PASSWORD_PROPERTY, password);
    -4. Get the AllServerPool --> KO
    GetAllServerPoolsElement getAllServerPool=new GetAllServerPoolsElement();
    GetAllServerPoolsResponseElement getAllserverPoolResp=null;
    ServerPool serverPool=new ServerPool();
    List<ServerPool> serverPoolArr=new ArrayList<ServerPool>();
    i have the java.lang.NullPointerException when calling:
    getAllserverPoolResp=this.serverPoolService.getAllServerPools(getAllServerPool);
    What is the problem ?
    Thanks in advance,
    Christophe.

    just a silly bug....

  • Webservice API support in Tomcat 5.5

    Hi All
    Could you please let us know if Tomcat 5.5 or Tomcat 6 supports the Webservices API set or not.
    And From where I will get the API details ?
    Thanks
    Sam

    Tomcat does not support any web service API by itself.
    As the first response poster mentioned, you simply need to add in your desired web service package.
    Both Axis and Axis2 are quite easy to use - but just make sure you read the documentation carefully and completely!

  • Call Webservice/API during browser close event

    Hello,
    I am using JDEV 11g. My application catches the browser close event to call a return Task Flow.
    I am wondering if its possible to call a webservice/API during the same event.
    Thanks
    Padmapriya

    Probababy too late to ask .. did u manage to get this resolved.
    I am not able to call any server Listeners during browser close event ...
    Details here -Re: Calling an ActionListener on browser window close using JS event queuing

  • Info Needed On BAM Adapters /Webservice APIs

    Hi All,
    Can you please provide me links/documents about configuring BAM Adapters. Also information on BAM Webservice APIs will also be really helpful.
    Thanks,
    Angeline

    Look at the very end of this document:
    http://www.oracle.com/technology/products/integration/bam/10.1.3/htdocs/bam_1013_faq.html#WebServices
    It describes the following:
    BAM webservice inspection - To verify BAM webservices open:
    http://localhost/oraclebam/inspection.wsil.
    And then you can inspect individual data objects as per the WSDL described in this page. These individual end point WSIL gives the webservice end point for the individual BAM dataobjects.
    BAM data object operations - To describe BAM operations open: http://localhost/OracleBAM/Services/DataObject/DataObjectOperations.asmx?wsdl
    BAM data object layout (definitions) - To describe data object layout: http://localhost/OracleBAM/Services/DataObject/DataObjectDefinition.asmx?wsdl

  • Renaming OCS Folder using webservices API

    Hi,
    Will it be possible to rename OCS Folder using webservices API?..
    Thanks,

    This is resolved by using, FileManager.updateFolder()

  • Get chat transcript over the WebServices API for CCA?

    Hi
    When using the WebServices API against the CCA (Contact Center Anywhere) there is this method called:
    IInteractions.getHistory(String sessionId, String sInteractionId)
    where some sort of event history can be retrieved.
    But how can I find the actual chat messages for that interaction?
    Or are they only sent to the FTP server?
    Thanks
    Lucas

    http://[the URL of your server]/cca/doc/cca-api/
    Verify the CaSe of your URL an dport if you use something other than 80

  • OBIEE WebServices API

    Hi, can I create a report from the scratch using WebServices API ?
    where can find an example?
    Thanks

    Thanks, great documentation, but I can't see how can I create a report from the scratch... (I can see how to read web catalog, read metadata and retrieve report)
    I mean I'm looking for something to create a report step by step just like in answer, for example:
    Report rep = obj.CreateReport (MyReport);
    rep.addMetadataColumn (MySubjectArea, MyColumn);
    rep.addMetadataColumn (MySubjectArea, MyOtherColumn);
    rep.addFilter (MySubjectArea, MyColumn, MyCondition);
    rep.save ("MyReport");
    or something like this...
    I need to create a report dinamically from a java application ...
    Thanks in advance!!

  • Service Desk WebService API - IctTimestamp in UTC ?

    Hi all,
    ..I know this is quite specific, but maybe someone has come across it. In Solution Manager 7, SP24, we are implementing the WebSAervices API and in general it works ok.
    There is the field IctTimestamp, which according to the WhitePaper / Docs should be sent from external system in UTC format and so it is.
    But unfortunatly, Solution Manager doesn't convert this UTC time back to local time in the Service Desk, even though system timezone is set correct to UTC+4.
    So we receive the timestamp in UTC date fine, but it is not converted to local time as per system setup.
    Is anyone aware of this and how to address ? Sounds like a bug for me ?
    Thanks a lot,
    Frank

    Hi Frank
    I am trying to integrate the webservice using SAP PI and external ticket tool. Can you please explain your scenario how you are using the webservice in external tool. Is it using SAP PI ?. Please help

Maybe you are looking for

  • ERROR       partner 'localhost:sapgw00' not reached

    Hi, i have BI system with portal. when i am trying to connetct portal with url http://<hostnaem>/<ip>:<portnumber>/irj/portal ---it is displaying as 500 internel server error with java.lang.NullPointerException: null . i am keeping  here two logfiles

  • Mounting shares with nautilus

    When I was using Ubuntu a few months ago Nautilus automatically mounted shared folders. That was really convenient and I'm trying to figure out how to do this on Arch. My shared folder icon comes up but when I try to open it I get the error, Unable t

  • Tried to connect my macbook pro to an HD tv

    connected to the hd tv and saw only the desktop screen and nothing else... what to do?

  • Disco manage links between worksheets is doggin' me!

    Hey there. I have a workbook that has a column that's linked to another worksheet where the parameter is that number (ie: PO num from main worksheet calls to other worksheet that has a parameter for the PO num). It's seems to be completely flakey as

  • Custom sequences or functions with default parameters

    Hello! Using the Stimulus Profile Editor, I am finding that using a sequence within a sequence to be cumbersome.  This is because it requires you to declare in the main sequence, every parameter that the sub-sequence will use. I would like to have a