SUP 2.1 & Odata

Hi experts,
i m beginner in the sybase world ana i m looking for some tutorials/samples for using odata protocol within sybase apps.
someone can give me some links (step by step tutorials ), i was looking for the MOB265 course , but i can't find it
Thanks in advance.

It IS possible to connect MBOs to REST, though it is a bit painful and probably unwise in a real production environment.
I got the MBO to load the data this url returns:
http://gw.esworkplace.sap.com/sap/opu/odata/IWBEP/RMTSAMPLEFLIGHT_2/FlightCollection
(see http://scn.sap.com/docs/DOC-31221 for passwords and more info)
For the XSD I used an extractor/generator that extracts the schema from a sample XML. There's one online, though I ended up using one that comes with visual studio.
I'm using the free cloudshare "hosted SUP test and evaluation environment" and after providing the XSD some other files where needed (missing from the SUP SDK), but I found them easily googling for a while.
I only got to read (GET) the data, I never tried saving (POST) anything, I think it probably wouldn't work because of CSRF tokens and the like. Well, maybe coding and getting under the hood you can achieve something.
I found it to be slow, but, as proof of concept, it can be done.

Similar Messages

  • Kapsel Plugins with SUP 2.2 ?

    Hi everybody,
    did anyone of you try out whether the Kapsel Plugins of SMP SDK 3.0 will be able to communicate with the old SUP 2.2? I mean, it might work, if there have been little or no changes to the REST API...
    Background: I have a customer who is still bound to using SUP 2.2 as enterprise-wide platform and would like to benefit from the features of the Kapsel apps (even more now with SP04, see
    http://help.sap.com/saphelp_smp304sdk/helpdata/en/7c/03a218700610149f94dd65a52e798f/content.htm?frameset=/en/7c/039dc470061014afc8f92e8405d20a/frameset.htm&current_toc=/en/7c/01d254700610148eed82399be5eb3f/plain.htm&node_id=5 )
    I read the discussion at http://scn.sap.com/thread/3559614, however, I´d like to understand why it won´t work or hear it from somebody who really tried. In SUP 2.2 OData-based hybrid apps were possible already, and used REST API as well - the same as now with SMP 3.0?
    Thank you very much & best regards,+
    Ringo

    The documentation for SDK 3.0 contains the source code of LogonController.js, which is the Logon Plugin, if I get it right. Can anyone guess or judge whether this could be adapted in order to connect a Kapsel application successfully to a SUP 2.2?
    http://dcx.sybase.com/index.html#smpsdk0303/en/com.sap.smp303-sdk.developer/8b1e88386d051014b1d5dd14c241263e.html
    Even though this would be a change completely at own risk in a critical area...
    Regards,
    Ringo

  • Consume OData service in SUP 2.1.3

    Hello,
    How to consume of OData service in SUP 2.1.3 for creating MBO for HWC?
    Our OData service is having mandatory filters which needs to be passed.
    http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/Entity_Set_Name/?$filter=Filter1 eq 'value1'and Filter2 eq 'value2'
    So, while creating XSD from XML should we need to use the above URL or http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/?$format=xml
    If we are using http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/?$format=xml and convert it in XSD then we are not able to see FEED in the MBO creation.
    Also, if we are using http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/Entity_Set_Name/?$filter=Filter1 eq 'value1'and Filter2 eq 'value2' and convert it into XSD then we are able to see the FEED in MBO creation but while choosing the fields it is throwing us java.lang.nullpointer exception.
    Can anyone explain us the solution for the problem?
    Regards,
    Rahul

    Is there a particular reason why SUP 2.1.3 is used and not the latest 2.3.4?  It is recommended to move to the most recent version if possible/new project.
    For HWC consuming OData service, you can connect directly from your JavaScript without using MBOs.  Please take a look at this link:
    Develop OData-based Hybrid Apps
    Thanks,
    Andrew.

  • SUP 2.1.3 MBO creation using ODATA service

    Hi All,
    I am using SUP 2.1.3 and trying to consume OData service created using SEGW transaction on gateway. following an older document i moved ahead by creating XSD files from the XML file.
    But,after uploading the XSD file , i chose the root element as 'feed' .
    After this , one XSLT file is generated automatically.
    But , when I click the XSLT file to edit , it shows error saying  'java.lang.NullPointerException' .
    I have to follow the methodology of creating MBO's using OData service and then deploying it on server.
    Please help me to move ahead with ODATA service in SUP 2.1.3 version. 
    Appreciate your quick help and assistance on this.
    Regards
    Rahul

    Hi
    If i ignore the Null exception error and move ahead with the XSLT format and preview the data source i receive the below error:
    Execution failed: HTTP status code is [401], expected [200]; response body is [<html><head><title>Logon Error Message</title><META http-equiv="Content-Type" content="text/html;charset=UTF-8"><style type="text/css">body { font-family:tahoma,helvetica,sans-serif;color:#333333;background-color:#FFFFFF; }td { font-family:tahoma,helvetica,sans-serif;font-size:70%;color:#333333; }h1 { font-family:tahoma,helvetica,sans-serif;font-size:160%;font-weight:bold;margin-top:15px;margin-bottom:3px;color:#003366; }h2 { font-family:verdana,helvetica,sans-serif;font-size:120%;font-style:italic;font-weight:bold;margin-top:6px;margin-bottom:6px;color:#999900; }p { font-family:tahoma,helvetica,sans-serif;color:#333333;margin-top:4px;margin-bottom:4px; }ul { font-family:tahoma,helvetica,sans-serif;color:#333333;list-style-type:square;margin-top:8px;margin-bottom:8px; }li { font-family:tahoma,helvetica,sans-serif;color:#33333;margin-top:4px; }.emphasize { color:#333333;background-color:#C8E3FF;padding:5px;}.note { color:#CC6600; }a { font-family:tahoma,helvetica,sans-serif;text-decoration:underline;color:#336699; }a:visited { color:#001166; }a:hover { text-decoration:none; }</style></head><body><table cellpadding="0" cellspacing="0" border="0" width="100%"><tr><td><h1>Anmeldung fehlgeschlagen</h1><br><h2>Was ist passiert ?</h2><p>Der Aufruf der URL http://10.5.1.150:8000/sap/opu/odata/sap/ZCM_TEST_V5_SRV/PayrqSet/ wurde aufgrund fehlerhafter Anmeldedaten abgebrochen.</p></td></tr><tr><td> </td></tr><tr><td class="emphasize"><strong>Hinweis</strong><br>Die Anmeldung wurde im System GWD ausgeführt. Hierbei wurden keine Anmeldedaten bereitgestellt.</td></tr><tr><td> </td></tr><tr><td><p>  </p><h2>Was können Sie tun ?</h2><ul><li> Falls Sie noch über keine Benutzerkennung verfügen, so wenden Sie sich an Ihren Systemadministrator. </li></ul></br><p class="note">Fehlercode: ICF-LE-http-c:001-l:-T:-C:6-U:-P:-L:6-X:CBC8A013038D1EE486AE76E3D8B54E1D_CBC8A013038D1EE486AE76E3D3D34E1D_1-x:B77319E4C51EF1AFAE1DCBC8A013038D</p></br><p> HTTP 401 - Unauthorized</br><p> Ihr SAP Internet Communication Framework Team</p></td></tr></table></body></html>
    Please let me know if anyone has worked on ODATA+MBO+SUP2.1.3. I know this is not the recommended approach but i have to follow this scenario and i know it can be achieved through this approach. JUst need your assistance experts.
    Thanks & Regards
    Rahul

  • Connecting Netweaver gateway with SUP 2.1 for oData channel

    Hi,
    we are using Generic Channel to deploy the oData service, what we would like to do is, we want to connect NWGW with SUP 2.1 so for that I have created an RFC connection in sm59 in NWGW under HTTP Connections to External Server and I have named it as NW_TO_SUP.
    Now I would like to know what exactly an ABAPer has to do from his end, so that it will trigger the RFC which will pass the data through SUP
    ABAPer is using generic channel and not oData channel.
    Regards,
    Srinivas Divakarla

    Dear Srinivas,
    Generic Channel : it will be done by any developer not only ABAPer,have exiting or standard BAPI/RFC's are available in the SAP Back-end System.
    oData Channel : In this channel developer have a Knowledge on OO-ABAP.
    Thanks,
    Syam.

  • Message Channel Handler error [oData through SUP]

    when we are trying to access the oData service URL through SUP we are getting the following error any idea what could be wrong
    ERROR MMS MessageChannel Thread-252 [com.sybase.sup.server.msgchannel.internal.InboundMoHttpTransport]MessageChannel error [MessageChannel handler failed. , returning ERROR_CODE [500], ERROR_TEXT [MessageChannel handler failed. ], HTTP status [500]
            ... 33 more
            at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal.dispatch(MessageChannelInternal.java:100)
            at com.sybase.sup.server.msgchannel.internal.Response.setContent(Response.java:23)
            at com.sybase.sup.server.msgchannel.internal.Response.writeStreamFromBytes(Response.java:41)
            at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:89)
    Caused by: java.lang.NullPointerException
            at java.lang.Thread.run(Thread.java:662)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
            at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
            at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
            at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
            at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
            at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
            at com.sybase.djc.server.jetty.JettyServer.handle(JettyServer.java:168)
            at org.mortbay.jetty.Server.handle(Server.java:322)
            at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
            at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:242)
            at com.sybase.djc.server.jetty.SybWebAppContext.handle(SybWebAppContext.java:157)
            at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
            at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
            at com.sybase.djc.server.jetty.SybSessionHandler.handle(SybSessionHandler.java:147)
            at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
            at org.mortbay.jetty.security.HTAccessHandler.handle(HTAccessHandler.java:234)
            at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
            at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
            at web.components.msgchannel.msgchannel$WC.service(msgchannel$WC.java:24)
            at web.components.msgchannel.msgchannel_DJC.service(msgchannel_DJC.java:339)
            at com.sybase.djc.transaction.TransactionManager.invokeBeanManaged(TransactionManager.java:611)
            at com.sybase.djc.transaction.TransactionManager.invokeNotSupported1(TransactionManager.java:670)
            at web.components.msgchannel.msgchannel_DJC$3.invoke(msgchannel_DJC.java:310)
            at web.components.msgchannel.msgchannel_DJC.access$201(msgchannel_DJC.java:4)
            at web.components.msgchannel.msgchannel.service(msgchannel.java:28)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:767)
            at com.sybase.sup.server.msgchannel.internal.InboundMoHttpTransport.doPost(InboundMoHttpTransport.java:50)
            at com.sybase.sup.server.msgchannel.internal.InboundMoHttpTransport.process(InboundMoHttpTransport.java:113)
            at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal.dispatch(MessageChannelInternal.java:120)
    com.sybase.sup.server.msgchannel.internal.MessageChannelException: MessageChannel handler failed.

    Hi ,
    We are having the same problem while trying to configure SAP Employee Lookup through SUP 2.1 and SAP NW GW 2.0 SP3.
    We can call the OData service on NW Gateway system from the SUP server, but when the service is called by the mobile app we apparently get a HTTP 500 error (internal server error).
    See the trace listing below.
    2012-03-02 17:36:31.958 ERROR MMS MessageChannel Thread-425 [com.sybase.sup.server.msgchannel.internal.InboundMoHttpTransport]MessageChannel error [MessageChannel handler failed. , returning ERROR_CODE [500], ERROR_TEXT [MessageChannel handler failed. ], HTTP status [500]
         ... 33 more
         at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal.dispatch(MessageChannelInternal.java:100)
         at com.sybase.sup.server.msgchannel.internal.Response.setContent(Response.java:23)
         at com.sybase.sup.server.msgchannel.internal.Response.writeStreamFromBytes(Response.java:41)
         at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:89)
    Caused by: java.lang.NullPointerException
         at java.lang.Thread.run(Thread.java:662)
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
         at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
         at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
         at com.sybase.djc.server.jetty.JettyServer.handle(JettyServer.java:168)
         at org.mortbay.jetty.Server.handle(Server.java:322)
         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
         at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:242)
         at com.sybase.djc.server.jetty.SybWebAppContext.handle(SybWebAppContext.java:157)
         at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
         at com.sybase.djc.server.jetty.SybSessionHandler.handle(SybSessionHandler.java:147)
         at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
         at org.mortbay.jetty.security.HTAccessHandler.handle(HTAccessHandler.java:234)
         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at web.components.msgchannel.msgchannel$WC.service(msgchannel$WC.java:24)
         at web.components.msgchannel.msgchannel_DJC.service(msgchannel_DJC.java:339)
         at com.sybase.djc.transaction.TransactionManager.invokeBeanManaged(TransactionManager.java:611)
         at com.sybase.djc.transaction.TransactionManager.invokeNotSupported1(TransactionManager.java:670)
         at web.components.msgchannel.msgchannel_DJC$3.invoke(msgchannel_DJC.java:310)
         at web.components.msgchannel.msgchannel_DJC.access$201(msgchannel_DJC.java:4)
         at web.components.msgchannel.msgchannel.service(msgchannel.java:28)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:767)
         at com.sybase.sup.server.msgchannel.internal.InboundMoHttpTransport.doPost(InboundMoHttpTransport.java:50)
         at com.sybase.sup.server.msgchannel.internal.InboundMoHttpTransport.process(InboundMoHttpTransport.java:113)
         at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal.dispatch(MessageChannelInternal.java:120)
    com.sybase.sup.server.msgchannel.internal.MessageChannelException: MessageChannel handler failed.
    2012-03-02 17:36:31.957 DEBUG MMS MessageChannel Thread-425 [com.sybase.sup.server.msgchannel.internal.MessageChannelInternal]Done executing request (requestId=[43577039].
    2012-03-02 17:36:31.954 DEBUG MMS MessageChannel Thread-425 [com.sybase.sup.server.msgchannel.internal.MessageChannelInternal]About to execute request (requestId=[43577039], handlerId=[GWCRequest]) in Handler [com.sybase.suplite.gwc.req.handler.GatewayConnectorHandler]...

  • How to connect SUP 2.1 to CRM

    Hello,
    I want to know how we can connect SUP 2.1 to CRM system.
    I read some documents that I need to install DOE connector but I knew that EIS are connected using JCO.
    Can somebody help me to understand these diferences ?
    Thank you,
    Juan

    SUP with DOE enables SUP to talk to Netweaver Mobile. DOE is not recommended for new mobile solutions. SAP Jco is another option given to talk to SAP (SUP MBO apps uses it). It is explained well in Viru's comment.
    SAP's recommended way of mobile app development is Odata as interface between SMP and SAP. ie SAP is going with open standard like Odata (http/https). So it allows you to choose your own development tool to develop the app since Odata is an open standard (SAP Mobile Platform).
    To expose Odata services from SAP, Netweaver gateway is needed in between SAP and SMP (SAP Mobile Platform). Netweaver Gateway comes as an add on for SAP or it can be installed in a separate server. It is free for existing SAP business suite customers.
    SMP 3 is a combination of SUP, Syclo Agentry and Mobiliser, it may be released by June. It supports only Odata. MBO based existing apps are supported through a sidecar.
    Midhun VP

  • SUP 2.1

    Hello Experts ,
    I am having a project which was build using SUP 1.5.3 It was Working fine .
    Now , i migrated the same project to SUP 2.1 but it is throwing issues on front end .
    On Xcode i have imported SUP 2.1 API and added generated code as well .
    It builds Successfully but when when i run the project it throws an issue
    [SUPMessageClient.m:47] - Operation failed, Unable to access the key
    and because of this i am unable to login to server and proceed ahead.
    Please help me on this .
    Also in SUP under Unwired Server -> Packages ..all packages are shown as Replication based and not message based.Is this an issue .
    Thanks & Regards ,
    Rockky .

    SUP 2.1 is the platform for 20+ SAP-delivered applications in Q4 2011, including Mobile Sales 2.0, EAM, Retail Execution, Field Service, and the Employee Productivity Suite of person-centric native apps.
    The new features of  SUP 2.1
    1) OData SDK:  Support for NW Gateway, RESTful native application development
    2)Hybrid Web Container:  Camera API, enhanced Offline Storage API
    3)Application Lifecycle Management tools:  Afaria SDK integration, automatic user on-boarding
    The new functionality improves our ability to manage and administer these apps and users.
    <b><a href="http://www.innovativepeople.com/ipad-playbook-andriod-magazine-development.html">Ipad Application Development</a></b>
    <b><a href="http://www.innovativepeople.com/ipad-playbook-andriod-magazine-development.html">Top Ipad Developers</a></b>
    Edited by: innovativecomnet on Feb 28, 2012 6:30 AM

  • SUP limitations... or not?

    Case 1: online applications that bypass the cache. Apparently they are not supported in native applications using message based synchronization. See [this|SUP Online cache policy; thread for more informations.
    Case 2: synchronization parameters. They accumulate, and if we map them with load parameters, when a cache section associate with them expire, this section is refreshed together with the new parameter. If expired sections are many, there are many requests to the backend. Using "unsubscribe" all old parameters and all sections of the cache are removed, but the unsubscribe removes also all data in the database, which precludes the ability to work offline. Apparently there is no way to delete only the old synchronization parameters while keeping data, or make sure that after a certain period of time they are no longer valid.
    Someone has an answer to these questions?
    Edited by: Alessandro Iannacci on Oct 21, 2011 12:17 AM

    Hi JS,
    Your welcome. Here is the rest...
    Q: What you have mentioned above using the Gateway sounds like you have to have SUP as well?
    A: You do not have to use SUP if you use Gateway. GW services can be consumed by mobile devices "directly" as they are based on OData protocol as you know.
    Q:What do you mean by "SUP is still recommended for things like onboarding" ? what sort of on-boarding would you be doing through a mobile device?
    A: Basically any task that enables your user to access the services. For example, device registration and system access can be configured more conveniently using SUP.
    Q: I would have though we could have written native code for our device which communicated via REST with Gateway to directly access the backend SAP system.
    A:Yes, that is absolutely correct. But how would you manage access security and authentication then?
    Q:Is there a licence fee with SUP? How is it charged? That needs to way into the equation as well. Maybe if you need full device management you can use Afaria (not sure if it can be used on its own or if you need SUP).
    A: Definitely part of the equation:) This is something you will have to check directly with Sybase. I can confirm there is a licensing fee (surprised?) but the details are still murky. Yes, Afaria is a standalone product.
    Hope this helps, good luck:)
    David

  • OData SDMConnectivity component - HttpRequest for Android application

    Hi,
    I am trying to consume a Odata Service from my Native Android Application.
    I am following the same steps as described in OData SDK Document.
    By Default, SDMConnectivity component is performing SUP Request. I need to change this to use HTTP/HTTPS Request for my Android Application. I couldnot find the way to do this, from the OData SDK.
    For iOS Applicaiton, this is done using setRequest/SDMHTTPRequest. Any idea, how the same is achieved for Android application ?
    Regards
    Elavarasan S

    1. Create the request URL that will be sent.
    String requestUrl = http://<Gateway_Host>:<Gateway_Port>/sap/opu/sdata/iwfnd/RMTSAMPLEFLIGHT/GetAvailableFlights?cityfrom= + cityFrom + "&cityto=" + cityTo + "&fromdate=" + fromDate + "&todate=" + toDate;
    DefaultHttpClient client = new DefaultHttpClient();
    client.getCredentialsProvider().setCredentials(AuthScope.ANY,
    new UsernamePasswordCredentials("<Gateway_User>", "<Gateway_Password>"));
    2. Create a Get request.
    HttpGet getRequest = new HttpGet();
    // buffer reader to read the response
    BufferedReader bufferedReader = null;
    // placeholder for the service response
    HttpResponse response = null;
    getRequest.setURI(new URI(requestUrl));
    getRequest.setHeader("Content-Type", "text/xml");
    getRequest.setHeader("Host", getRequest.getURI().getHost());
    5. Execute the request.
    response = client.execute(getRequest);
    I hope that helps
    Srinivas Divakarla

  • Run existing native Android App over the SUP

    Hello everyone,
    we have developed an Android app, which connects to the ERP system via  a "simple" Rest webservice. Now we have a customer who wants to run the same app over the SUP. We have installed SUP and want to know which is the easiest way to run our Android app over the SUP. What would be the first steps to connect our app to the SUP. What changes have to be done in the existing code?
    Thanks and Regards,
    Themicaa

    Hi Themicaa,
    Are you using SAP NetWeaver Gateway 2.0 to expose your ERP contents as REST services?. Are you following oData formats?
    Connectivity to SUP would be simple.
    Install SUP2.1 Server. Once you have the above setup ready, you need to do the below configurations.
    1. Configure releay server in SCC.(Only if device connectivity from outside firewall.)
    2. Create security configuration in SCC.
    3. Create applicationID and application connection in SCC providing Gateway Service Doc/Proxy URL.
    Refer thread http://forums.sdn.sap.com/thread.jspa?threadID=2132783&messageID=11081762#11081762 for details.
    Install SUP2.1 SDK installer.
    With SDK installer you will get libraries for Connectivity, Parser, Cach etc.
    Add libraries from  <UnwiredPlatformSDK_InstallDir>\MobileSDK\OData\Android\libraries\. to your application project.
    Use the below piece of code to register the application wit SUP server.
              try {
                   /* STEP1:Initialize the App */
                   LiteUserManager.initInstance(getApplicationContext(), "applicationID");
                   /* STEP2:Provide SUP connection Settings and Register the User */
                   LiteUserManager usrMngr = LiteUserManager.getInstance();
                   // usrMngr.setConnectionProfile(Server_Host, Port, FormID);
                   if (!usrMngr.isRegistered()) {
                        usrMngr.setConnectionProfile("10.66.57.144", 5005, "0");
                        // usrMngr.registerUser(userName, actCode);
                        usrMngr.registerUser("APPUSER", "123");
              } catch (MessagingClientException e) {
                   e.printStackTrace();
    ODP-reference Android app available @ https://cw.sdn.sap.com/cw/docs/DOC-146460
    Regards
    Rohith

  • SSL within OData Application

    Hi another question,
    do we need to change the coding if we want to use SSL within SUP environment.
    We changed the SAP OData Service to SSL, we also changed the Service on SUP, Domain configuration and application configuration. Ist there any additional thing to do? We didn't get it to work.
    The Errorlog of the App:
    May  7 16:25:45 iPad-von-Mac- APP[78] <Error>:  CFPropertyListReadFromFile file file:///Library/Keychains/accountStatus.plist: The operation couldnt be completed. (Cocoa error 260.)
    May  7 16:25:45 iPad-von-Mac- APP[78] <Error>:  CFPropertyListReadFromFile file file:///Library/Keychains/accountStatus.plist: The operation couldnt be completed. (Cocoa error 260.)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: ---------> ServiceDocument request started with URL: https://sap.xxx.de:8443/sap/opu/sdata/ISDE/SMCMHG/
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: USING ODP REQUEST
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: [ERROR] 516:Error sending request to server/Location:callServer + 347
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: [ERROR] 516:Error sending request to server/Location:-[ODPRequest startSynchronous] + 1310
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: +++++++++> Login (ServiceMetadata | ServiceDocument | BBModules) request failed for URL: https://sap.xxx.de:8443/sap/opu/sdata/ISDE/SMCMHG/
    +++++++++> Response status code: 0
    +++++++++> NSError: Error Domain=516 Code=516 "Error sending request to server" UserInfo=0x17e26d70 {NSLocalizedDescription=Error sending request to server}
    +++++++++> Response output: (null)
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: ---------> CANCELING ALL CONNECTIONS
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: ---------> ServiceDocument request started with URL: https://sap.xxx.de:8443/sap/opu/sdata/ISDE/SMCMHG/
    May  7 16:25:45 iPad-von-Mac- APP[848] <Warning>: USING ODP REQUEST
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: CFNetwork SSLHandshake failed (-9800)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: [ERROR] 516:Error sending request to server/Location:callServer + 347
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: [ERROR] 516:Error sending request to server/Location:-[ODPRequest startSynchronous] + 1310
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: +++++++++> Login (ServiceMetadata | ServiceDocument | BBModules) request failed for URL: https://sap.xxx.de:8443/sap/opu/sdata/ISDE/SMCMHG/
    +++++++++> Response status code: 0
    +++++++++> NSError: Error Domain=516 Code=516 "Error sending request to server" UserInfo=0x17ef1960 {NSLocalizedDescription=Error sending request to server}
    +++++++++> Response output: (null)
    May  7 16:25:46 iPad-von-Mac- APP[848] <Warning>: ---------> CANCELING ALL CONNECTIONS
    Thanks in advance, Chris

    Please check Chapter 7 in the Single Sign-On Administrator's Guide.
    Regards,
    Martin

  • Mobile app development without SUP and Mac

    Hi,
    Sorry for the disturbance but I am new in the SAP Mobility solution. I have searched for it but i got more confused. I have three main questions:
    1- Can I develop mobile applications without SUP? I have found different keywords related to this topic but I couldn't figure out the difference between them and how the development process will be done, the keywords were oData, REST web services, Gateway
    2- I found that there are 3 types of applications using SUP: Native (offline application), Hyprid (online app), oData (online app). can all of them connect to SAP EIS? and if yes, what is the difference in this case between Hyprid and oData app?
    3- If I want to develop iOS app, should I have MAC or is there any other possible way to allow me to only use my Windows machine?
    Thank you in advance

    Hello Engy,
    1- Can I develop mobile applications without SUP? I have found different keywords related to this topic but I couldn't figure out the difference between them and how the development process will be done, the keywords were oData, REST web services, Gateway
    Answer: yes you can develop apps with SUP. You have to consume services in your appl if you have to use others.
    2- I found that there are 3 types of applications using SUP: Native (offline application), Hyprid (online app), oData (online app). can all of them connect to SAP EIS? and if yes, what is the difference in this case between Hyprid and oData app?
    Answer: Native application is offline so you can not get live data from EIS as it is not connected. Hybrid apps uses SUP for the interaction with EIS whereas oDATA doesnt use SUP.
    3- If I want to develop iOS app, should I have MAC or is there any other possible way to allow me to only use my Windows machine?
    Answer: as mentioned by Binson , it can be done in 2 ways. Xcode is required for the development.
    Please let me know if these answers were helpful to you.
    Thanks & Regards,
    Krishna

  • SMP OData Offline support

    Hello friends,
    I am using SUP 2.2 to develop native mobile application. Now, we are planned to go with SMP. Does SMP support offline capabilites ?
    Thanks,
    Dinesh
    Tags edited by: Michael Appleby

    Hello Dinesh,
    There is support for MBOs in SMP3, only that this approach is not recommended by SAP, you have to install a mbo runtime server in SMP3
    You have offline support for:
    Syclo Agentry
    MBOs (Not Recommended)
    OData SDK, here SMP APIs SDK only caches your OData requests. You have to manage the database handling/security in each platform project yourself
    Kapsel (Cordova Plugins), does not provide offline capabilities, you have to use some cordova plugins to manage offline OData handling/security for each platform
    Rest SDK, does not provide any sdk, only http api calls, but it can be integrated with a custom offline development made by yourself
    Regards,
    Daniel

  • Error while calling a super class public method in the subclass constructor

    Hi ,
    I have code like this:
    CLASS gacl_applog DEFINITION ABSTRACT.
      PUBLIC SECTION.
        METHODS:
                create_new_a
                   IMPORTING  pf_obj       TYPE balobj_d
                              pf_subobj    TYPE balsubobj
                              pf_extnumber TYPE string
                   EXPORTING  pfx_log_hndl TYPE balloghndl
                   EXCEPTIONS error
    ENDCLASS.
    CLASS gacl_applog IMPLEMENTATION.
      METHOD create_new_a.
        DATA: ls_log TYPE bal_s_log.
      Header aufsetzen
        MOVE pf_extnumber TO ls_log-extnumber.
        ls_log-object     = pf_obj.
        ls_log-subobject  = pf_subobj.
        ls_log-aluser     = sy-uname.
        ls_log-alprog     = sy-repid.
        ls_log-aldate     = sy-datum.
        ls_log-altime     = sy-uzeit.
        ls_log-aldate_del = ls_log-aldate + 1.
        CALL FUNCTION 'BAL_LOG_CREATE'
             EXPORTING
                  i_s_log      = ls_log
             IMPORTING
                  e_log_handle = pfx_log_hndl
             EXCEPTIONS
                  OTHERS       = 1.
        IF ( sy-subrc NE 0 ).
          MESSAGE ID      sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH    sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
                  RAISING error.
        ENDIF.
      ENDMETHOD.
    CLASS gcl_applog_temp DEFINITION INHERITING FROM gacl_applog.
      PUBLIC SECTION.
        DATA: log_hndl   TYPE balloghndl READ-ONLY
            , t_log_hndl TYPE bal_t_logh READ-ONLY
        METHODS: constructor
                   IMPORTING  pf_obj       TYPE balobj_d
                              pf_subobj    TYPE balsubobj
                              pf_extnumber TYPE string
                   EXCEPTIONS error
               , msg_add      REDEFINITION
               , display      REDEFINITION
    ENDCLASS.
    CLASS gcl_applog_temp IMPLEMENTATION.
      METHOD constructor.
        CALL METHOD create_new_a
               EXPORTING  pf_obj       = pf_obj
                          pf_subobj    = pf_subobj
                          pf_extnumber = pf_extnumber
               IMPORTING  pfx_log_hndl = log_hndl.
        IF ( sy-subrc NE 0 ).
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
                  RAISING error.
        ENDIF.
      ENDMETHOD.
    A public method of Super class has been called from the constructor of the sub class. we are getting the syntax error :
    ' In the constructor method, you can only access instance attributes, instance methods, or "ME" after calling the constructor of the superclass…'
    Can you please suggest how to change the code with out affecting the functioanlity.
    Thank you ,
    Lakshmi.

    Hi,
    Call that method by instance of Subclass.   OR
    SUPER-->method.
    Read very useful document
    Constructors
    Constructors are special methods that cannot be called using CALL METHOD. Instead, they are called automatically by the system to set the starting state of a new object or class. There are two types of constructors - instance constructors and static constructors. Constructors are methods with a predefined name. To use them, you must declare them explicitly in the class.
    The instance constructor of a class is the predefined instance method CONSTRUCTOR. You declare it in the public section as follows:
    METHODS CONSTRUCTOR
            IMPORTING.. [VALUE(]<ii>[)] TYPE type [OPTIONAL]..
            EXCEPTIONS.. <ei>.
    and implement it in the implementation section like any other method. The system calls the instance constructor once for each instance of the class, directly after the object has been created in the CREATE OBJECT statement. You can pass the input parameters of the instance constructor and handle its exceptions using the EXPORTING and EXCEPTIONS additions in the CREATE OBJECT statement.
    The static constructor of a class is the predefined static method CLASS_CONSTRUCTOR. You declare it in the public section as follows:
    CLASS-METHODS CLASS_CONSTRUCTOR.
    and implement it in the implementation section like any other method. The static constructor has no parameters. The system calls the static constructor once for each class, before the class is accessed for the first time. The static constructor cannot therefore access the components of its own class.
    Pls. reward if useful....

Maybe you are looking for

  • Error while opening a Office 2007 Excel (.xlsx) from a Servlet

    Hi All, Actually i am trying to open an excel file from a servlet. It works fine when the file format is .xls. But if it is .xlsx it gives the below error. "The file you are trying to open .xlsx is in a different format than specified by the file ext

  • For a PR, check the material master

    Hi, I have a basic question. I have a requirement to check the material master to determine the existence of the material master after a PR is created. Can we create a PR without a material. What are the methods of creating PR apart from manual creat

  • How do I format and external hard drive for my MBP?

    I have an external hard drive that I was using on a windows based system. I backed up the contents to dvd's and now I want to format the drive for my MBP? Can someone please tell me the best way to do this? Thanks.

  • Change Legend Label

    There is a way to change the label value of the elements for chart legend? Thank you

  • Trying to cancel service

    Unfortunately, despite BT saying that they could provide a service to my new address, I cannot watch TV here. I have tried calling to cancel my service, but I just get put to technical help all the time. So I want to put my cancellation in writing, d