2016-08-06 81 views
8

Wir haben zwei Anwendungen: eine SAP Fiori-App, die im SAP-ABAP-Repository bereitgestellt wird, und eine andere App, die OpenUI5 enthält und nicht mit SAP verbunden ist Kater.Laden des UI5-Moduls von einem anderen Host in SAP Fiori

Wir müssen diese 2 Anwendungen wie beim Klicken auf eine Schaltfläche in der Fiori App integrieren, müssen Sie die OpenUI5 App öffnen.

Problem ist das Modul (App), die auf Tomcat bereitgestellt wird, weil nicht in der Lage offen ist, wenn wir die domian registerModulePath nicht Fiori

Einnahme ist
jQuery.sap.addUrlWhitelist("http", "tomcat.server.host", "7070", "/tomcatapp/resources/js/ui5widgets"); 

    jQuery.sap.registerModulePath("com.xxx.yyy", "http://tomcat.server.host:7070/tomcatapp/resources/js/ui5widgets"); 

wenn ich

Fehler erfordern

ist
core-min-0-dbg.js:17351 Uncaught Error: failed to load 'com/xxx/yyy/aaa/bbb.js' from /sap/bc/ui5_ui5/ui2/ushell/resources/~20151006101200~/com/xxx/yyy/aaa/bbb.js: 

0 - AbortError: Failed to execute 'send' on 'XMLHttpRequest': Failed to load 'http://sap.netweaver.net:2020/sap/bc/ui5_ui5/ui2/ushell/resources/~20151006101200~/com/xxx/yyy/aaa/bbb.js'.(…) 
+0

Sie sind nicht einen vorhandenen Paketnamen durch Zufall overridding? – cschuff

+0

Nein, ich verwende dieselben Paketnamen – chiranjeevigk

+0

Wird der Pfad von 'com/xxx/yyy/aaa/bbb.js' korrekt aufgelöst, wenn Sie einen relativen Pfad verwenden? Ich frage mich nur, warum es nicht lädt von 'http://sap.netweaver.net:2020/sap/bc/ui5_ui5/ui2/ushell/resources/~20151006101200~/com/xxx/yyy/aaa/bbb.js' Das ist nicht der Pfad, den Sie registriert haben. – cschuff

Antwort

1

Wenn ich

jQuery.sap.registerModulePath("test.test", "http://www.google.de"); 
jQuery.sap.require("test.test.MyTest"); 

Die Datei wurde korrekt in http://www.google.de/MyTest.js aufgelöst.

Sind Sie sicher, dass Ihr Paketname nicht durch etwas anderes überschrieben wird? z.B. Ein Paketname wie "sap.ui.etwas" ist natürlich eine schlechte Idee. Aber es gibt weniger offensichtliche Beispiele. Kannst du etwas mehr/echten Code zeigen?

Sowieso werden Sie kümmern sich um CORS nehmen

+0

@chiranjeevigk Ich verstehe nicht ganz, wie dies Ihr Problem gelöst, aber danke für akzeptiert sowieso;) – cschuff