API and WebServices

What is WebServices and API in MDM? How both are linked to each other when you are doing ABAP API in the real time scenarios?
Thanks in Advance,
Best Regards,
Vijay

Hi,
Web services for MDM are open interfaces to the MDM Server. They provide data management capabilities (create, read, update) and access to central key mapping (create, read). MDM Web Services provide synchronous access to MDM for the consumer of the Web services.
The MDM Web services can be used to:
●  Manage Master Data Objects
○  Existence check of a central master object before local creation
○ Retrieve details and create a local replicate
○ Create or update master data objects on MDM
● Manage Unique Identifiers of Master Data Objects
○ Remote system registers local object as replicate of global object
○ Key mapping during message exchange on SAP NetWeaver XI
Also MDM Web services provides the following Web service categories:
●  Key Mapping Web services
To create and retrieve key mapping information for MDM records
● CRUD (Create, Retrieve and Update; Delete not yet provided) Web services
It exposes MDM's rich functionality in searching for records and maintaining data in records (for example, main table, lookups, qualifiers).Another category of Web services, developed to support MDM Customer Data Integration (CDI), is the Business Partner (BP) CRUD Web services. In contrast to MDM CRUD Web services that are schema-independent, the BP Web services are hard-wired to MDM’s Business Partner repository/schema. Schema changes require the adaptation of the interface and of the code of the BP Web services.
API
The MDM ABAP API provides an interface for accessing SAP MDM 5.5 using ABAP. The interface is easy to configure and convenient to use.It is optimized for ABAP developers and available using ABAP Objects and function modules (partly remote enabled). In addition to the core services performed on the records (create, retrieve, update, delete, query, etc), metadata (tables, fields, etc.) and administrative functions (such as repository) are delivered.
The MDM ABAP API empowers ABAP-based applications to control MDM Servers using most of the functions available in the MDM Console and MDM Data Manager applications.
The API is provided with:
● Interfaces and methods (ABAP objects)
●  Function groups and function modules
The interfaces with the extension SIMPLE have the following advantages:
● Simple and comfortable access
● Generic and object-oriented
● Methods use DDIC structures (no arrays, but tables and fields)
Regards
Nisha

