Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
michal_keidar
Active Contributor
Introduction

 

SAP Web IDE offers the ability to deploy applications into your ABAP system as a new app or as an update to an existing one.

All you have to do it to right-click your app and choose Deploy -> Deploy to SAPUI5 ABAP Repository, fill in the necessary information such as name, description and package, and click Finish.

 

Technical Details

 

  • When the system is selected in the first step of the wizard, we execute a call to get the discovery XML of the /sap/bc/adt service (issuing GET for /sap/bc/adt/discovery). Then we analyze the result XML to verify all is valid to proceed. If something is missing or there was a problem issuing the request we show an error (more details below).

  • A new application is deployed on the server by issuing POST/PUT requests for its resources.

  • Upon update of an existing application, we deploy the entire app and not only the changed resources, because there is no tracking on changes being done to the app outside of SAP Web IDE and by other users. This is similar to the functionality of the /UI5/UI5_REPOSITORY_LOAD function (with slight difference).


 

Troubleshooting

 

Here are some problems and solutions that I've gathered from my experience here on SCN:

 

  • Problem: I don't have the needed authorizations to deploy.
    Solution: You should obtain all the needed authorizations in order to be able to deploy. See this comment for more details.

  • Problem: My ABAP system is showing in SAP Web IDE but not in this wizard.


Solution: Make sure you have the dev_abap WebIDEUsage configured in your destination in HCP cockpit.

 

  • Problem: I get an error when my system is selected in the first step of the wizard.


