The *.cache.xml files generated when compiling a GWT appear to hold
information about generated classes (service proxys and field
serializers) as well as about deferred binding decisions.
As far as Web mode goes, this information seems to be irrelevant
because those classes/decisions will have already been incorporated
into the *.cache.html files.
Is my assumption here accurate? Are the *cache.xml files ever used
for anything in web mode?
are the *.cache.xml files only used by the hosted mode debugger?
Or are they simply remnants of the compile process much like the
files produced from the -gen switch?
I'm just trying to get a full picture of all the files that gwt
produces.
So far, here's what I have:
gwt.js <- bootstrap script
xxx.nocache.html <- traffic cop used for resource injection and
loading the platform/internationalization specific *.cache.html file
*.cache.html <- actual javascript payload optimized for a particular
platform and internationalization
*.cache.xml <- notes to the hosted mode debugger about compiler
decisions ???
Is my list here even remotely accurate?
Are there any other files that GWT will produce that I haven't seen?
Thanks for any information you can provide.
-jason
It matters mostly because I really need to know what the purpose of
every file is. This is especially true when deploying to a production
environment.
Forgive me if I am a little leary of deploying any thing I don't
understand to my production servers. Especially deploying something I
don't completely understand into a publicly accessible path on my
production servers.
I don't think it is too much to ask to have the purpose of all the GWT
generated files explained.
-jason
> Hi you have one cache.xml by browser (1 for ie , FF , opera ...)
yup, and they have hashed names that mirror their cache.html cousins.
That part I get.
The part I would like to have verified is that they serve no purpose
in "web" mode.
-jason
That is exactly the information I was hoping to hear.
-jason
//////////////////////////////////////////////////////////////////
// Web Mode
//
function __gwt_injectWebModeFrame(name) {
if (document.body) {
var parts = __gwt_splitModuleNameRef(name);
// Insert an IFRAME
var iframe = document.createElement("iframe");
var selectorURL = parts[0] + parts[1] + ".nocache.html";
iframe.src = selectorURL;
iframe.style.border = '0px';
iframe.style.width = '0px';
iframe.style.height = '0px';
if (document.body.firstChild) {
document.body.insertBefore(iframe, document.body.firstChild);
} else {
document.body.appendChild(iframe);
}
} else {
// Try again in a moment.
//
alert("4");
window.setTimeout(function() { __gwt_injectWebModeFrame(name); },
__gwt_retryWaitMs);
}
}
-jason