Similar Messages

  • 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.

  • Webservices APIs and approaches options

    Hi all,
    I am in 3 weeks "trip" trying to access( via ssl) a simple webservice thats return a string and do not receive any parameters.
    I would like to understand what apis ( and to do what) are available in the webservices world .
    I am trying to use AXIS2, but it is not clear for me if it is really for production. And the number of unanwsered messages in the users list do not motive a lot.
    I would like to know all available options.
    If you can send to me links, tutorials.. examples.. so... anything to clarify ...
    thanks a lot

    Try using JAX-WS http://jax-ws.dev.java.net. Make sure to reference the forum: http://forums.java.net/jive/forum.jspa?forumID=46. and look for threads on how to do an ssl request.

  • Api in Webservices

    Hi
    In my work place we are using webservices to submit the report execution .
    But is there any api in webservices to cancel the submitted job in the middle of the execution .
    Can any one please let me know the procedure for that.
    Thanks in Advance
    Have a NIce day

    I'm still having difficulty with this, and any help would be appreciated!
    I am getting this error:
    com.bea.dsp.das.exception.DASException: com.bea.dsp.das.ws.WSClientException: Failed to encode function arguments to SOAPMessage
    I have attached all the relevant files. Here are the key methods in the client code:
    public List<Case> loadByCustomer(String customerId) throws Exception {
    HelperContext helper = getCasesService().getHelperContext();
    DataFactory factory = helper.getDataFactory();
    // create the object
    GetCasesRequest request = (GetCasesRequest) factory.create("http://idexx.com/ccs/casemanagement/api", "GetCasesRequest");
    // don't know why we need this, or if we do, but the examples do this
    SDOUtil.setElementName(request, "http://idexx.com/ccs/casemanagement/api", "GetCasesRequest");
    request.setCustomerId(new BigInteger(customerId));
    return retrieveCases(request);
    public List<Case> retrieveCases(GetCasesRequest request) {
    ArrayList<Case> result = new ArrayList<Case>();
    CasesResponse cases = null;
    try {
    // use the CasesSDO to actually fetch the matching cases
    DASResult<CasesResponse> response = getCasesService().getCases(request);
    if (response.hasNext()) {
    cases = response.next();
    catch (Throwable e) {
    logger.error("failed to retrieve domain values", e);
    // convert the SDOs into business model objects and return
    List<com.idexx.ccs.casemanagement.Case> dbCases = (List<com.idexx.ccs.casemanagement.Case>) cases.getCase();
    for (com.idexx.ccs.casemanagement.Case dbCase : dbCases) {
    Case tmp = new Case(dbCase);
    result.add(tmp);
    return result;
    }

  • Exposing OIM APIs as webservice

    Hi,
    I wanted to know if i can expose OIM APIs as webservice?
    As per my reqmnt, i need to implement forgot password and change password functionality for OIM users from a portal application.
    So wanted to know if I can use OIM APIs say getChallengeValuesForSelf , compareChallengeValuesForSelf, changePasswordForSelf and then expose them as webservice?

    Can I do this...
    Create a WebService using NetBeans Editor...
    In it add a web method, which basically is using OIM API say getChallengeValuesForUser to fetch some value and then returning it as output of this web method?
    I'll be setting all the system properties required for calling OIM API here itself and also would make the connection to OIM here.
    I tried doing so, but getting an exception while I try to deploy the webservice,
    com.sun.xml.ws.model.RuntimeModelerException: The web service defined by the class weblogic.wsee.async.AsyncResponseBeanSoap12 does not contain any valid WebMethods.
    Kindly suggest.

  • Fetching all mails in Inbox from Exchange Web Services Managed API and storing them as a .eml files

    I want to fetch all mails in the Inbox folder using EWS Managed API and store them as .eml.
    I can store file once I get the file content as a byte[] will
    not be difficult, as I can do:
    File.WriteAllBytes("c:\\mails\\"+mail.Subject+".eml",content);
    The problem will be to fetch (1) all mails with (2)
    all headers (like from, to, subject) (I am keeping information of those values of from, to and
    other properties somewhere else, so I need them too) and (3)byte[]
    EmailMessage.MimeContent.Content. Actually I am lacking understanding of
    Microsoft.Exchange.WebServices.Data.ItemView,
    Microsoft.Exchange.WebServices.Data.BasePropertySet and
    Microsoft.Exchange.WebServices.Data.ItemSchema
    thats why I am finding it difficult.
    My primary code is:
    When I create PropertySet as
    follows:
    PropertySet properties = new PropertySet(BasePropertySet.FirstClassProperties, ItemSchema.MimeContent);
    I get following exception:
    The property MimeContent can't be used in FindItem requests.
    I dont understand
    (Q1) What these ItemSchema and BasePropertySet are
    (Q2) And how we are supposed to use them
    So I removed ItemSchema.MimeContent:
    PropertySet properties = new PropertySet(BasePropertySet.FirstClassProperties);
    I wrote simple following code to get all mails in inbox:
    ItemView view = new ItemView(50);
    view.PropertySet = properties;
    FindItemsResults<Item> findResults;
    List<EmailMessage> emails = new List<EmailMessage>();
    do
    findResults = service.FindItems(WellKnownFolderName.Inbox, view);
    foreach (var item in findResults.Items)
    emails.Add((EmailMessage)item);
    Console.WriteLine("Loop");
    view.Offset = 50;
    while (findResults.MoreAvailable);
    Above I kept page size of ItemView to
    50, to retrieve no more than 50 mails at a time, and then offsetting it by 50 to get next 50 mails if there are any. However it goes in infinite loop and continuously prints Loop on
    console. So I must be understanding pagesize and offset wrong.
    I want to understand
    (Q3) what pagesize, offset and offsetbasepoint in ItemView constructor
    means
    (Q4) how they behave and
    (Q5) how to use them to retrieve all mails in the inbox
    I didnt found any article online nicely explaining these but just giving code samples. Will appreciate question-wise explanation despite it may turn long.

    1) With FindItems it will only return a subset of Item properties see
    http://msdn.microsoft.com/en-us/library/bb508824(v=exchg.80).aspx for a list and explanation. To get the mime content you need to use a GetItem (or Load) I would suggest you read
    http://blogs.msdn.com/b/exchangedev/archive/2010/03/16/loading-properties-for-multiple-items-with-one-call-to-exchange-web-services.aspx which also covers of paging as well.
    3) offset is from the base your setting the offset to 50 each time which means your only going to get the 50 items from the offset of 50 which just creates an infinite loop. You should use
    view.Offset
    = +50;
    to increment the Offset although it safer to use
    view.Offset  += findResults.Items.Count;
    which increments the offset based on the result of the last FindItems operation.
    5) try something like
    ItemView iv = new ItemView(100, 0);
    FindItemsResults<Item> firesults = null;
    PropertySet psPropSet = new PropertySet(BasePropertySet.IdOnly);
    iv.PropertySet = psPropSet;
    PropertySet itItemPropSet = new PropertySet(BasePropertySet.IdOnly) { ItemSchema.MimeContent, ItemSchema.Subject, EmailMessageSchema.From };
    do
    firesults = service.FindItems(WellKnownFolderName.Inbox, iv);
    service.LoadPropertiesForItems(firesults.Items, itItemPropSet);
    foreach(Item itItem in firesults){
    Object MimeContent = null;
    if(itItem.TryGetProperty(ItemSchema.MimeContent,out MimeContent)){
    Console.WriteLine("Processing : " + itItem.Subject);
    iv.Offset += firesults.Items.Count;
    } while (firesults.MoreAvailable);
    Cheers
    Glen
    .Offset += fiFitems.Items.Count;

  • Error while enabling dimension for OLAP API and BI Beans

    Hi, I've created some dimensions in OLAP Catalog using CWM2 packages. These dimensions have only one hierarchy and one or two levels.
    I also have an Analytic Workspace, and I've created these dimensions in this A.W. using CREATE_AWDIMENSION method from DBMS_AWM package.
    Everything ok at this point.
    Next, I've tried to enable these aw dimensions for the OLAP Api and BI Beans, using CREATE_AWDIMENSION_ACCESS_FULL/CREATE_AWDIMENSION_access methods from DBMS_AWM. Strangely, dimensions whith two levels are enabled ok, but dimensions with only one level can't be enabled. If I use CREATE_AWDIMENSION_ACCESS and I execute generated script, an error appears when trying VALIDATE_DIMENSION, with a text like this:
    .ENTITY TYPE ENTITY NAME STATUS COMMENT
    . Dimension AW1.DIM1      INVALID ERROR: Component entity.
    - Default Display Hierarchy: "J0".
    . Hierarchy J0 INVALID ERROR: Hierarchy Top Level not found.
    My database ir 9.2.0.6. What is failing ? Some idea ? Thanks by your help.

    Not sure if it's valid to have a dimension with 1 hierarchy and 1 level in that hierarchy. The hierarchy may have to have at least 2 levels. If you want the configuration of a dimension with 1 hierarchy and 1 level, CWM2 may want you to omit the hierarchy, thus creating the dimension with only 1 level.

  • Directory structure for servlets and webservices in one application

    hi,
    Can any one help me for creating servlets and webservices in one
    application and deploying in Jboss 4.2.0.
    I want to know exactly what is the directory structure for creating this
    application and what are the additional .xml files for deploying this application.
    if any one know this answere please tell the answere.

    I figured out a solution - it's a problem of policies. In detail: Server1's codebase entry (file:) refers to the class directory of Server1's project. In the simple case of only Client1, which has no codebase entry, it works fine without a file permission on the side of Server1. In the complex case of Client1+Server2, which has to have a codebase entry (file:) refering to the class directory of the Server2's project on a separate machine, for exactly the same method call from Client1 to Server1 a file permission entry on the side of Server1 is needed for Server1's class directory. But WHY ???
    It seems to be a little confusing with the codebase entries, many of the posts are contrary to others and to my personal experiences. Some comments given by Adrian Colley throw a little light upon some aspects. Is there anybody, who can explain the whole topic, when, why, and which part of RMI application deals with codebase entries, also in case of not dynamic code downloading ? May be there is also a reference into the java docs, which I didn't found up to now.
    Thanks in advance
    Axel

  • JAVA API AND ABAP API SIMPLE SCENARIO

    Hello MDM gurus
    I have never used any Java API or ABAP API to leverage and present MDM functionalities on front end systems like portal,etc...
    Could you please give me all the required to play around with JAVA api and ABAP api's.
    Points will be given to every valuable answer.
    Thanks

    Hi Nazeer,
    In order to use Portal you need Java APIs and to start with refer the MDM Java docs to get the basic idea of various classes and methods to be used in developing the simple java application and access it using portal.
    http://help.sap.com/saphelp_mdm550/helpdata/en/47/9f23e5cf9e3c5ce10000000a421937/frameset.htm
    Sample code for Duplicating Repository
    public class TestDuplicateRepository
               public static ConnectionPool simpleConnection;
               public static RepositoryIdentifier repIdentifier,repIdentifier1;
         public static String session;
         public static String connection = "MDMServer_Test";
         public static String repository1 = "Test_Repository";
         public static String repository2 = "Test_Duplicate";
              public static DBMSType dbmsType = DBMSType.MS_SQL;
         public static void main(String[] args)throws CommandException, ConnectionException
                   //Creating Connection.
                   simpleConnection = ConnectionPoolFactory.getInstance(connection);     
                   //Establishing connection with Repository.
                   repIdentifier = new RepositoryIdentifier(repository1, connection, dbmsType);
                   repIdentifier1 = new RepositoryIdentifier(repository2, connection, dbmsType);
                   //Creation Sever Session.
                   CreateServerSessionCommand createServerSessionCmd = new CreateServerSessionCommand(simpleConnection);
                   createServerSessionCmd.execute();
                   session = createServerSessionCmd.getSession();
                   //Authenticating Server Session.                    
                   AuthenticateServerSessionCommand auth= new AuthenticateServerSessionCommand(simpleConnection);
                   auth.setSession(session);
                   auth.setUserName("Admin");
                   auth.setUserPassword("Admin");
                   auth.execute();
                   session = auth.getSession();     
                   //Duplicate Repository Command
                   DuplicateRepositoryCommand duplRepCmd = new DuplicateRepositoryCommand(simpleConnection);
                   duplRepCmd.setDBMSUserName("sa");
                   duplRepCmd.setDBMSUserPassword("abc");
                   duplRepCmd.setSession(session);
                   duplRepCmd.setSourceRepositoryIdentifier(repIdentifier);
                   duplRepCmd.setTargetRepositoryIdentifier(repIdentifier1);
                   duplRepCmd.execute();
    Similarly you can try with Getting server version, Archive repository and then move on to adding,modifying records etc.
    For ABAP APIs refer the below link
    http://help.sap.com/saphelp_mdm550/helpdata/en/44/93aa6e31381053e10000000a422035/frameset.htm
    Regards,
    Jitesh Talreja

  • Making a call over HTTPS with LoadVars, XML.load(), and WebService - Yes or No?

    Hello, do LoadVars, XML.load(), or WebService support HTTPS-based endpoints, Yes or No?
    BACKGROUND
    ============
    I've been trying to get a LoadVars to actually make a call to an HTTPS endpoint. There is nothing in the documentation that says it can't. I know that there's also XML.load() and WebService class, but from the looks of it they don't do HTTPS.
    During my tests I have absolutely no issues with making calls to the same service over HTTP. When I change it to HTTPS I don't see HTTPStatus or even failures. Also, netstat on my server will show a connection being established with the endpoint when using HTTP but not when using HTTPS. I've also tried setting SSLVerifyCertificate to "false" in my Server.xml and after a restart of AMS it doesn't help, same symptom.
    I've also googled and looked through all Adobe forum posts that I can find:
    https://forums.adobe.com/message/4938426#4938426
    https://forums.adobe.com/thread/1661461
    https://forums.adobe.com/thread/782037
    https://forums.adobe.com/message/74981
    https://forums.adobe.com/message/5107735#5107735
    https://forums.adobe.com/message/7815#7815
    https://forums.adobe.com/message/53870#53870
    https://forums.adobe.com/message/87797#87797
    WebService Class - http://stackoverflow.com/questions/5619776/webservice-and-fms
    The best I found from the posts above is a non-commital answer from adobe staff at https://forums.adobe.com/message/4938426#4938426 and a 3rd party person saying that Webservice doesn't work at http://stackoverflow.com/questions/5619776/webservice-and-fms.
    All I need is an official supported/not-supported from the Adobe staff. Shouldn't be to hard after 5 years or so of ignoring the questions in the forum right?

    Adobe, please provide some details to your current and possibly potential customers, in at least one of the many unanswered posts about making HTTPS requests from AMS.
    P.S.
    realeyes_jun,
    RealEyes Media has been an inspiration to me for many years, and I would like to thank them for their efforts to better the media streaming community.
    Also, would it be possible to please release the source to REDbug?

  • BPM and Webservices

    I'm new in using of BPM and Webservices
    Netweaver version  is  CE 7.2 SPS03
    I use Web dynpro to write a ap to trigger web service for start BPM process.  
    It took about 40 sec for waiting response when i trigger the synchronous web service.
    And i get a exception  "DEFAULT_WS_METADATA_DEST. The server response timed out"
    But  i check my process status, it is running ok.
    When I tested for asynchronous web service ,I get quick response for it
    Does this version only support asynchronous web service?
    Do I need another configuration to use synchronous web service?

    Hi
    For process start you need a asynchronus web service (no output / response).
    Also, you can use a synchronus one if you are aware of this: If you use a synchron web service, you have to model a parallel split at the beginning of the process and finishing one of both tokens directly. This way, a response is generated when the first token hits the end event and the rest of the process is handled asynchronus.

  • Java IDE (JBuilder) cannot find J2ME's API and packages

    Hi,
    could anyone help me with this?
    I went to sun's java web site, and I downloaded and install the latest version of the wireless toolkit. I need to create a windows application that can send/receive MMS messenges, and hence the need for the J2ME's API and also WMA's API.
    However, even after I installed the wireless toolkit, my Java IDE (JBuilder 2005) cannot detect any packages like "javax.microedition.*" or "javax.wireless.*" etc etc
    Is there a place where I can download/purchase J2ME. Please be patient with me because I am a newbie in the world of J2ME... thanks :)

    When you configuring your project in JBuilder just add some jar (which you need) from wtk library in section "include"
    Project properties
    Paths
    Required libries
    and add here addition j2me libraries.

  • MDM 5.5 SP04 Java API and Web Service Documentation

    Is there documentation available that reflects the SP04 changes to the Java API, and the web services that are now available?
    As of this morning, service marketplace contained spotty SP04 docs.
    Thanks in advance,
    Mike

    Mike,
    A cookbook would be wonderful (I think our developers would throw a party)!
    An updated object model (as a preface to the user guide) for the legacy API (MDM4J.jar) AND the new "rebranded" API (mdm-*.jar) would also work.
    I've been reduced to comparing the SP3 & SP4 javadocs
    One fun approach that appears to be working for us, is to model each process using the DataManager, and try to duplicate that exactly via the corresponding API objects (e.g. the simple Connect-Find Table-Search Table-View Result Set-View Record-CheckOut/Upsert/Validate/CheckIn dance).  New features in the DataManager reveal themselves a little more readily
    Good luck,
    ...Dee

  • XI Integration Builder API and Javadocs

    Hi
    I have been asked to produce a standalone app that will change the XSL files in a software component on XI.
    This requires the component to be made writeable, edited, and then its change list be submitted.
    I have tried to find an API that offers these functions, but the search was unsuccessful. I think that asking the question here may give me a definitive answer.
    Does anyone know if there is such an API, and where it could be found?
    Thanks
    Bill Logan

    Hi Kirk,
    What you can (and proberbly should) do is setup a local adapter engine (local J2EE installation) inside your DMZ (where the proxy is located). The internet server can than access your local adapter engine directl (preferably via HTTPS). The connection between you integration server (XI) and the local adapter engine must be opened through all firewalls (again you might want to use HTTTPS).
    You can maintain the local adapter engine through the integration server, but servers on the internet can only access the local adapter engine.
    You also might want some extra security using username/password or client certificates on the local adapter engine in the DMZ.
    In my opinion using an ITS or a reverse proxy is making things to complicated.
    Hopes this helps,
    Christiaan Schaake.

  • Pull large amounts of data using odata, client API and so takes a long time in project server 2013

    We are trying to pull large amounts of data in project server 2013 using both client API and odata calls, but it seem to take a long time. How is this done
    In project server 2010 we did this creating SQL views in both the reporting database and for list creating a view in the content database. Our IT dept is saying we can't do this anymore. How does a view in Project database or content database create issues?
    As long as we don't add a field in the table. So how's one to do this with creating a view?

    Hello,
    If you are using Project Server 2013 on premise I would recommend using T-SQL against the dbo. schema in the Project Web Database for your reports, this will be far quicker that the APIs. You can create custom objects in the dbo. schema, see the link below:
    https://msdn.microsoft.com/en-us/library/office/ee767687.aspx#pj15_Architecture_DAL
    It is not supported to query the SharePoint content database directly with T-SQL or add any custom objects to the content database.
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS |
    MVP | Downloads

Maybe you are looking for