Solution: This can happen for several reasons:



    • This error is presented: "Service cannot be reached".
      It means that /sap/bc/adt service isn't activated in your backend system.
      Go to transaction SICF and activate it. Then reopen the wizard in SAP Web IDE.

    • This error is presented: "Make sure /sap/bc/adt/discovery is reachable and returns a valid XML. If a login page is presented, change the configuration of your system to Basic Authentication as Form Authentication is not supported".
      This can be due to the fact that indeed Form Authentication or SAML is configured and that is currently not supported. A possible workaround would be to either change the entire configuration to Basic Authentication or create an external alias in SICF only for the /sap/bc/adt service, and delete the SAML configuration for this alias. This way the SAML will not be triggered for this service.

    • An "authorization" error is displayed because the /sap/bc/adt/ service isn't activated in transaction SICF. Example: Re: Authorization error when connecting to Gateway from WebIDE

    • A "forbidden" error is displayed due to missing authorizations to access /sap/bc/adt/discovery. The best way to check this is by trying to access the discovery in the browser directly from the system's host and port and not via SAP Web IDE using the same credentials, and see if the user gets a valid response. Examples: Re: WebIDE deploy error ,Not able to access Gateway system from WEB IDE

    • A "forbidden" error is displayed with no prompt for user credentials because the ICF node for ADT is configured with fixed user credentials. The solution would be to remove the fixed user credentials. This can also occur during the deployment process and result in an "CSRF token validation failed" error. Example: CSRF token validation failed while deploying extended fiori application to ABAP Repository

    • A "forbidden" error is displayed because SAP Note 1977537 is not implemented (Introduction of XHR client authentication). If you have not implemented this note or if it needs an update, make sure you implement the latest version of the note.

    • The following error is displayed: "Cannot select the system. Check the configuration for ABAP Development Tools". This can be due to missing prerequisites, or missing authorizations, see example: Error Connecting to ABAP Repository from webIDE.

    • The following error is displayed: "Access denied to resource /sap/bc/adt/discovery on system XXX. In case this was a valid request, ensure to expose the resource correctly in your cloud connector". In order to resolve this issue make sure you exposed the /sap/bc/adt path in your cloud connector, including sub-paths.



  • Problem: I can only deploy to $TMP package.
    Solution: Either a note implementation is missing, or some note's status needs a reset due to the SAP_BASIS version. Please follow the prerequisites mentioned in our documentation.

  • Problem: I'm getting an error after selecting a package or an application and in the browser's network trace I see "CSRF token validation failed" error when trying to
    reach /sap/bc/adt/cts/transportchecks service.
    Solution: In short, this issue may happen because the backend system expects a request with HTTPS and receives a request with HTTP or vice versa.
    Then it performs a redirect which makes the CSRF token invalid. Make sure to configure the destination in HCP cockpit and Cloud Connector in the
    same way the backend expects to get it (or change the security configuration of your backend system).


 

  • Problem: I'm getting this error upon deployment: "Cannot deploy application XXX: Remote creation in customer namespace not possible".
    Solution: The target system is running in SAP mode.You can either use the SAP namespace in the given application name, or change the system to work in customer mode if possible. Alternatively an empty app can be created with report /UI5/UI5_REPOSITORY_LOAD via SAPGUI and then you can deploy into it.

  • Problem: I'm getting this error upon deployment: "Cannot deploy application XXX: SAP object YYY cannot be assigned to package ZZZ".
    Solution: Verify the BSP app name matches the package you selected in terms of their namespace (whether they should start with a Z or a Y).
    See more details in this thread for example: The object is not assigned to package my new ZP... | SCN

  • Problem: I'm getting this error upon deployment: "No development license for user XXX".
    Solution: This is the standard behavior of an ABAP system. To deploy, the user has to be registered as a developer in the system.

  • Problem: I'm getting this error upon deployment: "Object X is already locked in request Y of user Z".
    Solution: Make sure to select the right transport in the wizard. If selecting a transport isn't possible check the prerequisites and make sure all relevant notes are implemented, and that you have all relevant authorizations for the /sap/bc/adt/cts/transportchecks service.

  • Problem: I'm getting this error upon deployment: "Cannot deploy the application. Virus scan server error. No virus scan profile is selected as the default".
    Solution: You need to select a virus scan profile in your backend system or switch it off. Example: Re: Cannot deploy application in ABAP Repository - Virus scan server error


 

  • Problem: I'm getting this error upon deployment: "Cannot deploy the application: Request XXX is not a local request". The transport request is created as part of the wizard.
    Solution: Both the package and the new transport request have a transport layer assigned to them. In this case, the package has a local transport layer assigned to it, but the transport request created is not a local request. See SAP Note 2121673 that deals with inconsistencies in the transport handling, and how such inconsistencies might result in this error. Check whether you have the latest release of this note and that the package is defined as described in the note.

  • Problem: Empty files aren't being deployed.
    Solution: Implement SAP Note 2211746.

  • Problem: I get an error during deployment: "Cannot deploy application <app name>: HTTP Status 504 - An internal application error occurred".
    Solution: This can happen if the application contains a rather large file, and the HTML5 Dispatcher (which is on the route from SAP Web IDE to the ABAP system) gets a timeout when trying to dispatch it.
    Sometimes the HTML5 dispatcher has a shorter timeout (30s) than the ABAP system itself (5m), so the ABAP system is actually able to handle the upload of the large file but the HTML5 dispatcher raises a timeout in the process.
    The solution would be to increase the timeout of the HTML5 Dispatcher.
    Take a look at Accessing REST Services under Destination Properties and increase the timeout to the maximum of 300s.
    You may need to perform an ICM hard reset if raising the timeout does not help.
    Finally if none of the above helps, I suggest to identify the large file and upload it manually via SE80.

  • Problem: I get an error during deployment: "Cannot deploy application <app name>: Resource XXX does already exist"
    Solution: The problem is that SAP Web IDE tries to create a new resource instead of updating it since it already exists.
    But the real problem relies in the UI5RepositoryPathMapping.xml file.
    This file contains a list of all files in the application and their paths and it should be valid. SAP Web IDE examines this file in order to get the app's structure, but if the file is not valid, i.e. manual changes have been made to it, errors such as this occur.
    You should make sure that this file is valid and depicts the true structure of the app.

  • Problem: After deploying an extended application and executing it from Fiori Launchpad I get this error: "File <namespace/<app name>/index.html NOT found!".
    Answer: The LPD_CUST URL should be accurate (possible need to end with /webapp). Example: Deploy Extended app

  • Problem: I get an error during deployment: "Cannot deploy application <app name>:
    A dynpro popup has been opened during processing".
    Solution: This should not happen.
    This error indicates that the server has tried to open a transport selection dialog, which won’t work if called via HTTP like in this case.
    A possible reason would be that the given application namespace does not match the namespace of the selected package.

  • Problem: I get an error during deployment: "Object <object name> cannot be created without a package" OR "Page <page name> does not exist in application <app name>".
    Solution: This issue can result in different error messages. The root cause is missing server stickiness during the deployment process, i.e. your system has several application servers and the deployment requests are switching between them.
    An example of a faulty situation: the request to create a folder is sent to one application server and the request to create a file in this folder is sent to another application server. This request then fails because it can't find the folder.
    Usually, when using a Web Dispatcher, session stickiness is ensured, however this is not the case if the message server of the system is used for load balancing of HTTP requests. This is a known limitation that should be avoided.
    If the message server of your system is configured either in your destination in the cockpit or in your cloud connector, this should be changed. Either use a real Web Dispatcher or specify the specific app server.


 

