Migrating a project to SAP Web IDE Full-Stack
In this recent blog post, we announced that SAP Web IDE Full-Stack is ready for SAP Fiori developers and suggested you to start migrating your projects from SAP Web IDE.
Migrating to the new SAP Web IDE Full-Stack version is simple if you follow these tips:
- Understand the differences between the versions.
- Enable SAP Web IDE Full-Stack in your account.
- Choose a migration tool.
- Learn to migrate a shared project.
- Become familiar with Grunt.
- Enable additional features.
- Perform post-migration manual steps.
- Organize your projects in different workspaces.
Tip #1. Before starting the migration process, understand the differences between the SAP Web IDE versions.
In the new SAP Web IDE Full-Stack version, you can enjoy all the tools for developing SAPUI5/SAP Fiori applications you use in the current Web IDE. Also, project migration has no impact on your code.
Still, there are a few differences between the versions that you should be aware of.
Tip #2. Enable SAP Web IDE Full-Stack in your account.
This step is relevant for enterprise accounts only. In trial accounts, SAP Web IDE Full-Stack is already enabled.
Follow this procedure to set up your SAP Cloud Platform account so developers in your organization can start developing applications with SAP Web IDE Full-Stack.
Other account configurations you made for SAP Web IDE (like destinations and cloud connectors) are reusable in SAP Web IDE Full-Stack as is.
Tip #3. Decide which migration tool is better for your project.
You can migrate a project to SAP Web IDE Full-Stack either by using the Migration Wizard or by a regular Git clone operation. Consider the following to decide which method is most suitable for you:
- If you have several projects in your current Web IDE workspace and you would like to migrate them in batch, use the Migration Wizard.
- If your project is stored in a Git repository and you are not working on it right now (and therefore it does not appear in the Web IDE workspace), use the Git clone operation.
- If you have a project that you are working on together with your colleagues, read Tip #4 which explains how to migrate a shared project.
Tip #4. Learn to migrate a shared project.
If you are developing a project as a team and share the sources via a Git repository, we suggest you arrange the migration process as follows:
Step 1. In SAP Web IDE, all project contributors commit and push their changes to the Git repository.
Step 2. In SAP Web IDE Full-Stack, all team members adjust their user preferences including enabling required features.
Step 3. In SAP Web IDE Full-Stack, a representative of the team clones the project and, if needed, adjusts it as described in the Migration procedure. Then, the representative commits and pushes the generated and updated files to the Git repository.
Step 4. In SAP Web IDE Full-Stack, all team members clone the migrated project to their workspaces and continue working as usual.
We recommend that all developers working on the same project use the same SAP Web IDE version. If you choose different cloud versions or use the personal edition together with the full-stack development version, all changes to the project settings must be copied manually.
Tip #5. If you use the SAPUI5 Client Build in SAP Web IDE, become familiar with Grunt.
To know if this tip is relevant for your project, in SAP Web IDE open Project Settings and select the Project Types option. If the SAPUI5 Client Build checkbox is selected, then this is for you.
In SAP Web IDE Full-Stack, proprietary SAPUI5 Client build functionality is not available anymore. Instead, you can use open source technology: Grunt.
“Tasks are the modules that perform a specified job. They are defined in the Gruntfile. Developers can load predefined tasks from existing Grunt plugins and/or write custom code to define their own tasks depending on their requirements.”
To use Grunt in a project, two specific files need to be created in the root directory, namely package.json and a Gruntfile.
- package.json– contains the metadata for the project including name, version, description, authors, licenses and its dependencies (Grunt plugins required by the project).
— from Wikipedia
If your project is configured to use SAPUI5 Client Build, the files required to run the Grunt build are generated automatically during migration by one of the methods described in Tip #2. This produces the same output as the SAPUI5 Client build. You can use this best-practice configuration or extend the build as needed.
If your project is connected to Git, submit and push the generated Grunt files to your repository.
For more details on Grunt in SAP Web IDE Full-Stack, see Building Applications.
Tip #6. Before migrating your project, enable the required additional features in SAP Web IDE Full-Stack.
Optional plugin capabilities are provided by features in the SAP Web IDE Full-Stack version. If you use optional plugins in the current Web IDE, you should enable the corresponding features manually. For more information, see Enable Additional Features.
If you developed a plugin in SAP Web IDE, you will have to convert it to a feature as described in the Creating Our First Feature tutorial in the SAP Web IDE SDK.
Tip #7. Don’t forget to perform the post-migration manual steps.
If your project is connected to Git, you must commit and push to your Git repository the following files and folders that are generated or updated during migration regardless of the method you choose (see Tip #3):
- .che folder:
SAP Web IDE Full-Stack stores the project metadata and settings in a special system folder called .che. This folder is hidden by default. During migration, this folder is generated from the .project.json file that is no longer in use in SAP Web IDE Full-Stack.
- package.json, package-lock.json, Gruntfile.js, and .npmrc files:
If you used the SAPUI5 Client build in SAP Web IDE to minify and bundle files before deployment, these files are created in your project to enable the Grunt build. For more details on Grunt in SAP Web IDE Full-Stack, see Building Applications.
- If your project contains an ESLint configuration file .eslintrc, the “customRulesPath” property will be removed from it. The custom rule definition path will be stored in the .che If the “customRulesPath” property points to your custom rules definition file, the corresponding field in the .che metadata will be updated accordingly.
Depending on the type of your project, you may need to do another 1 or 2 small post-migration steps. For the details, please refer to the Migration procedure.
Tip #8. Organize your projects in different workspaces.
If you have several projects in your workspace, you will enjoy our new functionality that allows you to manage multiple workspaces and have them open in different browser tabs at the same time. With multiple workspaces, you can better organize your space by splitting projects in any way that suits you, for example by topics or customer domains.
You can find more information in this blog on our multiple workspaces or in the SAP Web IDE documentation.
hi Natalia Katunin
Thanks for the blog...I am facing an issue when importing a project prototyped from www.build.me then I have these errors in my controllers. can you please advise how to rectify?
Is Tip#5 relevant to this matter?
You should be using oEvent.getParameter("data") or oEvent.getParameters() rather than accessing the parameter map directly. That's where the error is coming from
Thank you for the feedback.
The tip #5 is relevant for the case when you migrate your project from the previous version of Web IDE and the project is configured to use Client side build.
The error you get does not seem related to Grunt at all. I will forward your question to our experts in code validation area so they can advise.
The link in your first tip to "few differences " leads to a not existing page.
Unfortunately, there is a general issue with help/documentation pages.
Please try later.
Sorry for the inconvenience.
I get an error when I use the migration wizard: Import of project failed with status 403
What could be the reason for this? How can I fix it?
I have forwarded the issue to my colleagues for investigations.
Could you please send the failed project in a zip file to my email: email@example.com for further investigation?
Could you please describe your step by step as well.
Hannes, did you find a solution yet?
I get a similar error.
– Failed to migrate project migrateme
Import of project migrateme=migrateme failed with status: 404.
I get the error for every project I have. So it is not project specific but more general. Are there any other prerequesites for the migration to work?
A hotfix is planned to be released till the end of this week.
Will keep you updated.
I had no problems migrating my projects with the wizard or via git clone. But it seems something went wrong anyway.
When i click on my old apps (from git or migrating wizard) there is no "Enable App To App Navigation" in the context menu.
Additionally i cant run my apps as "Sap Fiori Launchpad Sandbox" (no menu item in the context menu). When i create a new projekt from template (or sample application) i dont have these problems.
Is something missing in my old projects?
Please open Project settings of your project in Web IDE Full-Stack and set additional type Fiori in the Project Types tab. Save.
Then you will see the missing options.
Thank you very much, it worked! I totally missed that.
Could you please send me a zip of your project in Web IDE (emali: firstname.lastname@example.org )? I am trying to understand why the fiori type wasn't propagated automatically during the migration.
Thanks in advance,
I'm sorry, but since that project was a customer project, i can't send it to anyone.
I have also trouble to migrate projects. As well, (we are using a plain UI5 application), I cannot run the application from the WebIDE. Could you please provide a component to report bugs?
I migrate to WebIde Full Stack and i regret it.
Since that, it's impossible to create a basic app, initialized from a template or similar. When i run app, page stay empty.
Basic code "Hello World" (found here : https://sapui5.hana.ondemand.com/#/topic/592f36fd077b45349a67dcb3efb46ab1) executed on WebIde Full Stack not working (it's always ok on previous Web Ide)
Issue is similar on others browsers, others desktop, other colleagues.
Could you please share with me a zip of the Hello World application that works for you in the old Web IDE. I've just checked the behavior of the app that I downloaded from the tutorial: in both IDEs running the imported project opens an empty page. So I would like to validate the issue with your version to analyze the differences.
Thanks for your answer.
See the code below ( a simple index.html)
Ok on classic WebIde.
Nothing on WebIde Full Stack (and no error in Chrome console)
Unfortunately, index.html is not enough to investigate why preview does not work for you. Could you please upload the complete project as a zip here or send it to me by mail.
Could you please try a workaround described in this blog:
Meanwhile, we are working on resolving the root cause of the issue.
I migrated my code using Git and everything came over smoothly. I can run/test my app from Web IDE Full Stack.
When I deploy my code to Cloud Platform it says it successfully deploys but I receive a 404 when opening the URL. I exported the code from Cloud Platform to see what the issue was and the .zip file is empty. Any direction on what might have gone wrong?
may I lead you to another migration problem at
Perhaps a solution is not far away 🙂
Thank you very much.
thanks for your hints. The migration process works fine at least.
However, you should mention that only the first 100 projects can be migrated in one step; since the table in the migration wizzard, where you can select the projects for migration, holds only 100 entries.
Best regards, Gert
we have to migrate an app to the Web IDE Full Stack. Last year we made a download of the app in a zip file.
Now I can import the app in the Full Stack version. But there is no lorry-button for the migration tool.
Was the app migrated during the import? Is there some configuration missing?
The migration tool is available only if your user had projects in the old Web IDE from the same subaccount. Then, the tool allows to copy these projects to Web IDE Full-Stack. Is it your case?
If you have a project zip archive, you can export it into the new Web IDE from the right-click menu.
thank you for the quick response.
I've got the zip file from a collegue. He has created the app in his hana trial account with the old Web IDE. And he is not available anymore...
Now I wan't to implement the app in our productive hana account. There we never had an old Web IDE project.
So if I understand correctly, I should import the project from the zip and export it again into a zip. During this export it will get the new structure and I can import the second zip file to have a Web IDE Full Stack project?
My mistake: if you have a zip file that you got by exporting a project from the old Web IDE, you can now IMPORT it into your SAP Web IDE Full-Stack. You will get the same project structure. But you'll need to adjust your project manually in the following cases:
Please let me know if these cases are relevant to you and I will send you further instructions.
I'm pretty sure he didn't change the default values of a new project. So I assume it's without the SAPUI5 Client Build functionality.
There is no .eslintrc file in the project.
So there is nothing more to do?
Actually, there were templates that automatically enabled the SAPUI5 Client Build.
But the good news is that even if this is your case you do not need to do anything - I have just checked, Web IDE Full-Stack adjusts such projects automatically during import as well.
thank you very much for your great support!
It works perfect!
I have the same case but I used SAPUI5 Client Build, please, Could you let me know which steps I need to follow to adjust my project?
Thanks you in advance for your help!
I validated the scenario, Web IDE Full-Stack adjusts such projects (configured to use SAPUI5 Client Build in the old environment) automatically also when you import zip archives. It generates Grunt files (Gruntfile.js, package.jjson, etc) that are required to run Grunt build. Grunt technology replaced SAPUI5 Client Build in the new Web IDE. You can read more in the Tip #5 above.
We were not able to migrate our projects from old WEB IDE to the full stack in 2018. When I trying to do it now, I don't see the migrate icon on my Web IDE full stack.
I am using a trial account.
I have made sure that the DiDeveloper and DiAdministrator roles are assigned to my ID but still the project migration option is not appearing.
The migration icon appears in Web IDE Full-Stack only if you still have projects created with the old Web IDE in the same account.
Please check if you used the old Web IDE from the same Trial account.
The project could have been deleted if you re-created account or disabled the old Web IDE service in the Cloud platform cockpit. If it happened there is no way to get the projects.
Thanks for writing.
The projects were created in the old Web IDE with the same trial account.
I just enabled the full stack from cloud platform cockpit and did not disable any thing related to old WEB IDE.
The only change i did was to make this profile public instead of private and add the DIDeveloper and admin roles.
I hope that projects dont cease to exist in old Web IDE post Dec 31st 2018. Please confirm.
Is there any other troubleshooting which i can do.
We have not performed any clean up of users' workspaces after depreciation of the old Web IDE. We just closed access via the IDE itself.
Please try to follow this procedure to export projects: