In our applications, we are making heavy use of web components. Currently, we are making use of the ui.Interface.frontCall("standard", "setWebComponentPath",
http:// []) to direct GDC to an Apache URL where the web component is accessible.[url]http://4js.com/online_documentation/fjs-fgl-manual-html/#fgl-topics/c_fgl_frontcall_standard_setwebcomponentpath.htmlWe are aware that this feature is deprecated. We chose this method over the recommended deployment mechanism (
http://4js.com/online_documentation/fjs-fgl-manual-html/#fgl-topics/c_fgl_webcomponent_gicapi_location.html) because we found that with this mechanism, the web components are ALWAYS downloaded by an application when it loads. Even when you already have an application running, launching it again forces re-download. If our web component consist of large javascript libraries, the web components are slow to load, add to the bandwidth it consumes, that was not acceptable. The deprecated setWebComponentPath method caches the content, giving us much better performance.
Here is when we run into a problem. We had a bug in one of our web component that requires changes to a JavaScript library. We have already taken care of the typical browser caching by putting a random timestamp on the script src url (cache busting) and it works fine when we run in GBC. Cache busting does not seem to work in GDC for some reason. When I run GDC, it continues to use my old script, even after I restarted GDC.
During development, I can go to GDC Advanced Options to clear the web cache, but I don't expect our end users to be doing that (they don't even have access to the advanced options when running GDC). What can we do to get GDC to grab the new JavaScript files, or at the very least, clear its web cache?