Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Lukas_Weigelt
Active Contributor

About this blog


This blog/document shows a compact and (hopefully newbie-friendly) approach for adding new / additional SAPUI5 versions (sources) to a SAP Web IDE Personal Edition and making these sources available for the Web IDE's runtime.

Almost all of the information within this blog is already available on the Community Forums and through wikis and official documentation, so the blog serves as a means of consolidation depicting one particular use case.

This blog does not cover the initial setup and configuration of the Web IDE PE. If you are looking for information to do that, I'd highly recommend this blog written by florian.henninger which covers pretty much all practical problems you might be facing which are not handled in the official documentation.

I've used a 64-bit installation for Windows of the "Productive Use" variant on version 1.53.1. The following content might not apply for a different version.

1. Downloading sources


1.1. Download your desired Version of the UI5 sources from the same page you got your Web IDE archive from, i.e. from here. If you solely need the sources you can download the runtime archive. I, however, downloaded the entire SDK because it contains some nice testing files and tons of well written documentation.

1.2. Extract the archive somewhere.

2. Adding sources to the Web IDE


2.1. Copy the folders "resources" and "test-resources" from the extracted archive from step 1. If you have downloaded the runtime archive, these folders will be the only ones available. The following Screenshot is taken from an extracted SDK archive and in my use case I wanted to add the version 1.52.8.



2.2. In your Web IDE file structure, from its root path, go to \eclipse\plugins\com.sap.webide.orionplugin_<version>\ui5. Create a new folder and name it according to the UI5 version you are about to paste in. Navigate into that folder and paste in the two folders copied from step 2.1.



Hint: If you are using or are forced to use Windows, you might encounter problems copying the files because the folder structures are highly nested and might easily exceed the Windows Explorer's restriction of 255 characters per absolute file name. You can try to fall back on the Command Shell's XCOPY, however, this might, depending on your client environment, fail due to insufficient RAM allocation rights. So, temporarily renaming subfolders to bypass the 255 restriction is the fastest, if also most unelegant, way to success.

3. Tell the Web IDE about its new sources


3.1. Navigate back to the parent directory, i.e. to the "ui5" folder and edit the "neo-app.json" file with an editor less horrible than Window's Editor. Add your new UI5 version within the routes-clause. I also replaced the maven-clause with the new version while struggling with getting things to work. If you use another build-tool or none at all, you can probably disregard changing it (I'm not really sure about this myself).


4. Link the new sources to the Web IDE's Template Wizard


Up to this point, the Web IDE will have access to the sources for SAPUI5's Version 1.52.8. This, however, does not yet mean, that the template wizard in the Web IDE's runtime "knows" this. I.e. you will not be able to select your new version from the dropdown-list.



4.1. In the Web IDE's file structure, navigate to the parent directory twice and from therein into the folder "ui5templates".



4.2. Edit the file "versionoverview.json" and add your new UI5 version respectively.


5. Caches are evil and must be purged


Naturally, after the changes you'll have to restart your Orion Server and the Web IDE. Dependent on your infrastructure, though, there are several caches which might prevent the changes made from reflecting. Here is what I had to do to get things working:

5.1. You might have already noticed in the screenshot from 3.1. that there is a clause "cacheControl" with an attribute "maxAge" in the neo-app.json file. By default, that attribute is set to a Seconds-Value which equals 365 days, meaning the cache will "live" one year. What I found especially deceptive, is the fact, that the maxAge attribute apparently reflects even though the file also contains a statement ""ui5CacheBuster": true". So apparently the cache buster only starts busting after maxAge has been exceeded. At this point I'm uncertain whether it intentionally works this way or whether it's a bug. Either way, I've set the value for maxAge to "0" for means of a clean cache-buildup.



5.2. Clear your browser cache.

5.3. Check whether your changes reflect in the Web IDE by opening the template wizard



5.4. You might want to reset the maxAge value to its default value for performance reasons.

Links to revelant Information Snippets


8 Comments
Florian
Active Contributor
Oh yes,

took me also quite some time. Thanks for sharing.
mmcisme1
Active Contributor
Personal WebIde and I are fighting each other.  I can't seem to get it working correctly.  This will help and it is bookmarked.
former_member594740
Participant
0 Kudos
Thank, very useful article
lukas.weigelt, thank you very much for such a useful topic.

I was trying to add 1.60.17 runtime to WebIDE Personal Edition v181220 and it worked flawlessly thanks to your guide.
RoryA
Explorer
Tried and tried to get this to work but keep getting this error when launching WebIDE. And if I remove the files and restore the edited files, no luck, its somehow gets corrupted and I have to re-install WebIDE.

Unhandled Error: undefined is not a valid argument for URI"

Even after clearing cache and restarting Orion server.
anton_kuznetsov4
Participant

To me it helps to clear browser data (not cookies only, in Crome it is More tools - Clear browsing data) and cookies for localhost server.

Clear it while orion is stopped, and start again after clear. It seems that I did this two times, but not remember for sure. But finally it defenetly works with 1.71.40 version.

Also I left this part in neo-app.json (no change to maven version and maxAge, maybe this is important too.

"maven": {
"groupId": "com.sap.ui5.dist",
"artifactId": "sapui5-sdk-dist",
"version": "1.44.12",
"classifier": "hcp-static",
"type": "zip"
},
"welcomeFile": "index.html",
"authenticationMethod": "none",
"cacheControl": [
{
"maxAge": 31536000
}
],

CH06
Participant
0 Kudos
FYI, setting the "maven-clause" too high now breaks the Upgrade. Best to leave it untouched if possible.
ramana24
Explorer
0 Kudos

Additional info: 
If you are using SAP WebIDE Personal edition,  JRE version 8 alone supports.
and on top if you have limitations to install .exe. As alternative, download zip file. 
https://www.oracle.com/sg/java/technologies/javase/javase8-archive-downloads.html#license-lightbox

Copy Downloaded JRE version and rename folder as "jre" as below. To run locally. remaning steps above are relevant. tested 1.96 SAP UI5 version and it works perfectly fine.

ramana24_0-1710169750875.png

 



 

Labels in this area