More Tips

 

  • Whenever you experience an issue with the deployment and ask for help, it's very helpful to attach the network trace available in the browser's Developer Tools, specifically the failed request and its response. Also attach how your destination is configured.

  • You can see the progress of the deployment in the SAP Web IDE Console (available from the View menu).




 

For more troubleshooting, check out Web IDE technical FAQ.
88 Comments
Former Member
0 Kudos
Hi Michal,

I am getting an error "Cannot deploy application Z... : CSRF token validation failed".

I have verified ADT service is active.
I am able to download the discovery file without any issues.
I use HTTP in HCC and HCP cockpit.

Can you please help to resolve this?

Thanks
Thruna
michal_keidar
Active Contributor
0 Kudos
Hi Thruna,

The blog suggests more solution to this issue except for whether the ADT service is active or not.
Have you checked whether it is configured with fixed user credentials?
You say that you use HTTP but is it what the backend expects to receive? Perhaps it expect an HTTPS request?
If none of these helped please describe more thoroughly your flow (are you deploying a new application or updating an existing one? Are you deploying to a local package or are you using a transport?).
Also attaching the network trace will be helpful.

Regards,
Michal.
Former Member
0 Kudos
Hi Michal,

I want to extend Standard fiori application "Post Incoming Payment", but it seems blank blue page.
Can you please suggest what i do for that?

Is this any version diference issue?

Thanks & Regards,
Dhara
michal_keidar
Active Contributor
0 Kudos
Hi Dhara,

Please create a separate question for it.

Thanks,

Michal.
Former Member
0 Kudos
Hi All,

I am coming across issues when I try to deploy my application from SAP Web IDE Personal Edition to SAPUI5 ABAP Repository.  Following is the error I am getting:

"Cannot deploy the application.  An entry for the UI5 BSP Repository was not found in the ABAP Development Tools Discovery service.  Install the missing software components on your ABAP system and try again.  For more information refer to the SAP Web IDE documentation."

We are on SAP 7.4 SP 15.  SAP_UI 7.4 SP 17.

What do I need to do to resolve this issue?  How can I check what software components it's referring to?

Thanks,
michal_keidar
Active Contributor
0 Kudos
Hi,

Please check the prerequisites in our documentation:
https://help.hana.ondemand.com/webide/frameset.htm?5a55141b8dff41c8b87adb4222aba3b8.html
Also if you like you can attach here the discovery.xml being downloaded when you reach:
https://<your backend host and port>/sap/bc/adt/discovery

Regards,
Michal.
Former Member
0 Kudos
Hi Michal:

Thank you for your reply.  I checked the prerequisites and I think we have all covered.

I couldn't attach the word document (with complete discovery.xml from back-end) I created, but please see the image files below that shows the error, xml file that is getting downloaded, and the test I performed in the back-end.  Hope it will be helpful.





discovery.xml that gets downloaded when I access the URL directly.


discovery.xml when I access it in back-end using T-Code /N/IWFND/GW_CLIENT


Thanks,

Jawad.
michal_keidar
Active Contributor
0 Kudos
It's a little hard because i can't see the content of the discovery.xml.

From your attachments I could see that the discovery.xml isn't right when you open it in the browser, I mean, it's not like when you open it in the system, am I right? Or is it simply not expanded? Anyway I need to see the content in order to find what's missing in your configuration.

Regards,

Michal.
Former Member
0 Kudos
Hi Michal:

Yes, you are right; the discovery.xml is not right.  It is different when I open it in the system.  I tried attaching a word document with complete discovery.xml from system, but couldn't find an option to do so.  How can I share it with you?

Thanks,

Jawad
michal_keidar
Active Contributor
0 Kudos
Maybe it's not needed. Consult with your system admin. The discovery xml should be valid when viewed via HTTP. If it's not then you need to make it work, then it will work in Web IDE as well.

Regards,
Michal.
former_member185604
Participant
0 Kudos

Regarding Problem: I’m getting an error after selecting a package or an application and in the browser’s network trace I see “CSRF token validation failed” error when trying to reach sap/bc/adt/cts/transportchecks service.—- How do I know if the backend expects http or https? And how to change it from https to http or vice versa in the backend?

Is it via SICF? but all I see is service called sap/bc/adt. Noting under adt. I am on 7.5 SP00. Notes 2046730‘ and ‘2047506‘  cannot be implemented.

