spreadsheetimporter / ui5-cc-spreadsheetimporter

A UI5 Component to integrate a Spreadsheet Upload for UI5 Apps.
https://spreadsheet-importer.com/
Apache License 2.0
84 stars 16 forks source link

[Bug]: Doesn't load in S4HC Public Cloud - Some resources return 403 #581

Closed chrismills closed 4 months ago

chrismills commented 4 months ago

OData Version

OData V4

Draft

Yes

Scenario

Fiori Elements

Environment

BAS, S4HC Public Cloud

UI5 Spreadsheet Component

1_1_1

What happened?

I've deployed the packed deployment app to S4 public cloud system, deployment is fine and I can check the component via the url:

https://.s4hana.cloud.sap/sap/bc/ui2/app_index/ui5_app_info?id=cc.spreadsheetimporter.v1_1_1

However, getting 403's for several files in public cloud. I've deployed the same project to a S4 on-prem system and it works ok there. Not sure why certain files don't seem to load on public cloud.

Above query for app info returns the below path: /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1

If I open a browser and enter below urls:

https:///sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customcontrol/spreadsheetimporter/v1_1_1/Component.js S4 2402 Public Cloud: Success S4 2021 On Premise: Success

https:///sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customcontrol/spreadsheetimporter/v1_1_1/Component-preload.js S4 2402 Public Cloud: 403 - Not found S4 2021 On Premise: Success

https:///sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customcontrol/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js S4 2402 Public Cloud: 403 - Not Found S4 2021 On Premise: Success

And this is where things get interesting: https:///sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customcontrol/spreadsheetimporter/v1_1_1/controller/Util.js S4 2402 Public Cloud: Success S4 2021 On Premise: Success

No other file in the controller sub-folder loads except Util.js which I have no idea why. Since the Component-preload.js doesn't load on public cloud its trying to load each of the other files instead of the bundled (preload) version which these also fail.

The docs mentions works on all platforms including cloud, so was wondering if you've had experience deploying to public cloud and any idea why it might be blocking certain resources?

I checked the zip file that is uploaded on deploy to ensure it contains these files which it does.

Thanks :) The project looks really good, i'd love to use it in current public cloud work!

Relevant log output

