https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/topics/HTML5-qa.xml SAP Community - HTML5 2026-02-11T00:10:52.690075+00:00 python-feedgen HTML5 Q&A in SAP Community https://community.sap.com/t5/technology-q-a/application-frontend-service-with-standalone-approuter/qaq-p/14147762 Application Frontend Service with standalone approuter 2025-07-08T23:43:01.033000+02:00 MioYasutake https://community.sap.com/t5/user/viewprofilepage/user-id/789 <P>Hi community,</P><P>I am exploring&nbsp;Application Frontend Service in a BTP trial account and now developing an MTA consisting of a standalone approuter, a UI module, and a CAP backend. Initially, I configured the UI to use the HTML5 Application Repository to ensure it worked properly.</P><P>Then, I switched to using Application Frontend Service , referencing to the <A href="https://help.sap.com/docs/application-frontend-service/application-frontend-service/deploying-multi-target-applications-with-generic-application-content-deployer-to-application-frontend-service?locale=en-US&amp;q=approuter" target="_self" rel="noopener noreferrer">document</A>.</P><P>Although the deployment was successful, accessing the UI through the approuter resulted in a 404 error. The initial xs-app.json of the application router was:</P><pre class="lia-code-sample language-json"><code>{ "welcomeFile": "miyasutabooksafs", "authenticationMethod": "route", "routes": [ { "source": "^/(.*)$", "target": "$1", "destination": "srv-api", "csrfProtection": true } ] }</code></pre><P>In this configuration, requests to `miyasutabooksafs` were routed to the CAP application. Then, I modified the routes as follows:</P><pre class="lia-code-sample language-json"><code>{ "welcomeFile": "miyasutabooksafs", "authenticationMethod": "route", "routes": [ { "source": "^/odata/(.*)$", "target": "/odata/$1", "destination": "srv-api", "authenticationType": "xsuaa", "csrfProtection": false }, { "source": "^(.*)$", "target": "$1", "service": "app-front", "authenticationType": "xsuaa" } ] }</code></pre><P>However, this resulted in a deployment error of the approuter.</P><pre class="lia-code-sample language-bash"><code>VError: xs-app.json/routes/1: Format validation failed (A route requires access to app-front service but the service is not bound.)</code></pre><P>The application frontend service is bound to the approuter in mta.yaml.</P><pre class="lia-code-sample language-yaml"><code> - name: srv-api group: destinations properties: forwardAuthToken: true name: srv-api url: ~{srv-url} - name: cap-afs-auth # - name: cap-afs-html5-runtime - name: cap-afs-afs # Application Frontend Service, developer plan</code></pre><P>My GitHub repo:&nbsp;<A href="https://github.com/miyasuta/cap-afs/tree/appruntime" target="_blank" rel="noopener nofollow noreferrer">https://github.com/miyasuta/cap-afs/tree/appruntime</A></P><P><STRONG>Question:</STRONG></P><P>What is missing or incorrect in my configuration?<BR />Any insights or working examples would be greatly appreciated!</P> 2025-07-08T23:43:01.033000+02:00 https://community.sap.com/t5/technology-q-a/html5-not-visible-in-the-bwz/qaq-p/14148461 HTML5 not visible in the BWZ 2025-07-09T16:26:34.288000+02:00 theodore_abitbol https://community.sap.com/t5/user/viewprofilepage/user-id/2177874 <P>Hello everyone!<BR /><BR />I am trying to deploy this template app from the SAP documentation through Cloud Foundry:<BR /><A href="https://github.com/SAP-samples/build-workzone-integration/tree/main/standard/html5-content-provider-sample/ManageProducts" target="_blank" rel="noopener nofollow noreferrer">build-workzone-integration/standard/html5-content-provider-sample/ManageProducts at main · SAP-samples/build-workzone-integration</A></P><P>and after building the mta.yaml and deplying the .mtar archive,&nbsp;it does not appear in the Build Work Zone, standard edition.&nbsp;<BR /><BR />I have modified the Destinations accordingly, and they appear in the cocktpit &gt; Destinations. The app itself also appears in the cockpit &gt; HTML5 Applications, and it runs smoothly.&nbsp;<BR /><BR />Yet, nothing appears in the Build work zone Content manager, or in the Content provider, even after a refresh.<BR /><BR />I have noticed that I could add a new content provider, using the two Destinations generated during deployment, and that makes a role available, but no App, no catalog, and no group, as defined in the cdm.json. This content provider is thus not really useful, and anyway it defeats the purpose of deploying the app and its content through&nbsp;GACD.&nbsp;</P><P><BR />Has there been any changes in the objects that can be deployed with the cdm? The last modifications in the repo are 10 months old so it's possible, but I can't find anything about that in the documentation or the blog.</P><P>I've been stuck on this issue for the better part of the week, and while I think I have made some progresses, I'm still at loss about the root of the issue.<BR /><BR />Thanks a lot for your guidance!</P> 2025-07-09T16:26:34.288000+02:00 https://community.sap.com/t5/technology-q-a/fiori-elements-display-tree-structure-using-odata-annotation-code-based/qaq-p/14162450 Fiori Elements: Display Tree-Structure using OData Annotation (Code Based) 2025-07-25T12:37:39.126000+02:00 orianda_thomas https://community.sap.com/t5/user/viewprofilepage/user-id/1667206 <P>Hello,</P><P>I want to create a Tree Table with Fiori Elements using SEGW, but I'm not able to do so.</P><P>I try to follow this posts:<BR /><A href="https://community.sap.com/t5/application-development-and-automation-blog-posts/fiori-elements-display-tree-structure-using-odata-annotation-code-based/ba-p/13645333" target="_blank">Fiori Elements: Display Tree-Structure using OData... - SAP Community</A><BR /><A href="https://community.sap.com/t5/technology-blog-posts-by-members/fiori-elements-tree-table-with-sap-annotations/ba-p/13399642" target="_blank">Fiori Elements Tree Table with SAP Annotations - SAP Community</A></P><P>This is my data table:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="orianda_thomas_0-1753438761135.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/291423i9F0AFD06D709F443/image-size/medium?v=v2&amp;px=400" role="button" title="orianda_thomas_0-1753438761135.png" alt="orianda_thomas_0-1753438761135.png" /></span></P><P>This are the fields:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="orianda_thomas_1-1753438801530.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/291424iB531865FCA4F9802/image-size/medium?v=v2&amp;px=400" role="button" title="orianda_thomas_1-1753438801530.png" alt="orianda_thomas_1-1753438801530.png" /></span></P><P>&nbsp;</P><P>These are my CDS Views:</P><DIV><DIV><P><SPAN>@AccessControl.authorizationCheck:</SPAN> <SPAN>#NOT_REQUIRED</SPAN></P><P><SPAN>@EndUserText.label:</SPAN> <SPAN>'Intermediate View for Tree Structure'</SPAN></P><P><SPAN>define</SPAN> <SPAN>view</SPAN> <SPAN>entity</SPAN> <SPAN>ZCDS_I_TREE_STRUCTURE</SPAN></P><P><SPAN>as</SPAN> <SPAN>select</SPAN> <SPAN>from</SPAN> <SPAN>ztree_table</SPAN></P><P><SPAN>{</SPAN></P><P><SPAN>key</SPAN> <SPAN>id</SPAN><SPAN>,</SPAN></P><P><SPAN>parentid</SPAN><SPAN>,</SPAN></P><P><SPAN>hierlevel</SPAN><SPAN>,</SPAN></P><P><SPAN>drilldownstate</SPAN><SPAN>,</SPAN></P><P><SPAN>nodename</SPAN><SPAN>,</SPAN></P><P><SPAN>nodedescription</SPAN></P><P><SPAN>}</SPAN></P></DIV></DIV><P>&nbsp;</P><DIV><DIV><P><SPAN>@EndUserText.label:</SPAN> <SPAN>'Konsumptions-View für ZTREE_TABLE'</SPAN></P><P><SPAN>@AccessControl.authorizationCheck:</SPAN> <SPAN>#NOT_REQUIRED</SPAN></P><P><SPAN>//@OData.publish: true</SPAN></P><P><SPAN>@UI.headerInfo:</SPAN> <SPAN>{</SPAN></P><P><SPAN>typeName:</SPAN> <SPAN>'Knoten',</SPAN></P><P><SPAN>typeNamePlural:</SPAN> <SPAN>'Knoten'</SPAN></P><P><SPAN>}</SPAN></P><P><SPAN>@Hierarchy.parentChild:</SPAN> <SPAN>[{</SPAN></P><P><SPAN>name:</SPAN> <SPAN>'TreeHierarchy',</SPAN></P><P><SPAN>recurse:</SPAN> <SPAN>{</SPAN></P><P><SPAN>parent:</SPAN> <SPAN>['parentid'],</SPAN></P><P><SPAN>child:</SPAN> <SPAN>['id']</SPAN></P><P><SPAN>},</SPAN></P><P><SPAN>siblingsOrder</SPAN><SPAN>:</SPAN> <SPAN>[{</SPAN></P><P><SPAN>by:</SPAN> <SPAN>'nodename',</SPAN></P><P><SPAN>direction:</SPAN> <SPAN>#ASC</SPAN></P><P><SPAN>}],</SPAN></P><P><SPAN>rootNode:</SPAN> <SPAN>{</SPAN></P><P><SPAN>visibility:</SPAN> <SPAN>#ADD_ROOT_NODE_IF_DEFINED</SPAN></P><P><SPAN>},</SPAN></P><P><SPAN>orphanedNode:</SPAN> <SPAN>{</SPAN></P><P><SPAN>handling:</SPAN> <SPAN>#ROOT_NODES</SPAN></P><P><SPAN>}</SPAN></P><P><SPAN>}]</SPAN></P><P><SPAN>define</SPAN> <SPAN>view</SPAN> <SPAN>entity</SPAN> <SPAN>ZCDS_C_TREE_STRUCTURE</SPAN></P><P><SPAN>as</SPAN> <SPAN>select</SPAN> <SPAN>from</SPAN> <SPAN>ZCDS_I_TREE_STRUCTURE</SPAN></P><P><SPAN>{</SPAN></P><P>&nbsp;</P><P><SPAN>key</SPAN> <SPAN>id</SPAN><SPAN>,</SPAN></P><P><SPAN>parentid</SPAN><SPAN>,</SPAN></P><P><SPAN>hierlevel</SPAN><SPAN>,</SPAN></P><P><SPAN>drilldownstate</SPAN><SPAN>,</SPAN></P><P><SPAN>@UI.lineItem:</SPAN> <SPAN>[{</SPAN> <SPAN>position:</SPAN> <SPAN>10,</SPAN> <SPAN>label:</SPAN> <SPAN>'Node Name'</SPAN> <SPAN>}]</SPAN></P><P><SPAN>nodename</SPAN><SPAN>,</SPAN></P><P><SPAN>@UI.lineItem:</SPAN> <SPAN>[{</SPAN> <SPAN>position:</SPAN> <SPAN>20,</SPAN> <SPAN>label:</SPAN> <SPAN>'Node Description'</SPAN> <SPAN>}]</SPAN></P><P><SPAN>nodedescription</SPAN></P><P><SPAN>}</SPAN></P><P>&nbsp;</P></DIV></DIV><P>&nbsp;</P><P>In SEGW I created a project and the did a right click on "Data Model"&nbsp; then "Reference" / "Data Source" and chose my ZCDS_C_TREE_STRUCTURE. Icreated the runtime objects and redefined the method "define" in my *MPC_EXT class with the following code:<BR /><BR /><BR /></P><pre class="lia-code-sample language-abap"><code>METHOD define. super-&gt;define( ). DATA: lr_entity TYPE REF TO /iwbep/if_mgw_odata_entity_typ, lr_property TYPE REF TO /iwbep/if_mgw_odata_property, lr_annotation TYPE REF TO /iwbep/if_mgw_odata_annotation. lr_entity = model-&gt;get_entity_type( iv_entity_name = 'ZCDS_C_TREE_STRUCTUREType' ). IF lr_entity IS BOUND. " 1. id als Knoten-ID lr_property = lr_entity-&gt;get_property( iv_property_name = 'id' ). lr_annotation = lr_property-&gt;/iwbep/if_mgw_odata_annotatabl~create_annotation( iv_annotation_namespace = /iwbep/if_mgw_med_odata_types=&gt;gc_sap_namespace ). lr_annotation-&gt;add( iv_key = /iwbep/if_ana_odata_types=&gt;gcs_ana_odata_annotation_key-hierarchy_node_for iv_value = 'id' ). " 2. RELATKEY als Parent Node lr_property = lr_entity-&gt;get_property( iv_property_name = 'parentid' ). lr_annotation = lr_property-&gt;/iwbep/if_mgw_odata_annotatabl~create_annotation( iv_annotation_namespace = /iwbep/if_mgw_med_odata_types=&gt;gc_sap_namespace ). lr_annotation-&gt;add( iv_key = /iwbep/if_ana_odata_types=&gt;gcs_ana_odata_annotation_key-hierarchy_parent_node_for iv_value = 'id' ). " 3. SeqNo als Hierarchieebene lr_property = lr_entity-&gt;get_property( iv_property_name = 'hierlevel' ). lr_annotation = lr_property-&gt;/iwbep/if_mgw_odata_annotatabl~create_annotation( iv_annotation_namespace = /iwbep/if_mgw_med_odata_types=&gt;gc_sap_namespace ). lr_annotation-&gt;add( iv_key = /iwbep/if_ana_odata_types=&gt;gcs_ana_odata_annotation_key-hierarchy_level_for iv_value = 'id' ). " 4. drill_state als Drill-Down-Zustand lr_property = lr_entity-&gt;get_property( iv_property_name = 'drilldownstate' ). lr_annotation = lr_property-&gt;/iwbep/if_mgw_odata_annotatabl~create_annotation( iv_annotation_namespace = /iwbep/if_mgw_med_odata_types=&gt;gc_sap_namespace ). lr_annotation-&gt;add( iv_key = /iwbep/if_ana_odata_types=&gt;gcs_ana_odata_annotation_key-hierarchy_drill_state_for iv_value = 'id' ). ENDIF. ENDMETHOD.</code></pre><P>If I create then the Responsive Table in the BAS, it shows me my data correctly. When I change to type "TreeTable", it shows me "No data found".</P><P>What am I doing wrong?</P><P>Thanks and best regards<BR />Thomas</P><P><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1421435">@MR_srinivas</a>&nbsp;<BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/346">@SumitKundu</a>&nbsp;<BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/42347">@jmalla</a>&nbsp;</P> 2025-07-25T12:37:39.126000+02:00 https://community.sap.com/t5/technology-q-a/build-work-zone-html5-business-solutions-vs-html5-apps-using-saas-approuter/qaq-p/14165509 BUILD Work Zone - HTML5 Business Solutions vs HTML5 apps using saas_approuter 2025-07-29T10:06:34.893000+02:00 FabioPagoti https://community.sap.com/t5/user/viewprofilepage/user-id/172350 <P>I just came across the idea of HTML5 Business Solutions in SAP Work Zone.</P><P><A href="https://help.sap.com/docs/build-work-zone-standard-edition/sap-build-work-zone-standard-edition/developing-html5-apps-for-cross-subaccount-consumption" target="_blank" rel="noopener noreferrer">Developing HTML5 Business Solutions as Content Providers | SAP Help Portal</A></P><P><A href="https://help.sap.com/docs/build-work-zone-standard-edition/sap-build-work-zone-standard-edition/content-providers-html5-apps-across-subaccounts?locale=en-US" target="_blank" rel="noopener noreferrer">Federation of HTML5 Business Solutions | SAP Help Portal</A></P><P>Checking the use cases, it feels that this is target for partner apps when it comes to multitenancy. However there is the possibility to create single tenant apps.&nbsp;</P><P>Based on that I have a few general questions:&nbsp;</P><P>1) Is it possible to create a single tenant solution containing only the front end part of an app? (similar to a HTML5 app using saas_approuter)? If yes, what would be the advantages/main differences on doing so? Any sample repositories are appreciated.</P><P>2) A bit of&nbsp;futurology, is it possible that HTML5 apps created using saas_approuter will be deprecated in favor of HTML5 Business Solutions? I ask that mainly after Roadmap item <A href="https://roadmaps.sap.com/board?PRODUCT=73554900100800003081&amp;range=FIRST-LAST#;INNO=000D3AAC9DD21EDC98D3265730CC683D" target="_self" rel="noopener noreferrer">"Automatic content refresh for integrated HTML5 applications after update"</A>&nbsp;not targeting saas_approuter but only Business Solutions</P><P>If anyone from SAP can explain what was the concept behind Business Solutions, specially a single tenant scenario are very appreciated. Are such apps internally handled differently? Is there any relevant difference on the managed router of such scenarios?</P><P>Thanks in advance,</P><P>&nbsp;</P> 2025-07-29T10:06:34.893000+02:00 https://community.sap.com/t5/technology-q-a/unable-to-see-in-html5-application-in-sap-btp-cockpit-subaccount/qaq-p/14172094 unable to see in HTML5 Application in SAP BTP COCKPIT Subaccount 2025-08-05T13:32:52.972000+02:00 Govind1010 https://community.sap.com/t5/user/viewprofilepage/user-id/2129069 <P>Can you please share what are the steps you have followed for the above Issue?</P><P>I'm also facing the same issue/error.</P> 2025-08-05T13:32:52.972000+02:00 https://community.sap.com/t5/technology-q-a/navigation-issue-in-cap-ui5-apps-on-btp-cf-fiori-launchpad-after-page/qaq-p/14174599 Navigation Issue in CAP UI5 Apps on BTP CF Fiori Launchpad After Page Refresh 2025-08-07T12:26:15.033000+02:00 devbot https://community.sap.com/t5/user/viewprofilepage/user-id/1879805 <P>Hi all,</P><P><SPAN>We are building several CAP-based UI5 applications deployed on BTP Cloud Foundry.</SPAN></P><P><SPAN>When these applications run inside the Fiori Launchpad (FLP), we encounter a navigation issue: if a user refreshes the page explicitly, they are unable to navigate back using either the browser’s back button or the Launchpad’s NavBack button (next to the SAP home icon). Initially, the user remains stuck on the current page (the browser hash doesn’t change either). After a few clicks, they are suddenly redirected straight to the FLP home page.</SPAN></P><P><SPAN>There are no errors/warnings/info in the browser's console log.</SPAN></P><P><SPAN>This issue&nbsp;</SPAN><STRONG>does not occur</STRONG><SPAN>&nbsp;when the same UI5 apps are run in standalone mode (accessed via the HTML5 Applications tab in the BTP Cockpit), nor does it affect Fiori Elements apps running in FLP.</SPAN></P><P><SPAN><SPAN>Here’s how we handle navigation and routing in our UI5 app view controllers (TypeScript):</SPAN><BR /><BR /><STRONG>Navigating Forward</STRONG></SPAN></P><pre class="lia-code-sample language-javascript"><code>// params are routing parameters such as mandatory parameter public navToView(viewName: string, params?: object): void { this.getRouter().navTo(viewName, params ? params : {}); }</code></pre><P>Example usage:</P><pre class="lia-code-sample language-javascript"><code>public onNavToNextView(): void { this.navToView("nextView"); }</code></pre><P>We even added a nav back button, but it has the same problem as well.</P><P><STRONG>Navigating Back</STRONG></P><pre class="lia-code-sample language-javascript"><code>// same, params is just an obj for routing parameters public navBackToView(viewName: string, params?: object): void { const history = History.getInstance(); const previousHash = history.getPreviousHash(); if (previousHash !== undefined) { window.history.go(-1); } else { this.getRouter().navTo(viewName, params ? params : {}, true); } }</code></pre><P>Example usage:</P><pre class="lia-code-sample language-javascript"><code>// press event for nav back button public onNavBack(): void { this.navBackToView("previousView"); }</code></pre><P>This is how we initialise the router in the Component.ts file:</P><pre class="lia-code-sample language-javascript"><code>this.getRouter().initialize();</code></pre><P>This is the routing configuration in the manifest.json file:</P><pre class="lia-code-sample language-javascript"><code>"routing": { "config": { "routerClass": "sap.m.routing.Router", "controlAggregation": "pages", "controlId": "app", "transition": "slide", "type": "View", "viewType": "XML", "path": "myapp.view", "async": true, "bypassed": { "target": "notFound" } }, "routes": [ { "name": "RouteHome", "pattern": ":?query:", "target": ["TargetHome"] }, { "pattern": "login", "name": "login", "target": "login" } ], "targets": { "TargetHome": { "id": "Home", "name": "Home", "level": 1 }, "login": { "viewName": "Login", "viewId": "login", "level": 1 }, "notFound": { "id": "notFound", "name": "NotFound", "transition": "show" } } }</code></pre><P>&nbsp;</P><P>Are we missing something in our implementation? We’ve followed <A href="https://ui5.sap.com/#/topic/6173e3d583b84c3696503e1d7c3761c1" target="_blank" rel="noopener noreferrer">UI5 examples</A> from the Demo Kit. Could this be a known or unknown issue/bug with FLP itself?</P><P>Any insights or suggestions would be greatly appreciated!</P><P>Thank you.</P><P>&nbsp;</P> 2025-08-07T12:26:15.033000+02:00 https://community.sap.com/t5/technology-q-a/html5-application-logging-in-btp-cocpit-neo-environment/qaq-p/14174657 HTML5 Application Logging in BTP Cocpit - Neo Environment 2025-08-07T13:17:42.131000+02:00 Ramesh_Kalimuthu https://community.sap.com/t5/user/viewprofilepage/user-id/1692602 <P>Hi SAP Community,</P><P>I’m currently working on an SAPUI5 HTML5 application deployed in the<SPAN>&nbsp;</SPAN><STRONG>SAP BTP Neo environment</STRONG>, and I’ve encountered an issue with logging.</P><P>I’ve implemented client-side logging using the standard SAPUI5 logging API:</P><P><SPAN><!-- ScriptorStartFragment --></SPAN></P><DIV class=""><SPAN>sap</SPAN><SPAN>.ui</SPAN><SPAN>.define</SPAN><SPAN>(</SPAN><SPAN>[</SPAN><SPAN>"sap/base/Log"</SPAN><SPAN>]</SPAN><SPAN>,</SPAN> <SPAN>function</SPAN><SPAN>(</SPAN><SPAN>Log</SPAN><SPAN>)</SPAN> <SPAN>{</SPAN></DIV><DIV class=""><SPAN>&nbsp;&nbsp;&nbsp; </SPAN><SPAN>Log</SPAN><SPAN>.error</SPAN><SPAN>(</SPAN><SPAN>"An error occurred"</SPAN><SPAN>,</SPAN> <SPAN>"Detailed error message"</SPAN><SPAN>,</SPAN> <SPAN>"my.app.Component"</SPAN><SPAN>)</SPAN><SPAN>;</SPAN></DIV><DIV class=""><SPAN>}</SPAN><SPAN>)</SPAN><SPAN>;</SPAN></DIV><P><SPAN><!-- ScriptorEndFragment --></SPAN></P><P>After deploying the application, I expected these logs to appear in the<SPAN>&nbsp;</SPAN><STRONG>SAP BTP Neo Cockpit -&gt; Monitoring -&gt; Logs</STRONG><SPAN>&nbsp;</SPAN>section. However, I’m not seeing any of the custom logs there. I’ve verified that the application is running correctly and that the logs do appear in the browser console during runtime.</P><P>I also noticed that the<SPAN>&nbsp;</SPAN><STRONG>Application Logging Service</STRONG><SPAN>&nbsp;</SPAN>is not available in my Neo subaccount, which limits my options for centralized logging.</P><H3 id="toc-hId-1866027756">My Questions:</H3><OL><LI>Are client-side logs from SAPUI5 apps automatically captured in the Neo Cockpit?</LI><LI>Is there a recommended way to push custom logs from HTML5 apps to the Cockpit in Neo?</LI><LI>Are there any alternative logging mechanisms or services available for Neo HTML5 apps?</LI><LI>Has anyone successfully implemented a workaround or custom logging integration?</LI></OL><P>Any guidance, suggestions, or examples would be greatly appreciated!</P><P>Thanks in advance,<BR /><STRONG>Ramesh K</STRONG></P> 2025-08-07T13:17:42.131000+02:00 https://community.sap.com/t5/technology-q-a/how-to-use-local-copy-parameters-html5-application-on-work-zone-advanced/qaq-p/14176467 How to use local copy parameters html5 application on work zone advanced such as adding variant ID 2025-08-09T14:04:46.554000+02:00 CDN_Steve https://community.sap.com/t5/user/viewprofilepage/user-id/699284 <P>Hello,</P><P>We have Work Zone Advanced and have built and deployed various HTML5 apps via Business Application Studio running on Cloud Foundry using OData v4. No backend content to systems such as S/4HANA, all local to BTP.&nbsp;</P><P>We are creating local copies of the deployed dynamic applications to manage dynamic content for counters and titles. We are attempting to have the applications open with preselected filters but are having issues.&nbsp;</P><OL><LI>Cannot use operators or regular expressions for filtering fields and sorting in the parameters with the content manager local copy of the application.<UL><LI>We have attempted various ways in both the Navigation and Visualization tabs for setting filter and sorting with only success with single values and equals as the operator. For example, we cannot find a way to filter for filter = &lt;empty&gt;</LI></UL></LI><LI>As an alternate method we attempted to follow instructions to map a variant as part of the parameters, however this was also not successful.<BR /><UL><LI>We collected the variant id from dev tools &gt; network &gt; changes?sap-language=en and collecting the filename such as&nbsp;<UL><LI><SPAN class=""><SPAN class="">fileName</SPAN><SPAN class="">: </SPAN><SPAN class="">"id_1754739886907_236_flVariant"</SPAN></SPAN></LI><LI><SPAN class=""><SPAN class="">fileType</SPAN><SPAN class="">: </SPAN><SPAN class="">"ctrl_variant"</SPAN></SPAN></LI><LI><SPAN class=""><SPAN class="">layer</SPAN><SPAN class="">: </SPAN><SPAN class="">"PUBLIC"</SPAN></SPAN></LI></UL></LI><LI>We followed the guides to add the parameter variable such as&nbsp;<SPAN>sap-ui-fe-variant-id and others in the link below as well as variantKey, however none of which worked. This could be due to potentially a wrong variant id however we only see one fileName captured in the Network during a variant save event as described above.&nbsp;</SPAN><UL><LI><A href="https://help.sap.com/docs/ABAP_PLATFORM_NEW/468a97775123488ab3345a0c48cadd8f/4132ffa02f1148058a78dfb11c8567b0.html" target="_blank" rel="noopener noreferrer">https://help.sap.com/docs/ABAP_PLATFORM_NEW/468a97775123488ab3345a0c48cadd8f/4132ffa02f1148058a78dfb11c8567b0.html</A>&nbsp;</LI></UL></LI></UL></LI></OL><P>&nbsp;</P><P>The guidance and documentation on the usages of the navigation and visualization parameters within the work zone advance content manager UI is not clear. The general question is there clear guidance on how to setup parameters, what parameters can be used, how to open the app with a defined variant etc.?&nbsp;</P><P>&nbsp;</P> 2025-08-09T14:04:46.554000+02:00 https://community.sap.com/t5/technology-q-a/approuter-error-getting-client-credentials/qaq-p/14193568 Approuter: Error getting client_credentials 2025-08-26T21:53:18.480000+02:00 bmcdonn2 https://community.sap.com/t5/user/viewprofilepage/user-id/248073 <P>We operate a multi-tenant solution on SAP BTP and rely on the&nbsp;<A href="https://www.npmjs.com/package/@sap/approuter" target="_self" rel="nofollow noopener noreferrer">@sap/approuter</A>&nbsp;package as our initial entry-point which connects to the portal service and a number of Fiori Elements HTML5 applications hosted using html5-apps-repo services. This is a setup we have used for many years without any issue.</P><P>We recently bumped the version of the approuter package from 16.4.x to the 20.6.1 and after deploying this change in our production environment, we started getting reports of intermittent issues loading HTML5 apps:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="bmcdonn2_0-1756237162121.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/305277iEB2E405C63A2A2CC/image-size/medium?v=v2&amp;px=400" role="button" title="bmcdonn2_0-1756237162121.png" alt="bmcdonn2_0-1756237162121.png" /></span></P><P>I inspected the approuter logs and found that we had a number of errors matching this format:</P><PRE><SPAN>Error getting client_credentials token for html5-apps-repo-rt from subaccount &lt;tenant-subdomain&gt;: <BR />HTTP response from https://&lt;tenant-subdomain&gt;.authentication.us10.hana.ondemand.com/oauth/token was 401: <BR />{"error":"invalid_client","error_description":"Bad credentials"}.</SPAN></PRE><P>&nbsp;I referred back to the CHANGELOG.md for the approuter package and noticed that there had recently been some changes related to client credentials. I also noticed that a new version of the package was available (20.7.0) included a fix related to client_credentials and saas which I thought might address the issue we were experiencing:</P><PRE>- Read grant_type and saas.registry.enabled from service credentials in client_credentials token flow</PRE><P>We applied this update but are still experiencing the same behavior.&nbsp;</P><P>I recognize that jumping multiple major versions (16-&gt;20) of a package has the potential for unexpected outcomes but the CHANGELOG.md did not have any indications that changes between any of these versions introduced major breaking changes.&nbsp;</P><P>If anyone can provide any insights on how to proceed, it would be greatly appreciated.</P> 2025-08-26T21:53:18.480000+02:00 https://community.sap.com/t5/technology-q-a/ui5-application-works-from-bas-but-from-html5-repo-it-gives-404-error/qaq-p/14206884 UI5 Application works from BAS, but from HTML5 Repo, it gives 404 Error 2025-09-04T09:14:31.402000+02:00 saikrishna186 https://community.sap.com/t5/user/viewprofilepage/user-id/196315 <P>Hi There,</P><P>Good day !<BR />We are migrating our exiting Freestyle Ui5 applications from NEO to CF.</P><P>As part of migration process, we imported the app in BAS, configured oData destination, prefix etc.<BR />The app and oData calls work when running it from BAS.</P><P>When deploy from BAS to CF, we could see the app in HTML5 repository, also 3 service instances with 4 service keys altogather.<BR />When I try to run the app from CF (HTml5 Repo, app URL link), I get 404 errors for metadata load, and thus the app load is failing.<BR />Following several answers in checked mta, ui5.yaml etc from web, I did removed "/" prefix, applied prefix etc, nothing worked.</P><P>I did check, the backend destination, path, prefix, url in ui5.yaml didn't find anything wrong.<BR />The difference I see in metadata call is</P><P>From BAS successful :&nbsp;<SPAN><A href="https://port8080-workspaces-ws-xl2uw.XXXXXX.applicationstudio.cloud.sap/&lt;Neo's" target="_blank" rel="nofollow noopener noreferrer">https://port8080-workspaces-ws-xl2uw.XXXXXX.applicationstudio.cloud.sap/&lt;Neo</A>destination prefix&gt;/odata/&lt;serviceName&gt;/$metadata?sap-client=500&amp;sap-language=EN</SPAN></P><P><SPAN>From HTML5 Repo un-successful: <A href="https://cloudfoundry-" target="_blank" rel="nofollow noopener noreferrer">https://cloudfoundry-</A>&lt;XXXXX&gt;.launchpad.cfapps.&lt;XXXXX&gt;..hana.ondemand.com/&lt;GUID&gt;.&lt;APPNAME&gt;.&lt;APPNAME&gt;-&lt;Version#&gt;/<A href="https://port8080-workspaces-ws-xl2uw.XXXXXX.applicationstudio.cloud.sap/&lt;Neo's" target="_blank" rel="nofollow noopener noreferrer">&lt;Neo</A>destination prefix&gt;/odata/sap/&lt;serviceName&gt;/$metadata?sap-language=6N</SPAN></P><P>Tried multiple ways of splicing the failed url removing app name etc, nothing worked</P><P>Not sure what am I doing wrong.<BR /><BR />Any help in this regard is highly appreciated.</P><P>&nbsp;</P><P>Thank you,</P><P>Sai</P> 2025-09-04T09:14:31.402000+02:00 https://community.sap.com/t5/technology-q-a/how-to-authorize-a-cf-deployed-html5-app-via-a-content-package-role-in-sap/qaq-p/14207631 How to authorize a CF-deployed HTML5 app via a Content Package role in SAP Build Work Zone (Standard 2025-09-04T16:54:12.167000+02:00 theodore_abitbol https://community.sap.com/t5/user/viewprofilepage/user-id/2177874 <P>Hello experts,</P><P>I’m a junior SAP developer working with <STRONG>SAP Build Work Zone, standard edition</STRONG>, and I’m running into difficulties with content packages.</P><P>Here’s my current setup:</P><UL><LI><P>I deployed a custom <STRONG>UI5 application</STRONG> via <STRONG>Cloud Foundry</STRONG> from BAS (cf deploy application.mtar).</P></LI><LI><P>I’m managing <STRONG>roles, tiles, spaces, and pages</STRONG> through a <STRONG>Content Package</STRONG>.</P></LI></UL><P>What works so far:</P><UL><LI><P>I can deploy <STRONG>custom tiles</STRONG> from the content package.</P></LI><LI><P>I can configure <STRONG>intent-based navigation</STRONG> (inbounds) to launch my app.</P></LI></UL><P>Where I’m stuck:</P><UL><LI><P>I cannot get <STRONG>authorization</STRONG> to work for the HTML5 app via a custom role.</P></LI><LI><P>I don’t know the correct way to <STRONG>reference the CF-deployed HTML5 app</STRONG> so that it can be added to the list of authorized apps in my content package role.</P></LI><LI><P>Currently, it only works if I assign the app to the <EM>Everyone</EM> role, which of course is not secure.</P></LI></UL><P>My current package looks like this:<BR />content-package/</P><P>├── card/<BR />│ ├── all the files necessary for a custom card (working fine)<BR />├── cdm/<BR />│ ├── apptodeploy.json<BR />│ ├── page.json<BR />│ ├── role.json<BR />│ └── space.json<BR />│<BR />├── content.json<BR />└── manifest.json</P><P>I've referenced the app I'm trying to access to using its&nbsp;<SPAN>SAPUI5 Component Name (same as its id), as it appears in the content manager. I've exported the app from the CM and noted that its full name in the exported file is saas_approuter_appID, so I've tried that too, to no avail. And I've tried to create a businessapp in /cdm/apptodeploy.json in order to create a sort of placeholder for the app so that I can reference it, but to no avail either.</SPAN></P><P><STRONG>Question(s):</STRONG><BR />Is there a best practice for exposing <STRONG>CF-deployed HTML5 apps</STRONG> in a Content Package (CDM), so they can be authorized via custom roles? Has anyone implemented this workflow successfully? Any examples, documentation, or working patterns would be greatly appreciated.</P><P>Thanks in advance for your guidance!</P> 2025-09-04T16:54:12.167000+02:00 https://community.sap.com/t5/crm-and-cx-q-a/unable-to-use-fiori-element-app-inside-an-iframe/qaq-p/14224183 Unable to use fiori element app inside an iframe. 2025-09-22T14:30:02.572000+02:00 anmolbhatia003 https://community.sap.com/t5/user/viewprofilepage/user-id/681888 <P>Hello Experts,</P><P>I have built a Fiori Element app using local CAP project. I have not used App router (neither external nor managed). The app is deployed and is now available under BTP Cokcpit, HTMl5 Apps.&nbsp;</P><P>&nbsp;</P><P>However when I try to access it in an Iframe (embedding it in Sales and Service Cloud V2 as Mahsup). The app UI loads, but controls donot work.</P><P>&nbsp;</P><P>Need help how to enable the app for the Control to work in Iframe.</P><P>&nbsp;</P><P>Need Support:</P><P><A href="https://community.sap.com/t5/user/viewprofilepage/user-id/124164" target="_blank">@Kinsbrunner</A>&nbsp;,<SPAN>&nbsp;</SPAN></P><DIV class=""><SPAN class=""><A class="" href="https://community.sap.com/t5/user/viewprofilepage/user-id/144369" target="_self"><SPAN class="">@mike_zaschka</SPAN></A></SPAN></DIV><P>&nbsp;</P> 2025-09-22T14:30:02.572000+02:00 https://community.sap.com/t5/technology-q-a/step-by-step-guide-to-enabling-the-html5-applications-repository-in-sap-btp/qaq-p/14256202 Step-by-Step Guide to Enabling the HTML5 Applications Repository in SAP BTP 2025-10-29T13:42:24.052000+01:00 shrenath https://community.sap.com/t5/user/viewprofilepage/user-id/1630696 <P>This Blog explain the how to enable the HTML5 Applications repository</P><P>At first we need to enable the 2 things successfully like&nbsp;</P><P>1.&nbsp;Cloud Identity Services</P><P>2. SAP Build Work Zone</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_0-1761739813013.png" style="width: 738px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333848i6138C2E6B2D484ED/image-dimensions/738x307?v=v2" width="738" height="307" role="button" title="shrenath_0-1761739813013.png" alt="shrenath_0-1761739813013.png" /></span></P><P>In the very first step is to click the Create option in your Instances and Subscriptions tab</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_1-1761740063038.png" style="width: 748px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333864i6FD8248FFCF26BD7/image-dimensions/748x376?v=v2" width="748" height="376" role="button" title="shrenath_1-1761740063038.png" alt="shrenath_1-1761740063038.png" /></span></P><P>In this New Instance Window click on Cloud Identity Services then Plan will be default</P><P>Service: Cloud Identity Services</P><P>Plan: default</P><P>Once you done click on Create in the Bottom of the Screen</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_2-1761740223921.png" style="width: 530px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333867iEAA0A684DD10D1FE/image-dimensions/530x489?v=v2" width="530" height="489" role="button" title="shrenath_2-1761740223921.png" alt="shrenath_2-1761740223921.png" /></span></P><P>Once you have create the above service successfully then we need to move on to the Users tab then click on user we need and click on Assign Role Collection</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_3-1761740284293.png" style="width: 574px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333870iF96FE02E85D0D13D/image-dimensions/574x287?v=v2" width="574" height="287" role="button" title="shrenath_3-1761740284293.png" alt="shrenath_3-1761740284293.png" /></span></P><P>Once you click on that the Assign Role Collection Dialogue will open then we need to search and assign the roles in below</P><P>Cloud Connector Administrator, Connectivity and Destination Administrator, Subaccount Service Administrator, Subaccount Viewer</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_4-1761740308944.png" style="width: 603px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333871iB69222E1501CDB80/image-dimensions/603x220?v=v2" width="603" height="220" role="button" title="shrenath_4-1761740308944.png" alt="shrenath_4-1761740308944.png" /></span></P><P>Once you have assigned the role it will looks like below</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_5-1761740320086.png" style="width: 602px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333872iE4D48DA684FB8B52/image-dimensions/602x301?v=v2" width="602" height="301" role="button" title="shrenath_5-1761740320086.png" alt="shrenath_5-1761740320086.png" /></span></P><P>After completing the above step, please check your email for a message regarding identity authentication. Click the link provided in the email to activate it and verify your account.</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_6-1761740342547.png" style="width: 593px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333873i50F6BCA0C571539C/image-dimensions/593x288/is-moderation-mode/true?v=v2" width="593" height="288" role="button" title="shrenath_6-1761740342547.png" alt="shrenath_6-1761740342547.png" /></span></P><P>&nbsp;</P><P>Once you click on the link the Cloud Identity service will open if not just go the Cloud Identity service which was in your BTP Instance and service</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_7-1761740514323.png" style="width: 604px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333876iE557770B71CEFBD4/image-dimensions/604x308?v=v2" width="604" height="308" role="button" title="shrenath_7-1761740514323.png" alt="shrenath_7-1761740514323.png" /></span></P><P>&nbsp;</P><P>Once you have verified through mail move to the Instances and Subscriptions tab click on Cloud Identity then click Go to Application</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_8-1761740542475.png" style="width: 601px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333877iD7A1497BEF227180/image-dimensions/601x304?v=v2" width="601" height="304" role="button" title="shrenath_8-1761740542475.png" alt="shrenath_8-1761740542475.png" /></span></P><P>Once you have done you will see this page Cloud Identity Services in this click on User Management</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_9-1761740578210.png" style="width: 611px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333878i77E5F0BEFD721CC9/image-dimensions/611x310?v=v2" width="611" height="310" role="button" title="shrenath_9-1761740578210.png" alt="shrenath_9-1761740578210.png" /></span></P><P>After clicking the User Management verify the user credentials here</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_10-1761740609225.png" style="width: 581px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333879iF07559E109AFDFC7/image-dimensions/581x259?v=v2" width="581" height="259" role="button" title="shrenath_10-1761740609225.png" alt="shrenath_10-1761740609225.png" /></span></P><P>Then move on the Trust Configuration Part under the Security then click on Establish Trust the configure Tenant pop up will open</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_11-1761740649281.png" style="width: 631px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333881i2CC7817A6EA1828C/image-dimensions/631x320?v=v2" width="631" height="320" role="button" title="shrenath_11-1761740649281.png" alt="shrenath_11-1761740649281.png" /></span></P><P>In this select the Default value&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_12-1761740753516.png" style="width: 619px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333882iF6C325995EFC3EEA/image-dimensions/619x311?v=v2" width="619" height="311" role="button" title="shrenath_12-1761740753516.png" alt="shrenath_12-1761740753516.png" /></span></P><P>In this choose Domain option choose option end with ‘trail-accound.ondemand.com’</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_13-1761740782357.png" style="width: 597px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333883i814A0C7BBEB63BD8/image-dimensions/597x313?v=v2" width="597" height="313" role="button" title="shrenath_13-1761740782357.png" alt="shrenath_13-1761740782357.png" /></span></P><P>Then click on create to sap build work zone</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_14-1761740792964.png" style="width: 592px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333884i230FAF19C430ED14/image-dimensions/592x313?v=v2" width="592" height="313" role="button" title="shrenath_14-1761740792964.png" alt="shrenath_14-1761740792964.png" /></span></P><P>With this you can go for standard subscription plan</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_15-1761740827812.png" style="width: 594px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333885iAD5D3E7313AC3E19/image-dimensions/594x519?v=v2" width="594" height="519" role="button" title="shrenath_15-1761740827812.png" alt="shrenath_15-1761740827812.png" /></span></P><P>We have successfully activated the sap Build work zone</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_16-1761740860119.png" style="width: 587px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333886iDD68D8D77D84DC72/image-dimensions/587x314?v=v2" width="587" height="314" role="button" title="shrenath_16-1761740860119.png" alt="shrenath_16-1761740860119.png" /></span></P><DIV class="">&nbsp;</DIV><P>Then will check on HTML5 Applications tab you can see HTML5 application now allow to add application here, Thank for Reading!</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="shrenath_18-1761740986511.png" style="width: 607px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/333889iF1698C4EFC8E04CD/image-dimensions/607x317?v=v2" width="607" height="317" role="button" title="shrenath_18-1761740986511.png" alt="shrenath_18-1761740986511.png" /></span></P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2025-10-29T13:42:24.052000+01:00 https://community.sap.com/t5/technology-q-a/html5-app-not-showing-in-btp-cockpit-after-deployed/qaq-p/14259702 HTML5 app not showing in BTP Cockpit After deployed 2025-11-04T00:01:46.675000+01:00 YOJAN https://community.sap.com/t5/user/viewprofilepage/user-id/1740926 <P>Hello Community,</P><P>I know there are some similar questions but I can not figure it out the problem.<BR />This is the log I got once application is deployed to html5, but I can not make it appear in html5 application list.</P><DIV><DIV><SPAN>#</SPAN><SPAN>2025</SPAN> <SPAN>11</SPAN> <SPAN>03</SPAN> <SPAN>22:36:55.840</SPAN><SPAN>#Z#</SPAN><SPAN>DEBUG</SPAN><SPAN>#</SPAN><SPAN>8277ce9a-b905-11f0-8071-eeee0a92e238</SPAN><SPAN>.CSR-app-content_CSR-repo-host#flowable-async-job-executor-thread-</SPAN><SPAN>5683</SPAN><SPAN>#</SPAN></DIV><DIV><SPAN>[PollDeployContentStatusExecution] [CSR-app-content] </SPAN><SPAN>[INFO]</SPAN><SPAN> Application content was successfully uploaded from subaccount { CODE: </SPAN><SPAN>'1002'</SPAN><SPAN> }#</SPAN></DIV><DIV>&nbsp;</DIV><DIV><SPAN><SPAN>This is my mta.yaml, I have both unmanaged router and managed router applications. This module&nbsp;CSR-app-content is doing the deployment, log does not show error when deploying but app does not show in list - tried refresh as well.&nbsp; unmanaged app deploys and works with no problem. I am doing managed to use launchpad functionality.</SPAN></SPAN></DIV><DIV>&nbsp;</DIV><DIV><SPAN><SPAN>Please your suggestion.<BR /></SPAN></SPAN><DIV><DIV><SPAN>_schema-version</SPAN><SPAN>: </SPAN><SPAN>3.3.0</SPAN></DIV><DIV><SPAN>ID</SPAN><SPAN>: </SPAN><SPAN>CSR</SPAN></DIV><DIV><SPAN>description</SPAN><SPAN>: </SPAN><SPAN>CSR CAP project.</SPAN></DIV><DIV><SPAN>version</SPAN><SPAN>: </SPAN><SPAN>1.0.0</SPAN></DIV><DIV><SPAN>modules</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificatesrv</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>nodejs</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>gen/srv</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>properties</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>DEBUG</SPAN><SPAN>: </SPAN><SPAN>sap-cloud-sdk:*</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificate-auth</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-postgres</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-destination-service</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-connector-connectivity</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>provides</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>srv-api</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>properties</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>srv-url</SPAN><SPAN>: </SPAN><SPAN>${default-url}</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>buildpack</SPAN><SPAN>: </SPAN><SPAN>nodejs_buildpack</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>instances</SPAN><SPAN>: </SPAN><SPAN>1</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>builder</SPAN><SPAN>: </SPAN><SPAN>npm-ci</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>csr-app-postgres-deployer</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>nodejs</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>gen/pg</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-postgres</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>buildpack</SPAN><SPAN>: </SPAN><SPAN>nodejs_buildpack</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>disk-quota</SPAN><SPAN>: </SPAN><SPAN>1GB</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>memory</SPAN><SPAN>: </SPAN><SPAN>1GB</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>no-route</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>no-start</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>tasks</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>command</SPAN><SPAN>: </SPAN><SPAN>npm start</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>disk-quota</SPAN><SPAN>: </SPAN><SPAN>1GB</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>memory</SPAN><SPAN>: </SPAN><SPAN>1GB</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>deploy-to-postgresql</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>ignore</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>node_modules/</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificateui</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>nodejs</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>app</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>srv-api</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>group</SPAN><SPAN>: </SPAN><SPAN>destinations</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>properties</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>forwardAuthToken</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>srv-api</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>url</SPAN><SPAN>: </SPAN><SPAN>~{srv-url}</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificate-auth</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>provides</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>app-api</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>properties</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>app-protocol</SPAN><SPAN>: </SPAN><SPAN>${protocol}</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>app-uri</SPAN><SPAN>: </SPAN><SPAN>${default-uri}</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>buildpack</SPAN><SPAN>: </SPAN><SPAN>nodejs_buildpack</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>disk-quota</SPAN><SPAN>: </SPAN><SPAN>1GB</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>keep-existing-routes</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>memory</SPAN><SPAN>: </SPAN><SPAN>1GB</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>ignore</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>default-env.json</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>.env</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>CSR-app-content</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>com.sap.application.content</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>.</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>requires</SPAN><SPAN>: </SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>CSR-repo-host</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>content-target</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>build-result</SPAN><SPAN>: </SPAN><SPAN>resources</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>artifacts</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; - </SPAN><SPAN>isbncertificatehtml5isbncertificatehtml5.zip</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificatehtml5isbncertificatehtml5</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>target-path</SPAN><SPAN>: </SPAN><SPAN>resources/</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificatehtml5isbncertificatehtml5</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>html5</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>app/isbncertificatehtml5</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>build-result</SPAN><SPAN>: </SPAN><SPAN>dist</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>builder</SPAN><SPAN>: </SPAN><SPAN>custom</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>commands</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>npm install</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>npm run build:cf</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>supported-platforms</SPAN><SPAN>: []</SPAN></DIV><DIV><SPAN>resources</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbncertificate-auth</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>config</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>tenant-mode</SPAN><SPAN>: </SPAN><SPAN>dedicated</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>xsappname</SPAN><SPAN>: </SPAN><SPAN>isbncertificate-${org}-${space}</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>./xs-security.json</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>xsuaa</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>application</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-postgres</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>postgresql-db</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>development</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-destination-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>config</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>HTML5Runtime_enabled</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>init_data</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>instance</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>destinations</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>Authentication</SPAN><SPAN>: </SPAN><SPAN>NoAuthentication</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>Name</SPAN><SPAN>: </SPAN><SPAN>ui5</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>ProxyType</SPAN><SPAN>: </SPAN><SPAN>Internet</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>Type</SPAN><SPAN>: </SPAN><SPAN>HTTP</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>URL</SPAN><SPAN>: </SPAN><SPAN><A href="https://ui5.sap.com" target="_blank" rel="noopener noreferrer">https://ui5.sap.com</A></SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>existing_destinations_policy</SPAN><SPAN>: </SPAN><SPAN>update</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>destination</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>lite</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>isbn-connector-connectivity</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>connectivity</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>lite</SPAN></DIV><DIV><SPAN>- </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>CSR-repo-host</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>html5-apps-repo</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service-name</SPAN><SPAN>: </SPAN><SPAN>CSR-html5-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>app-host</SPAN></DIV><DIV><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>deploy_mode</SPAN><SPAN>: </SPAN><SPAN>html5-repo</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>enable-parallel-deployments</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>before-all</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>builder</SPAN><SPAN>: </SPAN><SPAN>custom</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>commands</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>npm ci</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>npx cds build --production</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>bash ./pg-build.sh</SPAN></DIV></DIV></DIV></DIV><P>&nbsp;</P> 2025-11-04T00:01:46.675000+01:00 https://community.sap.com/t5/technology-q-a/referenceerror-sap-is-not-defined/qaq-p/14262906 ReferenceError: sap is not defined 2025-11-07T11:02:42.791000+01:00 saibhanu https://community.sap.com/t5/user/viewprofilepage/user-id/2236828 <P>Hello Experts,<BR /><BR />our pipeline is failing with below error in the karma step&nbsp;<BR /><BR />as we are using piper template to run our pipeline we are using KarmaExecutetests step<BR /><BR />when we are the tests in local it is running fine but when we run in the pipeline it failing with below error<BR /><BR /></P><DIV class=""><DIV class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>Chrome Headless 139.0.0.0 (Linux 0.0.0) ERROR </SPAN></SPAN></SPAN></SPAN></DIV></DIV><DIV class=""><DIV class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>info karmaExecuteTests - Uncaught ReferenceError: sap is not defined </SPAN></SPAN></SPAN></SPAN></DIV></DIV><DIV class=""><DIV class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>info karmaExecuteTests - at webapp/test/unit/unitTests.qunit.js:1:1 </SPAN></SPAN></SPAN></SPAN></DIV></DIV><DIV class=""><DIV class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>info karmaExecuteTests - </SPAN></SPAN></SPAN></SPAN></DIV></DIV><DIV class=""><DIV class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>info karmaExecuteTests - ReferenceError: sap is not defined </SPAN></SPAN></SPAN></SPAN></DIV></DIV><DIV class=""><DIV class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>info karmaExecuteTests - at webapp/test/unit/unitTests.qunit.js:1:1<BR /><BR />please find the logs for better understanding attached<BR />below is unittest.qunit.html file<BR /></SPAN></SPAN></SPAN></SPAN></SPAN></DIV></DIV><pre class="lia-code-sample language-markup"><code>&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;Unit tests&lt;/title&gt; &lt;meta http-equiv='X-UA-Compatible' content='IE=edge'&gt; &lt;meta charset="utf-8"&gt; &lt;script id="sap-ui-bootstrap" src="../../../../resources/sap-ui-core.js" data-sap-ui-libs="sap.m" data-sap-ui-resourceroots='{ "exemptiontool.exemptiontool": "../../", "test/unit": "./" }'&gt; &lt;/script&gt; &lt;script src="../../../../resources/sap/ui/qunit/qunit-css.js"&gt;&lt;/script&gt; &lt;script src="../../../../resources/sap/ui/thirdparty/qunit.js"&gt;&lt;/script&gt; &lt;script src="../../../../resources/sap/ui/qunit/qunit-junit.js"&gt;&lt;/script&gt; &lt;script src="../../../../resources/sap/ui/qunit/qunit-coverage.js"&gt;&lt;/script&gt; &lt;script&gt; QUnit.config.autostart = false; sap.ui.require( ["test/unit/allTests"], function () { QUnit.start(); } ); &lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;ol id="qunit-tests"&gt;&lt;/ol&gt; &lt;div id="qunit-fixture"&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt;</code></pre><P><SPAN class=""><SPAN class=""><SPAN class=""><SPAN class=""><SPAN>below is opa5.qunit.html<BR /><BR /></SPAN></SPAN></SPAN></SPAN></SPAN></P><pre class="lia-code-sample language-markup"><code>&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;Integration tests&lt;/title&gt; &lt;meta charset="utf-8"&gt; &lt;script id="sap-ui-bootstrap" src="../../../../resources/sap-ui-core.js" data-sap-ui-theme='sap_fiori_3' data-sap-ui-resourceroots='{ "exemptiontool.exemptiontool": "../../" }' data-sap-ui-animation="false" data-sap-ui-compatVersion="edge" data-sap-ui-async="true"&gt; &lt;/script&gt; &lt;link rel="stylesheet" type="text/css" href="../../../../resources/sap/ui/thirdparty/qunit-2.css"&gt; &lt;script src="../../../../resources/sap/ui/thirdparty/qunit-2.js"&gt;&lt;/script&gt; &lt;script src="../../../../resources/sap/ui/qunit/qunit-junit.js"&gt;&lt;/script&gt; &lt;script src="opaTests.qunit.js"&gt;&lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;div id="qunit"&gt;&lt;/div&gt; &lt;div id="qunit-fixture"&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt;</code></pre><P><SPAN class=""><SPAN class=""><SPAN class=""><SPAN><BR />could you please help me here<BR />Best Regards,<BR />Bhanu.<BR /></SPAN></SPAN></SPAN></SPAN></P> 2025-11-07T11:02:42.791000+01:00 https://community.sap.com/t5/technology-q-a/html5-application-asking-user-and-password/qaq-p/14271349 HTML5 Application asking user and password 2025-11-17T19:39:25.119000+01:00 rkenjiibmsuser https://community.sap.com/t5/user/viewprofilepage/user-id/881390 <P>I created a RAP and deploy it in BaS. In BTP Cockpit, my application appear in HTML5, but when i try to test it, the popup asking user and password appear. I try to put my user and pass, but it doesn't work. I think that some configuration is missing.</P><P>I try generate a simple hello world UI5 application and it's work fine. My problem is RAP application (List Report Page).</P><P>I found a sapnote&nbsp;3651537 with error that i get, but i don't understand the solution.</P><P>How to solve it?</P> 2025-11-17T19:39:25.119000+01:00 https://community.sap.com/t5/technology-q-a/launch-default-app-in-build-workzone-site/qaq-p/14277188 Launch default app in Build Workzone site 2025-11-25T12:39:38.847000+01:00 Afsal https://community.sap.com/t5/user/viewprofilepage/user-id/2228443 <P>I have a site created in SAP Build Workzone which displays a set of tiles when opened - All apps are maintained and deployed individually.<BR />Do we have any way to set a particular app as the default app or trigger that tile when the site opens.&nbsp;<BR />Something like redirection or default route that can be configure in the code or site settings.<BR /><BR />Do we have any option to set the default route?</P> 2025-11-25T12:39:38.847000+01:00 https://community.sap.com/t5/technology-q-a/html5-application-migrated-from-neo-to-cloud-foundry-not-visible-in-btp/qaq-p/14297319 HTML5 Application Migrated from NEO to Cloud Foundry Not Visible in BTP / Build Work Zone 2025-12-26T05:46:30.481000+01:00 anas_mak3009 https://community.sap.com/t5/user/viewprofilepage/user-id/2269542 <P>We have a basic HTML (SAPUI5) application running on <STRONG>SAP NEO</STRONG>, which we are currently testing to migrate to <STRONG>SAP BTP Cloud Foundry</STRONG>.</P><P>We have completed the required configurations on the Cloud Foundry side and updated the following files accordingly:</P><UL><LI><P><CODE>xs-app.json</CODE></P></LI><LI><P><CODE>mta.yaml</CODE></P></LI><LI><P><CODE>xs-security.json</CODE></P></LI><LI><P><CODE>manifest.json</CODE></P></LI></UL><P>We successfully build the MTAR file and deploy it from <STRONG>SAP Business Application Studio (BAS)</STRONG>. The deployment completes <STRONG>without any errors</STRONG>.</P><P>However, after deployment:</P><UL><LI><P>The application <STRONG>does not appear</STRONG> under <STRONG>HTML5 Applications</STRONG> in the SAP BTP cockpit</P></LI><LI><P>The application is also <STRONG>not visible in SAP Build Work Zone</STRONG></P></LI><LI><P>We have already created an instance of <STRONG>HTML5 Application Repository Service</STRONG> with the <STRONG>app-host</STRONG> plan</P></LI></UL><P>Could you please help us understand:</P><OL><LI><P>What could be the possible reasons for the application not appearing in HTML5 Applications or Build Work Zone?</P></LI><LI><P>Are there any mandatory configurations or services (such as app-runtime, destination, XSUAA, or content module settings) that are commonly missed during NEO to Cloud Foundry migration?</P></LI><LI><P>Are there any specific checks or logs we should verify after a successful MTAR deployment?</P></LI></OL><P>Any guidance or best practices for migrating HTML5 applications from <STRONG>NEO to Cloud Foundry</STRONG> would be greatly appreciated.</P><P><SPAN>mta.yaml:</SPAN></P><DIV><DIV><SPAN>_schema-version</SPAN><SPAN>: </SPAN><SPAN>"3.2"</SPAN></DIV><DIV><SPAN>ID</SPAN><SPAN>: </SPAN><SPAN>test.getuserdetailsmta</SPAN></DIV><DIV><SPAN>version</SPAN><SPAN>: </SPAN><SPAN>0.0.1</SPAN></DIV><DIV><SPAN>description</SPAN><SPAN>: </SPAN><SPAN>Generated by Fiori Tools</SPAN></DIV><BR /><DIV><SPAN>modules</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-app-content</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>com.sap.application.content</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>.</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-repo-host</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>#- name: testgetuserdetailsmta-html5-runtime_new</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>content-target</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-destination-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>build-result</SPAN><SPAN>: </SPAN><SPAN>resources</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>artifacts</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>dist.zip</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>target-path</SPAN><SPAN>: </SPAN><SPAN>resources/</SPAN></DIV><BR /><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>html5</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>path</SPAN><SPAN>: </SPAN><SPAN>.</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>buildpack</SPAN><SPAN>: </SPAN><SPAN>nodejs_buildpack</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>requires</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-xsuaa</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>build-parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>builder</SPAN><SPAN>: </SPAN><SPAN>custom</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>commands</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>npm install</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>npm run build:cf</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>build-result</SPAN><SPAN>: </SPAN><SPAN>dist</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>supported-platforms</SPAN><SPAN>: []</SPAN></DIV><BR /><DIV><SPAN>resources</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-repo-host</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>html5-apps-repo</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>app-host</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service-name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-html5-service</SPAN></DIV><BR /><DIV><SPAN>&nbsp; </SPAN><SPAN># - name: testgetuserdetailsmta-html5-runtime_new</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN># &nbsp; type: org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN># &nbsp; parameters:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN># &nbsp; &nbsp; service: html5-apps-repo</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN># &nbsp; &nbsp; service-plan: app-runtime</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN># &nbsp; &nbsp; service-name: testgetuserdetailsmta-html5-runtime_new</SPAN></DIV><BR /><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-destination-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>destination</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>lite</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service-name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-destination-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>config</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>HTML5Runtime_enabled</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>init_data</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>instance</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>destinations</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>Name</SPAN><SPAN>: </SPAN><SPAN>ui5</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>URL</SPAN><SPAN>: </SPAN><SPAN><A href="https://ui5.sap.com" target="_blank" rel="noopener noreferrer">https://ui5.sap.com</A></SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>Type</SPAN><SPAN>: </SPAN><SPAN>HTTP</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>ProxyType</SPAN><SPAN>: </SPAN><SPAN>Internet</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>Authentication</SPAN><SPAN>: </SPAN><SPAN>NoAuthentication</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>existing_destinations_policy</SPAN><SPAN>: </SPAN><SPAN>update</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>version</SPAN><SPAN>: </SPAN><SPAN>1.0.0</SPAN></DIV><BR /><DIV><SPAN>&nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-xsuaa</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>org.cloudfoundry.managed-service</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service</SPAN><SPAN>: </SPAN><SPAN>xsuaa</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service-plan</SPAN><SPAN>: </SPAN><SPAN>application</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>service-name</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta-xsuaa</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>config</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>xsappname</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>tenant-mode</SPAN><SPAN>: </SPAN><SPAN>dedicated</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>scopes</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>Display</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>description</SPAN><SPAN>: </SPAN><SPAN>Display scope</SPAN></DIV><BR /><DIV><SPAN>parameters</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>deploy_mode</SPAN><SPAN>: </SPAN><SPAN>html5-repo</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>enable-parallel-deployments</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><BR />xs-app.json:</DIV><DIV><DIV><DIV><SPAN>{</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"welcomeFile"</SPAN><SPAN>: </SPAN><SPAN>"/index.html"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"authenticationMethod"</SPAN><SPAN>: </SPAN><SPAN>"route"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"routes"</SPAN><SPAN>: [</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; {</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"source"</SPAN><SPAN>: </SPAN><SPAN>"^&lt;apply-service-segment-path&gt;/(.*)$"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"target"</SPAN><SPAN>: </SPAN><SPAN>"&lt;apply-service-segment-path&gt;/$1"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"destination"</SPAN><SPAN>: </SPAN><SPAN>"ui5"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"authenticationType"</SPAN><SPAN>: </SPAN><SPAN>"xsuaa"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"csrfProtection"</SPAN><SPAN>: </SPAN><SPAN>false</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; },</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; {</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"source"</SPAN><SPAN>: </SPAN><SPAN>"^/resources/(.*)$"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"target"</SPAN><SPAN>: </SPAN><SPAN>"/resources/$1"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"authenticationType"</SPAN><SPAN>: </SPAN><SPAN>"none"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"destination"</SPAN><SPAN>: </SPAN><SPAN>"ui5"</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; },</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; {</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"source"</SPAN><SPAN>: </SPAN><SPAN>"^/test-resources/(.*)$"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"target"</SPAN><SPAN>: </SPAN><SPAN>"/test-resources/$1"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"authenticationType"</SPAN><SPAN>: </SPAN><SPAN>"none"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"destination"</SPAN><SPAN>: </SPAN><SPAN>"ui5"</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; },</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; {</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"source"</SPAN><SPAN>: </SPAN><SPAN>"^(.*)$"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"target"</SPAN><SPAN>: </SPAN><SPAN>"$1"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"service"</SPAN><SPAN>: </SPAN><SPAN>"html5-apps-repo-rt"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>"authenticationType"</SPAN><SPAN>: </SPAN><SPAN>"xsuaa"</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; },</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; {</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>"source"</SPAN><SPAN>: </SPAN><SPAN>"^/user-api(.*)"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>"target"</SPAN><SPAN>: </SPAN><SPAN>"$1"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>"service"</SPAN><SPAN>: </SPAN><SPAN>"sap-approuter-userapi"</SPAN></DIV><DIV><SPAN>}</SPAN></DIV><BR /><DIV><SPAN>&nbsp; ]</SPAN></DIV><DIV><SPAN>}</SPAN></DIV><DIV><SPAN>xs-security.json:</SPAN></DIV><DIV><DIV><DIV><SPAN>{</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"xsappname"</SPAN><SPAN>: </SPAN><SPAN>"test.getuserdetailsmta"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"tenant-mode"</SPAN><SPAN>: </SPAN><SPAN>"dedicated"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"description"</SPAN><SPAN>: </SPAN><SPAN>"Security profile of called application"</SPAN><SPAN>,</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"scopes"</SPAN><SPAN>: [],</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>"role-templates"</SPAN><SPAN>: []</SPAN></DIV><DIV><SPAN>}</SPAN></DIV><DIV><SPAN>ui5-deploy.yaml:</SPAN></DIV><DIV><DIV><DIV><SPAN># yaml-language-server: $schema=<A href="https://sap.github.io/ui5-tooling/schema/ui5.yaml.json" target="_blank" rel="noopener nofollow noreferrer">https://sap.github.io/ui5-tooling/schema/ui5.yaml.json</A></SPAN></DIV><BR /><DIV><SPAN>specVersion</SPAN><SPAN>: </SPAN><SPAN>"4.0"</SPAN></DIV><DIV><SPAN>metadata</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>test.getuserdetailsmta</SPAN></DIV><DIV><SPAN>type</SPAN><SPAN>: </SPAN><SPAN>application</SPAN></DIV><DIV><SPAN>resources</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>configuration</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>propertiesFileSourceEncoding</SPAN><SPAN>: </SPAN><SPAN>UTF-8</SPAN></DIV><DIV><SPAN>builder</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>resources</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; </SPAN><SPAN>excludes</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; - </SPAN><SPAN>/test/**</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; - </SPAN><SPAN>/localService/**</SPAN></DIV><DIV><SPAN>&nbsp; </SPAN><SPAN>customTasks</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; - </SPAN><SPAN>name</SPAN><SPAN>: </SPAN><SPAN>ui5-task-zipper</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>afterTask</SPAN><SPAN>: </SPAN><SPAN>generateCachebusterInfo</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; </SPAN><SPAN>configuration</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>archiveName</SPAN><SPAN>: </SPAN><SPAN>testgetuserdetailsmta</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>relativePaths</SPAN><SPAN>: </SPAN><SPAN>true</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; </SPAN><SPAN>additionalFiles</SPAN><SPAN>:</SPAN></DIV><DIV><SPAN>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - </SPAN><SPAN>xs-app.json</SPAN></DIV><DIV><SPAN>Can anyone assist on this?</SPAN></DIV><DIV><SPAN>&nbsp;<a href="https://community.sap.com/t5/c-khhcw49343/SAP+BTP%25252C+Cloud+Foundry+runtime+and+environment/pd-p/73555000100800000287" class="lia-product-mention" data-product="443-1">SAP BTP, Cloud Foundry runtime and environment</a>&nbsp;<a href="https://community.sap.com/t5/c-khhcw49343/SAP+Build+Work+Zone%25252C+standard+edition/pd-p/73554900100800003081" class="lia-product-mention" data-product="684-1">SAP Build Work Zone, standard edition</a>&nbsp;<a href="https://community.sap.com/t5/c-khhcw49343/SAPUI5/pd-p/500983881501772639608291559920477" class="lia-product-mention" data-product="325-1">SAPUI5</a>&nbsp;&nbsp;</SPAN></DIV></DIV></DIV></DIV></DIV></DIV></DIV> 2025-12-26T05:46:30.481000+01:00 https://community.sap.com/t5/technology-q-a/sap-build-html5-repository-app-permission/qaq-p/14303834 SAP Build, HTML5 repository app permission 2026-01-08T15:37:25.746000+01:00 patrick_weber11 https://community.sap.com/t5/user/viewprofilepage/user-id/215409 <P>Hi all,</P><P>once I deployed an app to BTP environment, I can see the result in HTML5 repository. Let's say I have hundrets of users on BTP and dozends of HTML5 apps deployed. How can I grant access to dedicated apps?&nbsp;</P><P>If I grant access to role collection containing role <SPAN><STRONG>Application_Frontend_Viewer</STRONG>, users can access all apps, if they know the links. In most cases, they need to authenticate to backend services. But if the destination has been defined with basic auth and fixed users, I have serious security concerns.</SPAN></P><P><SPAN>What is the right way securing individual apps?<BR /><BR />EDIT: I did some further checks. I can use SAP Build Workzone and it's corresponding role concept to grant access to an individual tile. But this does not affect permission to the app itself. As long as the user "knows" the right link, he can always access the app. How to prevent this?</SPAN></P> 2026-01-08T15:37:25.746000+01:00 https://community.sap.com/t5/technology-q-a/slow-frontends-html5/qaq-p/14308016 Slow frontends (HTML5) 2026-01-15T13:51:13.852000+01:00 Alexandre https://community.sap.com/t5/user/viewprofilepage/user-id/10845 <P>Hi, everyone.</P><P>We have been using this SAP frontend paradigm for more than 10 years with the launch of Fiori. I used the tools, applications, watched presentations, lectures, videos. I read reviews, comments, but I never found anything that expresses the most striking feeling for me about this subject in all situations:<BR />These frontends are so slow. As far as it compares to the previous generation of SAP and other current frontends we have come across.<BR />It's very easy to give up or get lost doing something else while waiting for the page to respond.</P><P>Does anyone else have this feeling?</P> 2026-01-15T13:51:13.852000+01:00