Skip to Content
0
Sep 03 at 08:55 AM

UI5 App not loading via URL in Launchpad Service

201 Views Last edit Sep 17 at 08:18 AM 5 rev

Hello,

as I am not able to use a deployed CF Fiori Elements App with Custom Actions & Custom Controls via the HTML5-Content Provider in the Launchpad (s. Question https://answers.sap.com/questions/13469119/fiori-elements-custom-column-not-visible-after-dep.html?childToView=13468185)

I wanted to use the App via the URL from the generated terminal command cf html5-list -di xyz -u in the Launchpad Service! It worked for some weeks quite good but since a few days it is not working anymore and I got the following error! (For sure I changed the URL vom Portal to launchpad)

Error locate-reuse-libs.js:58 Uncaught ReferenceError: sap is not defined

(function(e) {
    fioriToolsGetManifestLibs = function(e) {
        var t = e;
        var n = "";
        var a = ["sap.apf", "sap.base", "sap.chart", "sap.collaboration", "sap.f", "sap.fe", "sap.fileviewer", "sap.gantt", "sap.landvisz", "sap.m", "sap.ndc", "sap.ovp", "sap.rules", "sap.suite", "sap.tnt", "sap.ui", "sap.uiext", "sap.ushell", "sap.uxap", "sap.viz", "sap.webanalytics", "sap.zen"];
        return new Promise(function(r, i) {
            $.ajax(t).done(function(e) {
                if (e) {
                    if (e["sap.ui5"] && e["sap.ui5"].dependencies && e["sap.ui5"].dependencies.libs) {
                        Object.keys(e["sap.ui5"].dependencies.libs).forEach(function(e) {
                            if (!a.some(function(t) {
                                return e === t || e.startsWith(t + ".")
                            })) {
                                if (n.length > 0) {
                                    n = n + "," + e
                                } else {
                                    n = e
                                }
                            }
                        })
                    }
                }
                r(n)
            }).fail(function(t) {
                i(new Error("Could not fetch manifest at '" + e))
            })
        }
        )
    }
    ;
    e.registerComponentDependencyPaths = function(e) {
        return fioriToolsGetManifestLibs(e).then(function(e) {
            if (e && e.length > 0) {
                var t = "/sap/bc/ui2/app_index/ui5_app_info?id=" + e;
                var n = jQuery.sap.getUriParameters().get("sap-client");
                if (n && n.length === 3) {
                    t = t + "&sap-client=" + n
                }
                return $.ajax(t).done(function(e) {
                    if (e) {
                        Object.keys(e).forEach(function(t) {
                            var n = e[t];
                            if (n && n.dependencies) {
                                n.dependencies.forEach(function(e) {
                                    if (e.url && e.url.length > 0 && e.type === "UI5LIB") {
                                        jQuery.sap.log.info("Registering Library " + e.componentId + " from server " + e.url);
                                        jQuery.sap.registerModulePath(e.componentId, e.url)
                                    }
                                })
                            }
                        })
                    }
                })
            }
        })
    }
}
)(sap);
var scripts = document.getElementsByTagName("script");
var currentScript = scripts[scripts.length - 1];
var manifestUri = currentScript.getAttribute("data-sap-ui-manifest-uri");
var componentName = currentScript.getAttribute("data-sap-ui-componentName");
var useMockserver = currentScript.getAttribute("data-sap-ui-use-mockserver");
sap.registerComponentDependencyPaths(manifestUri).catch(function(e) {
    jQuery.sap.log.error(e)
}).finally(function() {
    if (componentName && componentName.length > 0) {
        if (useMockserver && useMockserver === "true") {
            sap.ui.getCore().attachInit(function() {
                sap.ui.require([componentName.replace(/\./g, "/") + "/localService/mockserver"], function(e) {
                    e.init();
                    sap.ushell.Container.createRenderer().placeAt("content")
                })
            })
        } else {
            sap.ui.require(["sap/ui/core/ComponentSupport"]);
            sap.ui.getCore().attachInit(function() {
                jQuery.sap.require("jquery.sap.resources");
                var e = sap.ui.getCore().getConfiguration().getLanguage();
                var t = jQuery.sap.resources({
                    url: "i18n/i18n.properties",
                    locale: e
                });
                document.title = t.getText("appTitle")
            })
        }
    } else {
        sap.ui.getCore().attachInit(function() {
            sap.ushell.Container.createRenderer().placeAt("content")
        })
    }
});
sap.registerComponentDependencyPaths(manifestUri);

Any Idea? Cause from time to time it is loading and sometimes not... If I open the generated URL of the app standalone I got no problems just out of the Launchpad!

Thanks & Cheers

Carsten

Attachments

error.png (74.7 kB)