Thanks!

 

michal_keidar
Active Contributor
0 Kudos
How is the backend configured in your HANA Cloud Connector and in HCP Cockpit? With HTTP or HTTPS?
former_member185604
Participant
0 Kudos
HTTP. If I use HTTPS it doesnot work.
michal_keidar
Active Contributor
0 Kudos
Then maybe it's not the issue in your case.

If you want you can send me an email and I will try to assist you.

Michal.

 
sard
Participant
0 Kudos
Michal,

Thank you for the blog and your posts on claudia.polster setup blog. We recently bought our SAP Web IDE licenses yesterday and trying to set up using our previous experience with local and personal web IDE. I tried set it up based on the blog and how we had set it up in openSAP classes.

I just wanted to see if we could connect. So I set it up as below. I get discovery errors, but the discovery.xml is well formed when executed in the gateway system. I have attached screenshots of the configuration and error.

Could you please help us with what we are missing. Do we have to use on-premise and access through the cloud connector?







 
michal_keidar
Active Contributor
0 Kudos
Hi,

The ProxyType should be OnPremise and you should use a cloud connector.

Regards,
Michal.

 
sard
Participant
0 Kudos
Thanks Michal for your response. The issue did get resolved without a connector. It was a certificate related issue and was resolved adding a different parameter.
Former Member
0 Kudos
Hi,

My application is now deployed in abap system and my problem is when I run the application in GWS sytem the destination I used in HCP is not working anymore. Do you guys have some advice on how I can deal with this issue? Thanks
michal_keidar
Active Contributor
0 Kudos
Hi,

I recommend to create a separate thread for your question and provide more information, even screenshots.

Regards,
Michal.
andrew_rough
Explorer
0 Kudos

Good day,

I am trying to setup WebIDE train to deploy UI5 applications to my SAP Gateway Server.

The connector is reporting all is happy, cockpit is reporting all is happy.

I can import apps from my gateway server into WebIDE but I am unable to deploy due to the CSRF error.

 

Here are some screeshots of my config, maybe you could avise what I am missing

Once it is working I will fix the resources

michal_keidar
Active Contributor
0 Kudos
Hi,

It would be better if you create a separate thread for your issue.

And you should also attach a screenshot of the error and specifically the failed request in the network trace.

If you want you can send me the link to your thread and I will try and assist.

Regards,
Michal.

 
0 Kudos
Hi,

 

I am always get the error like below:

An existing connection was forcibly closed by the remote host
4:03:40 PM (SAPUI5 ABAP Repository) An existing connection was forcibly closed by the remote host




But the deploying sucessfully sometimes. It looks not stable connection.


What can I do to fix it?


Best,

Tony
michal_keidar
Active Contributor
0 Kudos
Hi Tony,

This happens when the backend closes the connection. Why it does that, that's a different question 🙂

One possible reason could be that you're deploying some large file and it gets a timeout in the process. Please try to apply the solution specified in my blog, to this error: "I get an error during deployment: “Cannot deploy application <app name>: HTTP Status 504 – An internal application error occurred”.

If this doesn't work, I would need more information:

  • Network trace from the browser

  • Go to transaction smicm

  • Find the current trace level in the middle

  • In order to increase use Goto->Trace Level->Set (Level 3 would be full tracing but maybe 2 is enough)

  • Perform the actions

  • Use Goto->Trace File->Display... to view it

  • Reset level to old value


Regards,
Michal.

 
0 Kudos
Hi Michal,

 

Thanks for your reply.

It works now. Because the HCC connection is not stable. I had changed another one. Everything is fine now.

 

Best,

Tony
0 Kudos
How do I delete SAML configuration for External alias in SICF?
former_member273190
Participant
0 Kudos
Hi Michal! Thanks for your post. It really helps a lot!

I have the same issue when i try to deploy or import from ABAP Repository....

I have a cloud connector config created between SAPWEBIDE trial and my on-premise.

When i try to import something, WEBIDE asks me user and password. i'm using on-premise/backend credentials but with no success. The same happens when i thy to deploy something from cloud to ERP.

On ERP, when i try to logon with my credentials the user is blocked probably due to several time i tried on SAPWEBIDE logon...

What am i missing?

BR.

Mauricio.
michal_keidar
Active Contributor
0 Kudos
This is not really the right place for this question. Please create a new question, not as a comment to a blog.

Thanks,
Michal.
michal_keidar
Active Contributor
0 Kudos
Hi,

