on 2024 Aug 01 3:49 AM
In the manifest.json of the SAPUI5 application, when the URI of the OData data source is specified with a leading "/", it cannot connect to the data source when deployed to the HTML5 repository of SAP BTP. Therefore, all leading "/" in the URI of the manifest.json were removed.
The necessity of removing "/" was provided in the following inquiry.
Case Management Dashboard - SAP for Me
Removing the "/" improved the issue on SAP BTP, but now there is a problem where the URI to the backend does not work as expected during hybrid development in BAS.
{
"authenticationMethod": "route",
"routes": [
{
"source": "^/app/(.*)$",
"target": "/app/$1",
"destination": "node_main-app-srv",
"csrfProtection": true,
"cacheControl": "no-cache, no-store, must-revalidate"
},
{
"source": "^/(.*)$",
"target": "$1",
"destination": "node_main-app-srv",
"csrfProtection": true,
"authenticationType": "xsuaa"
}
],
"logout": {
"logoutEndpoint": "/logout"
}
}
{
"CDS_PORT": 4004,
"CF_NODEJS_LOGGING_LEVEL": "debug",
"destinations": [
{
"Name": "node_main-app-srv",
"Authentication": "NoAuthentication",
"ProxyType": "Internet",
"Type": "HTTP",
"URL": "<http://localhost:4004/>",
"forwardAuthToken": true
}
]
}
{
"_version": "1.60.0",
"sap.app": {
"id": "com.gsl.app.forms",
"type": "application",
"i18n": "i18n/i18n.properties",
"applicationVersion": {
"version": "${version}"
},
"title": "{{appTitle}}",
"description": "{{appDescription}}",
"resources": "resources.json",
"sourceTemplate": {
"id": "@sap/generator-fiori:lrop",
"version": "1.10.4",
"toolsId": "39b06494-5076-48e2-8f2c-fcce8a4f2c5d"
},
"dataSources": {
"mainService": {
"uri": "odata/v4/forms/",
"type": "OData",
"settings": {
"annotations": [],
"localUri": "localService/metadata.xml",
"odataVersion": "4.0"
}
}
},
"crossNavigation": {
"inbounds": {
"com-gsl-app-forms-inbound": {
"signature": {
"parameters": {},
"additionalParameters": "allowed"
},
"semanticObject": "forms",
"action": "list",
"title": "{{flpTitle}}",
"subTitle": "{{flpSubtitle}}",
"info": "{{flpInfo}}",
"icon": "sap-icon://survey"
}
}
}
},
"sap.ui": {
"technology": "UI5",
"icons": {
"icon": "",
"favIcon": "",
"phone": "",
"phone@2": "",
"tablet": "",
"tablet@2": ""
},
"deviceTypes": {
"desktop": true,
"tablet": true,
"phone": true
}
},
"sap.ui5": {
"flexEnabled": true,
"dependencies": {
"minUI5Version": "1.120.1",
"libs": {
"sap.m": {},
"sap.ui.core": {},
"sap.ushell": {},
"sap.fe.templates": {},
"sap.fe.macros": {},
"sap.f": {}
}
},
"contentDensities": {
"compact": true,
"cozy": true
},
"models": {
"i18n": {
"type": "sap.ui.model.resource.ResourceModel",
"settings": {
"bundleName": "com.gsl.app.forms.i18n.i18n"
}
},
"": {
"dataSource": "mainService",
"preload": true,
"settings": {
"synchronizationMode": "None",
"operationMode": "Server",
"autoExpandSelect": true,
"earlyRequests": true
}
},
"@i18n": {
"type": "sap.ui.model.resource.ResourceModel",
"uri": "i18n/i18n.properties"
}
},
"resources": {
"css": [
{
"uri": "css/style.css"
}
]
},
"routing": {
"config": {
"flexibleColumnLayout": {
"defaultTwoColumnLayoutType": "TwoColumnsMidExpanded",
"defaultThreeColumnLayoutType": "ThreeColumnsEndExpanded"
},
"routerClass": "sap.f.routing.Router"
},
"routes": [
{
"pattern": ":?query:",
"name": "QuestionnairesList",
"target": ["QuestionnairesList"]
},
{
"name": "EntryForm",
"pattern": "Questionnaires({key}):?query:",
"target": ["QuestionnairesList", "EntryForm"]
}
],
"targets": {
"QuestionnairesList": {
"type": "Component",
"id": "QuestionnairesList",
"name": "sap.fe.templates.ListReport",
"options": {
"settings": {
"entitySet": "Questionnaires",
"controlConfiguration": {
"@com.sap.vocabularies.UI.v1.SelectionFields": {
"useSemanticDateRange": true,
"showClearButton": true
}
},
"variantManagement": "Page",
"initialLoad": true,
"navigation": {
"Questionnaires": {
"detail": {
"route": "EntryForm"
}
}
}
}
},
"controlAggregation": "beginColumnPages"
},
"EntryForm": {
"type": "Component",
"id": "EntryForm",
"name": "sap.fe.core.fpm",
"options": {
"settings": {
"viewName": "com.gsl.app.forms.ext.entry.Entry",
"contextPath": "/Questionnaires"
}
},
"controlAggregation": "midColumnPages"
}
}
},
"rootView": {
"viewName": "sap.fe.templates.RootContainer.view.Fcl",
"type": "XML",
"async": true,
"id": "appRootView"
},
"extends": {
"extensions": {
"sap.ui.controllerExtensions": {}
}
}
},
"sap.fiori": {
"registrationIds": [],
"archeType": "transactional"
},
"sap.cloud": {
"public": true,
"service": "gasp_main.service"
}
}
Incoming request to AppRouter. Path: /com.gsl.app.forms/odata/v4/forms/ Request to backend. Rewritten URL: <http://localhost:4004/com.gsl.app.forms/odata/v4/forms/> Request to backend. Destination details: name: node_main-app-srv url: <http://localhost:4004/>
Incoming request to AppRouter. Path: /odata/v4/forms/ Request to backend. Rewritten URL: <http://localhost:4004/odata/v4/forms/> Request to backend. Destination details: name: node_main-app-srv url: <http://localhost:4004/>
Both logs are accessed at https://port5000-workspaces-ws-9g7tp.jp10.applicationstudio.cloud.sap/com.gsl.app.forms/index.html.
Request clarification before answering.
You should not remove the leading '/' from the url in the source code. It is removed, by fiori tools, during build if you deploy to html5-repository. After build, the file in dist folder should not have the leading '/'. The content in dist folder is what is deployed to html5-repo. The content in webapps folder is used during development; the file in webapps folder needs '/' in data source url for the development tools to work correctly proxy the requests.
Generate Deployment Configuration Cloud Foundry | SAP Help Portal
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 8 | |
| 7 | |
| 6 | |
| 5 | |
| 5 | |
| 3 | |
| 3 | |
| 3 | |
| 3 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.