```shell GET https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component-preload.js net::ERR_ABORTED 404 (Not Found) Ae @ ui5loader-dbg.js:1463 qe @ ui5loader-dbg.js:1681 Be @ ui5loader-dbg.js:2346 T @ Component-dbg.js:3232 (anonymous) @ Component-dbg.js:3449 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 ui#EnterpriseProject-upload&/UploadHeader('1')?sap-ui-debug=true:1 Refused to execute script from 'https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component-preload.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled. ui5loader-dbg.js:1463 GET https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component-preload.js net::ERR_ABORTED 404 (Not Found) Ae @ ui5loader-dbg.js:1463 i @ ui5loader-dbg.js:1448 error (async) Ae @ ui5loader-dbg.js:1461 qe @ ui5loader-dbg.js:1681 Be @ ui5loader-dbg.js:2346 T @ Component-dbg.js:3232 (anonymous) @ Component-dbg.js:3449 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 ui#EnterpriseProject-upload&/UploadHeader('1')?sap-ui-debug=true:1 Refused to execute script from 'https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component-preload.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled. Log-dbg.js:499 2024-06-20 11:17:02.156399 failed to load JavaScript resource: cc/spreadsheetimporter/v1_1_1/Component-preload.js - sap.ui.ModuleSystem g @ Log-dbg.js:499 t.error @ Log-dbg.js:249 L.error @ Log-dbg.js:685 i @ ui5loader-dbg.js:1452 error (async) Ae @ ui5loader-dbg.js:1461 i @ ui5loader-dbg.js:1448 error (async) Ae @ ui5loader-dbg.js:1461 qe @ ui5loader-dbg.js:1681 Be @ ui5loader-dbg.js:2346 T @ Component-dbg.js:3232 (anonymous) @ Component-dbg.js:3449 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 sap-xhrlib-esm-dbg.js:5 GET https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/i18n/i18n_en.properties 404 (Not Found) a.send @ sap-xhrlib-esm-dbg.js:5 window.XMLHttpRequest. @ XHRInterceptor-dbg.js:58 (anonymous) @ fetch-dbg.js:209 n @ fetch-dbg.js:147 t @ mixedFetch-dbg.js:55 i.loadResource @ LoaderExtensions-dbg.js:320 r.create @ Properties-dbg.js:277 x @ ResourceBundle-dbg.js:601 m @ ResourceBundle-dbg.js:537 _ @ ResourceBundle-dbg.js:293 _.create @ ResourceBundle-dbg.js:936 _loadI18n @ Manifest-dbg.js:276 _processI18n @ Manifest-dbg.js:244 (anonymous) @ Component-dbg.js:3462 Promise.then (async) (anonymous) @ Component-dbg.js:3460 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 sap-xhrlib-esm-dbg.js:5 GET https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/i18n/i18n.properties 404 (Not Found) a.send @ sap-xhrlib-esm-dbg.js:5 window.XMLHttpRequest. @ XHRInterceptor-dbg.js:58 (anonymous) @ fetch-dbg.js:209 n @ fetch-dbg.js:147 t @ mixedFetch-dbg.js:55 i.loadResource @ LoaderExtensions-dbg.js:320 r.create @ Properties-dbg.js:277 x @ ResourceBundle-dbg.js:601 m @ ResourceBundle-dbg.js:537 (anonymous) @ ResourceBundle-dbg.js:539 Promise.then (async) m @ ResourceBundle-dbg.js:537 _ @ ResourceBundle-dbg.js:293 _.create @ ResourceBundle-dbg.js:936 _loadI18n @ Manifest-dbg.js:276 _processI18n @ Manifest-dbg.js:244 (anonymous) @ Component-dbg.js:3462 Promise.then (async) (anonymous) @ Component-dbg.js:3460 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 assert-dbg.js:33 Assertion failed: could not find any translatable text for key 'spreadsheetimporter.compTitle' in bundle file(s): '' n @ assert-dbg.js:33 _.getText @ ResourceBundle-dbg.js:376 i @ Manifest-dbg.js:235 i @ Manifest-dbg.js:239 Promise.then (async) _processI18n @ Manifest-dbg.js:244 (anonymous) @ Component-dbg.js:3462 Promise.then (async) (anonymous) @ Component-dbg.js:3460 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 assert-dbg.js:33 Assertion failed: could not find any translatable text for key 'spreadsheetimporter.compDescription' in bundle file(s): '' n @ assert-dbg.js:33 _.getText @ ResourceBundle-dbg.js:376 i @ Manifest-dbg.js:235 i @ Manifest-dbg.js:239 Promise.then (async) _processI18n @ Manifest-dbg.js:244 (anonymous) @ Component-dbg.js:3462 Promise.then (async) (anonymous) @ Component-dbg.js:3460 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 sap-xhrlib-esm-dbg.js:5 GET https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/i18n/i18n_en.properties 404 (Not Found) a.send @ sap-xhrlib-esm-dbg.js:5 window.XMLHttpRequest. @ XHRInterceptor-dbg.js:58 (anonymous) @ fetch-dbg.js:209 n @ fetch-dbg.js:147 t @ mixedFetch-dbg.js:55 i.loadResource @ LoaderExtensions-dbg.js:320 r.create @ Properties-dbg.js:277 x @ ResourceBundle-dbg.js:601 m @ ResourceBundle-dbg.js:537 _ @ ResourceBundle-dbg.js:293 _.create @ ResourceBundle-dbg.js:936 c.loadResourceBundle @ ResourceModel-dbg.js:391 c @ Component-dbg.js:3506 (anonymous) @ Component-dbg.js:3539 Promise.then (async) (anonymous) @ Component-dbg.js:3484 Promise.then (async) (anonymous) @ Component-dbg.js:3463 Promise.then (async) V @ Component-dbg.js:3440 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 sap-xhrlib-esm-dbg.js:5 GET https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js 404 (Not Found) a.send @ sap-xhrlib-esm-dbg.js:5 window.XMLHttpRequest. @ XHRInterceptor-dbg.js:58 je @ ui5loader-dbg.js:1392 qe @ ui5loader-dbg.js:1650 Oe @ ui5loader-dbg.js:1843 De @ ui5loader-dbg.js:1972 Me @ ui5loader-dbg.js:2043 eval @ Component.js?eval:1 Ie @ ui5loader-dbg.js:1757 qe @ ui5loader-dbg.js:1658 Oe @ ui5loader-dbg.js:1843 r @ ui5loader-dbg.js:2099 (anonymous) @ Component-dbg.js:3632 (anonymous) @ Component-dbg.js:3630 Promise.then (async) V @ Component-dbg.js:3625 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 ui5loader-dbg.js:1156 Uncaught (in promise) ModuleError: Failed to resolve dependencies of 'cc/spreadsheetimporter/v1_1_1/Component.js' -> 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js': failed to load 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js' from /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js: 404 at we (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:6645) at ge.failWith (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:4709) at https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16952 at Oe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:15418) at De (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16906) at Object.Me [as define] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:17978) at eval (https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component.js?eval:1:21) at eval () at Ie (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:14403) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13385) Caused by: ModuleError: failed to load 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js' from /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js: 404 at we (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:6645) at ge.failWith (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:4709) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13312) at Oe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:15314) at De (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16906) at Object.Me [as define] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:17978) at eval (https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component.js?eval:1:21) at eval () at Ie (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:14403) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13385) Caused by: XHRLoadError: 404 at n (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9251) at XMLHttpRequest. (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9504) at o (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:3967) at r.dispatch (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:4619) at a.handleEvent (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29547) at XMLHttpRequest.t [as _fnHandler] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29890) at a.send (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:32155) at window.XMLHttpRequest. [as send] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:303:318) at je (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9596) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13287)Caused by: ModuleError: failed to load 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js' from /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js: 404 at we (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:6645) at ge.failWith (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:4709) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13312) at Oe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:15314) at De (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16906) at Object.Me [as define] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:17978) at eval (https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component.js?eval:1:21) at eval () at Ie (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:14403) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13385) Caused by: XHRLoadError: 404 at n (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9251) at XMLHttpRequest. (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9504) at o (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:3967) at r.dispatch (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:4619) at a.handleEvent (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29547) at XMLHttpRequest.t [as _fnHandler] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29890) at a.send (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:32155) at window.XMLHttpRequest. [as send] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:303:318) at je (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9596) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13287)Caused by: XHRLoadError: 404 at n (ui5loader-dbg.js:1369:12) at XMLHttpRequest. (ui5loader-dbg.js:1382:21) at o (sap-xhrlib-esm-dbg.js:5:5038) at r.dispatch (sap-xhrlib-esm-dbg.js:5:5853) at a.handleEvent (sap-xhrlib-esm-dbg.js:5:39890) at XMLHttpRequest.t [as _fnHandler] (sap-xhrlib-esm-dbg.js:5:40399) at a.send (sap-xhrlib-esm-dbg.js:5:43782) at window.XMLHttpRequest. [as send] (XHRInterceptor-dbg.js:58:30) at je (ui5loader-dbg.js:1392:8) at qe (ui5loader-dbg.js:1650:5) we @ ui5loader-dbg.js:1156 failWith @ ui5loader-dbg.js:934 (anonymous) @ ui5loader-dbg.js:1973 Oe @ ui5loader-dbg.js:1856 De @ ui5loader-dbg.js:1972 Me @ ui5loader-dbg.js:2043 eval @ Component.js?eval:1 Ie @ ui5loader-dbg.js:1757 qe @ ui5loader-dbg.js:1658 Oe @ ui5loader-dbg.js:1843 r @ ui5loader-dbg.js:2099 (anonymous) @ Component-dbg.js:3632 (anonymous) @ Component-dbg.js:3630 Promise.then (async) j.registerForDestroy @ Component-dbg.js:3985 j.createComponent @ Component-dbg.js:1340 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 ui5loader-dbg.js:1156 Uncaught (in promise) ModuleError: Failed to resolve dependencies of 'cc/spreadsheetimporter/v1_1_1/Component.js' -> 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js': failed to load 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js' from /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js: 404 at we (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:6645) at ge.failWith (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:4709) at https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16952 at Oe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:15418) at De (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16906) at Object.Me [as define] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:17978) at eval (https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component.js?eval:1:21) at eval () at Ie (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:14403) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13385) Caused by: ModuleError: failed to load 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js' from /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js: 404 at we (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:6645) at ge.failWith (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:4709) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13312) at Oe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:15314) at De (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16906) at Object.Me [as define] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:17978) at eval (https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component.js?eval:1:21) at eval () at Ie (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:14403) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13385) Caused by: XHRLoadError: 404 at n (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9251) at XMLHttpRequest. (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9504) at o (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:3967) at r.dispatch (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:4619) at a.handleEvent (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29547) at XMLHttpRequest.t [as _fnHandler] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29890) at a.send (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:32155) at window.XMLHttpRequest. [as send] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:303:318) at je (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9596) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13287)Caused by: ModuleError: failed to load 'cc/spreadsheetimporter/v1_1_1/controller/SpreadsheetUpload.js' from /sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/controller/SpreadsheetUpload.js: 404 at we (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:6645) at ge.failWith (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:4709) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13312) at Oe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:15314) at De (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:16906) at Object.Me [as define] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:17978) at eval (https://my403259.s4hana.cloud.sap/sap/bc/ui5_ui5/sap/z_xup_comp/thirdparty/customControl/spreadsheetImporter/v1_1_1/~B4F3CBC55B45EB09E9295DF7B041CCF8~5/Component.js?eval:1:21) at eval () at Ie (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:14403) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13385) Caused by: XHRLoadError: 404 at n (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9251) at XMLHttpRequest. (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9504) at o (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:3967) at r.dispatch (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:4619) at a.handleEvent (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29547) at XMLHttpRequest.t [as _fnHandler] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:29890) at a.send (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/thirdparty/sap-xhrlib-esm.js:5:32155) at window.XMLHttpRequest. [as send] (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:303:318) at je (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:9596) at qe (https://ui5.sap.com/1.120.13/resources/sap/ushell_abap/bootstrap/evo/abap.js:9:13287)Caused by: XHRLoadError: 404 at n (ui5loader-dbg.js:1369:12) at XMLHttpRequest. (ui5loader-dbg.js:1382:21) at o (sap-xhrlib-esm-dbg.js:5:5038) at r.dispatch (sap-xhrlib-esm-dbg.js:5:5853) at a.handleEvent (sap-xhrlib-esm-dbg.js:5:39890) at XMLHttpRequest.t [as _fnHandler] (sap-xhrlib-esm-dbg.js:5:40399) at a.send (sap-xhrlib-esm-dbg.js:5:43782) at window.XMLHttpRequest. [as send] (XHRInterceptor-dbg.js:58:30) at je (ui5loader-dbg.js:1392:8) at qe (ui5loader-dbg.js:1650:5) we @ ui5loader-dbg.js:1156 failWith @ ui5loader-dbg.js:934 (anonymous) @ ui5loader-dbg.js:1973 Oe @ ui5loader-dbg.js:1856 De @ ui5loader-dbg.js:1972 Me @ ui5loader-dbg.js:2043 eval @ Component.js?eval:1 Ie @ ui5loader-dbg.js:1757 qe @ ui5loader-dbg.js:1658 Oe @ ui5loader-dbg.js:1843 r @ ui5loader-dbg.js:2099 (anonymous) @ Component-dbg.js:3632 (anonymous) @ Component-dbg.js:3630 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2116 Oe @ ui5loader-dbg.js:1856 r @ ui5loader-dbg.js:2099 (anonymous) @ Component-dbg.js:3632 (anonymous) @ Component-dbg.js:3630 Promise.then (async) V @ Component-dbg.js:3625 z @ Component-dbg.js:2739 j.create @ Component-dbg.js:2455 n @ Component-dbg.js:1507 b.runWithOwner @ ManagedObject-dbg.js:1213 j.runAsOwner @ Component-dbg.js:762 j._createComponent @ Component-dbg.js:1518 j.createComponent @ Component-dbg.js:1338 OnProjectUploadPress @ UploadHeaderObjectPageExtension-dbg.js:14 (anonymous) @ FPMHelper.ts:48 (anonymous) @ ui5loader-dbg.js:2107 setTimeout (async) s @ ui5loader-dbg.js:59 (anonymous) @ ui5loader-dbg.js:2106 Oe @ ui5loader-dbg.js:1858 r @ ui5loader-dbg.js:2099 (anonymous) @ FPMHelper.ts:45 actionWrapper @ FPMHelper.ts:15 y @ ExpressionParser-dbg.js:412 (anonymous) @ ExpressionParser-dbg.js:735 l @ ExpressionParser-dbg.js:915 l.getExternalValue @ CompositeBinding-dbg.js:316 u @ EventHandlerResolver-dbg.js:349 (anonymous) @ EventHandlerResolver-dbg.js:173 r.fireEvent @ EventProvider-dbg.js:241 y.fireEvent @ Element-dbg.js:683 (anonymous) @ ManagedObjectMetadata-dbg.js:826 S.ontap @ Button-dbg.js:599 y._handleEvent @ Element-dbg.js:352 N._handleEvent @ UIArea-dbg.js:1054 dispatch @ jquery-dbg.js:5430 c @ jquery-mobile-custom-dbg.js:1907 d @ jquery-mobile-custom-dbg.js:2030 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 trigger @ jquery-dbg.js:8823 (anonymous) @ jquery-dbg.js:8901 each @ jquery-dbg.js:385 each @ jquery-dbg.js:207 trigger @ jquery-dbg.js:8900 j @ jquery-mobile-custom-dbg.js:1455 L @ jquery-mobile-custom-dbg.js:1465 dispatch @ jquery-dbg.js:5430 y.handle @ jquery-dbg.js:5234 Log-dbg.js:499 2024-06-20 11:17:04.556000 sessionTimeoutReminderInMinutes needs to be higher than sessionTimeoutIntervalInMinutes. sessionTimeoutReminderInMinutes adapted to: 4 - SessionHandler g @ Log-dbg.js:499 t.error @ Log-dbg.js:249 T.init @ SessionHandler-dbg.js:110 (anonymous) @ Shell-dbg.controller.js:3013 ```