Please create a new question about this issue, not as a comment in a blog.

Also attach to it screenshots of your destination and cloud connector configurations.

Regards,
Michal.
thomas_knobloch
Advisor
Advisor
0 Kudos
Hi Michal,

first of all thanks for you blog, very helpful. I added it to my favorites.

But I'm facing a new problem when deploying my app to the ABAP repository.

After deployment I get a warning (Application Index) that my BSP application can't be found in the SAPUI5 Respository anymore. I know that there were some upgrades on the frontend server and since then I have that problem.

Beside the warning I get lots of errors telling me that all the sap library which are defined as dependencies in the manifest.json are not existing in the SAPUI5 library.

Can you help me here as well?

Thanks and regards, Thomas
michal_keidar
Active Contributor
0 Kudos
Hi Thomas,

I recommend that you open a new question on these issues (instead of in a comment to a blog), and there provide some screenshots with the errors you get, so it will be easier to assist.

Regards,
Michal.

 
Phani_Kumar
Participant
0 Kudos
Hi michal.keidar ,

I have configured my systems into WEBIDE Personal Edition. But our development system has undergone upgrade recently and post upgrade , I am not able to access Development system from WEBIDE.

I am getting this error

/sap/bc/adt/discovery 500 (Server Error)

SICF Node is active and I have the SAP ALL auth as well . Can you please tell me what could be the problem.
syed_khurram2
Explorer
0 Kudos
Did you able to resolve the issue, I am getting the exact same error message while trying to deploy to back end system through my local WEBIDE, I have deployed many applications to backend in the past without any issue but recently I started getting this problem

any help will be highly appreciated

 

regards

syed
srinivas_kondapalli3
Participant
0 Kudos

Hi Pawan Kalyan ,

I am also getting the same error as you. COuld you please help me .

Error url : http://localhost:8080/webidedispatcher/destinations/CTF/sap/bc/adt/discovery --> it is giving Error  500 Server error.

 

Regards,

Srinivas

Daniele_Sgi
Participant
0 Kudos
Hi, have you solved?

Can you help me with the same error?

 

Thanks
former_member789579
Discoverer
Hi,

I am getting an error 500 (Server Error) when I choose Select Application from SAPUI5 Abap Repository on SAP Web Ide.

Error url : http://localhost:8080/webidedispatcher/destinations/CTF/sap/bc/adt/discovery --> it is giving Error  500 Server error.


Could you please help me ? Thanks.

0 Kudos

Hello michal.keidar

error

I am trying to upload the SAP UI5 App from VS Code to ABAP repository, but have been getting an error as "Request SBXK998766 is not a change request".

Requesting you to please help in this scenario, attached is the screenshot for your kind reference.

 

Jan-WillemK
Active Participant
0 Kudos

Hi Betal, or anyone who stumbled upon the same 500-error

Even though your question is more than a year old, I still would like to give my answer, as I have been struggling with the same error for more than a day. In the end it turned out I had a typo in my destionation file. The URL to my backend had a space at the end...

So my file was like:

Description=Customer DEV Development system
Type=HTTP
TrustAll=true
Authentication=BasicAuthentication
Name=DEV
ProxyType=OnPremise
URL=http://servername.networkarea.hosting.local:8000/
WebIDEUsage=odata_abap,odata_gen,ui5_execute_abap,dev_abap,bsp_execute_abap,odata_xs
WebIDESystem=DEV
WebIDEEnabled=true
sap-client=100
User=KAAGMAN
Password=MyMostSecretPassword

The line I had a problem with was this:

URL=http://servername.networkarea.hosting.local:8000/

It turned out that I had a <space> at the end of the line. So I suggest checking your system defenition really carefully.

You can look in the Terminal where the Orion server is running  for more details of the "500"-error as well. That might give you a bit more information about why the 500 error is thrown.

 

JaySchwendemann
Active Contributor
0 Kudos
I know this is a rather old one but I found it with keywords "Web IDE" and "SAML" so I thought this comment might help someone.

If you happen to get the issue that the extensibility pane stays empty, please check your browser console. If it shows "Uncaught SyntaxError: Unexpected token '<' while accessing Fiori Launchpad" you are experiencing the issue described in https://me.sap.com/notes/0002882402.

In my case I just wanted to extended a stock app. As the Fiori system hence was a DEV system I took the liberty of temporarly disabling SAML alltogether, which seemed more reasonable then messing with ICF services.

TX SAML2 --> Trusted Providers --> Select provider --> Disable

You're welcome 😄