2017-08-15 26 views
6

İstemcimiz sistemimizi SAP olarak değiştirdi ve bir uygulamanın SAP arabirimiyle verileri görüntülemesini istiyor. SAP arayüzü için kullanımı kolay bulut konektörlerinin yanı sıra sağlam bir MVC tasarımı ile çok iyi bir kontrol çeşitliliği sağladığından, uygulamayı geliştirmek için SAPUI5 framework + WebIDE kullanmaya karar verdik.Bulut bağlayıcısı, JSON verilerini aygıtta yüklemek için başarısız oluyor

Biz böyle bir konnektör yapılandırmış:

neo-app.json

{ 
    "welcomeFile": "/webapp/index.html", 
    "routes": [ 
    { 
     "path": "/resources", 
     "target": { 
     "type": "service", 
     "name": "sapui5", 
     "entryPath": "/resources" 
     }, 
     "description": "SAPUI5 Resources" 
    }, 
    { 
     "path": "/test-resources", 
     "target": { 
     "type": "service", 
     "name": "sapui5", 
     "entryPath": "/test-resources" 
     }, 
     "description": "SAPUI5 Test Resources" 
    }, 
    { 
     "path": "/mynews", 
     "target": { 
     "type": "destination", 
     "name": "MyNews_CMS", 
     "preferLocal": true 
     } 
    } 
    ], 
    "sendWelcomeFileRedirect": true 
} 

Bu component.js bizim sınav çağrısıdır:

try {                    
    $.get("/mynews/?json=2", function(data, status) {                     
    alert("success: " + JSON.stringify(data));                    
    }).fail(function(arg1) {                     
    alert("error: " + JSON.stringify(arg1));                    
    });                   
} catch (err) { 
    alert("global error: " + err); 
} 

Web sitemizde, SAP bağlayıcı API'sından istenen tüm verilerle tam bir JSON elde edersek, en kısa sürede Uygulamayı kuruyoruz ve HAT (Android, iOS, hatta imzalanmış) kullanarak herhangi bir cihazda yayınlıyoruz, istek başarısız oluyor.

ilk, bu, o zaman error: {"readyState":0,"status":0,"statusText":"error"}

nasıl bu sorunu çözebilir uyarır {} (boş nesne) uyarır?

+0

sizin için çok kötü, SAP ile sıkışmış). Cihazınızın gönderdiği sorguyu kontrol etmek için bir hata ayıklama proxy'si (charles/fiddler/burp) kullanmaya çalıştınız mı? belki de tarayıcıdan bir fark göreceksiniz. Tam URL'yi (https: //xxxx.yyy ile) "/ mynews ..." ile tanıtmayı denediniz mi? – wargre

+0

@wargre Tam url çalışır. Sadece işe yaramayan hedef. Son iOS projemde, hedefe herhangi bir başvuru bulamıyorum. IOS projemde neo-app dosyası veya başka bir şey eksik gibi görünüyor. –

+1

HAT guru değilim, ama korkarım neo-app.json dosyası sadece WebIDE içinde veya SAP Cloud'da (örneğin Portal hizmetinde) dağıtılmış bir uygulama içinde kullanılır. Uygulamayı dağıtırken bu dosyanın dışa aktarıldığını onaylayabilir misiniz? – fabiopagoti

cevap

0

, UI5 uygulamanızla ilgisi yoktur. Uygulamayı çalıştırmaya bile gerek yoktur, çünkü yalnızca SAP WebIDE bu dosyayı yapılandırma amacıyla yorumlar ve kullanır.

... 
"dataSources": { 
    "ODataEndpoint": { 
     "uri": "https://yourappname.hana.ondemand.com/your/odata/path/", 
     "type": "OData", 
     "settings": { 
      "odataVersion": "2.0", 
      "localUri": "/your/odata/path/" 
     } 
    } 
} 
... 
"models": { 
    "": { 
     "dataSource": "ODataEndpoint" 
    } 
} 
... 

bu çağrılan hangi URL'nin görmek için cihazlar ağ etkinliğini debug çalışmıyorsa: gerçekten yapmak istedikleriniz

senin manifest.json içindeki hedeflerinizi tanımlamaktır. iOS App içindeki ağ çağrıları nasıl hata ayıklanır

: https://cordova.apache.org/docs/en/latest/guide/next/#ios-debugging

bir Android App içine ağ çağrıları nasıl hata ayıklanır: https://cordova.apache.org/docs/en/latest/guide/next/#chrome-remote-debugging

İlgili konular