Spreadsheet Component Init

Below is from FE controller extension, note it's same as your sample code except _view instead of getView() as for some reason that was failing to resolve, was going to address but stuck with component not initialising
    return {
        OnProjectUploadPress: async function(event) {
            MessageToast.show("Custom handler invoked.");
            this._view.setBusyIndicatorDelay(0);
            this._view.setBusy(true);
            this.spreadsheetUpload = await this._view
              .getController()
              .getAppComponent()
              .createComponent({
                usage: "spreadsheetImporter",
                async: true,
                componentData: {
                  context: this,
                  useTableSelector: true
                },
              });
            this.spreadsheetUpload.openSpreadsheetUploadDialog();
            this._view.setBusy(false);
        }
    };

Manifest

Here's start of sap.ui5 with componentUsages, no resourceRoots specified. I tried various settings with that but no luck. 

  "sap.ui5": {
    "flexEnabled": true,
    "dependencies": {
      "minUI5Version": "1.120.13",
      "libs": {
        "sap.m": {},
        "sap.ui.core": {},
        "sap.ushell": {},
        "sap.fe.templates": {}
      }
    },
    "componentUsages": {
      "spreadsheetImporter": {
        "name": "cc.spreadsheetimporter.v1_1_1"
      }
    },
chrismills commented 4 months ago

Hey @marianfoo I was playing with this a bit more and undeployed the central package and instead tried decentral deployment and it loads ok that way....but aware i'll have issues re-using in multiple apps, or maybe i just need to start with my own central template from scratch?

marianfoo commented 4 months ago

Hi @chrismills thank you for opening the issue. I wrote Public Cloud because i was expecting it would work the same. It is just a component deployment.

In a production scenario the app should only load the component-preload file. As you have already written, since the preload was not found, the others are loaded.

Did you deploy it with this app? https://github.com/spreadsheetimporter/packed-deployment-abap

A little background: If you make a decentralized deployment, the component is deployed in the app and is then available in the app index. This means you could also use it in other apps. What the app mentioned above does is exactly the same, only as a separate app. The problem is, for example, if you now update the component in the app, the version disappears from the index. That's why it's better to deploy the components in a dedicated app (and i also don´t recommend decentral deployment anymore)

As long the component is in the app index. then you can use it in other apps as well.

So, the preload should be available also in the public cloud system, so i don´t understand the difference to the normal system, especially when you tested it on a on-premise system.

You can also insert the component to preload at the start, but should be the same result in all scenarios:

  "sap.ui5": {
    "flexEnabled": true,
    "dependencies": {
      "minUI5Version": "1.120.13",
      "libs": {
        "sap.m": {},
        "sap.ui.core": {},
        "sap.ushell": {},
        "sap.fe.templates": {}
      }
    },
    "componentUsages": {
      "spreadsheetImporter": {
        "name": "cc.spreadsheetimporter.v1_1_1"
      }
    },

if possible, can you do a central deployment and post the return from https://<MY_S4HC_HOST>.s4hana.cloud.sap/sap/bc/ui2/app_index/ui5_app_info?id=cc.spreadsheetimporter.v1_1_1 Maybe both public cloud and onpremise. Again, i can´t really explain a difference. Whats the current release from the on-premise system?

chrismills commented 4 months ago

Hey Marian, thanks for your quick reply and sorry for my slow one! I was hoping to grab some logs with my current solution vs the cloned central deployment but i've had to work on another project the last few days. I'll be working on this again in the next couple of days and will attach the comparison.

Good work with the project, from the testing i've done so far it looks great, things like the upload preview and handling files with errors is excellent.

Be in touch soon

chrismills commented 4 months ago

Hi Marian,

I've spent some time this evening looking at it and identified the cause - it's case sensitive urls.

In the packed deployment app's manifest within the embeds section here you refer to the components in camel case

thirdparty/customControl/spreadsheetImporter/v1_1_1

however if you look at the /dist folder after doing a build you can see the subfolders under thirdparty are all just lowercase. The above results in the

https://.s4hana.cloud.sap/sap/bc/ui2/app_index/ui5_app_info?id=cc.spreadsheetimporter.v1_1_1

returning the camelCase url:

image

Interestingly it appears the ICF is not case sensitive for component files as you can see below:

image

but is case sensitive for Component-preload.js and many others:

image

image

It appears it initially worked inside my own project not using the central deployment as your documentation has the correct details which I must have copied: image

but this is not reflected in the sample packed deployment app https://github.com/spreadsheetimporter/packed-deployment-abap/blob/main/webapp/manifest.json

I haven't checked my on prem S4 2021 system but presume it must not be case sensitive unlike S4 2402 Public Cloud

marianfoo commented 4 months ago

Ah, thanks for debugging! That's a really stupid mistake on my part, I corrected it immediately in the repo. https://github.com/spreadsheetimporter/packed-deployment-abap/commit/9c05c66d33a1236726529feb4b53e82dc3d29739 Ideally, a redeployment should be enough Can you please try that?

But interesting that this is not the same error on-premise. I just checked and in a S/42023 the URL is lowercase. The descriptorURL is not lowercase. What is it in the public cloud system? The screenshot is cut off.

chrismills commented 4 months ago

Wow super quick response thanks Marian :) I just pulled and the changes look good, there's one more extra complication on public cloud - the BSP path will be blocked unless the manifest defines a tile for the app (sap.app->crossNavigation->outbounds as this gives it a FLP descriptor which can then be assigned to an IAM app, then added to a business catalog, then added to a role and finally you get access.

I'll add the tile now and confirm back, just takes a little while for it to activate it all. I'll also send through some more info on these extra steps for public cloud so you can add it to docs.

chrismills commented 4 months ago

Ok looks good, typo on my last comment that its the inbounds in crossNavigation, not outbounds. Below is a diff of the edit I made for this:

image

Which when I deploy creates the "FLP App Descriptor": image

Which can then be assigned to an IAM app: image

And this can then be added to a business catalog and then in the launchpad assigned to a business role and the role to users.

This does mean there is a random tile users can find for the central deployment app but not a big deal, without all the above you get "Blocked by UCON".

Let me know if you want any more info on the above for the docs, I'll close this ticket now since its working

Thanks again :)

Chris

marianfoo commented 4 months ago

Thanks @chrismills i created two new issues to improve this. I will ping you when i created the PRs so you can check if the improvments are ok

marianfoo commented 4 months ago

@chrismills what do you think about this? https://github.com/spreadsheetimporter/ui5-cc-spreadsheetimporter/pull/585 any information missing?

chrismills commented 4 months ago

Hey Marian, looks good only comment i'd say is my crossNavigation inbounds settings were a bit rough just for testing so you might want to potentially rename some of the properties like below which also adds i18n. PS I think a typo here (should be parameters?)

Don't mind what you call all these though, whatever suits naming conventions in rest of project :)

flpTitle=Spreadsheet Importer flpSubtitle=Carrier app

 "crossNavigation": {
      "inbounds": {
        "SpreadsheetImporter-display": {
          "semanticobject": "SpreadsheetImporter",
          "action": "display",
          "title": "{{flpTitle}}",
          "subTitle": "{{flpSubtitle}}",
          "signature": {
            "parameters": {},
            "additionalParameters": "allowed"
          }
        }
      }
    }
marianfoo commented 4 months ago

@chrismills i fixed that, thank you!