Rev 86 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<html><head><script>var $wnd = parent;var $doc = $wnd.document;var $moduleName, $moduleBase, $entry,$stats = $wnd.__gwtStatsEvent ? function(a) {return $wnd.__gwtStatsEvent(a);} : null,$sessionId = $wnd.__gwtStatsSessionId ? $wnd.__gwtStatsSessionId : null;// Lightweight metricsif ($stats) {var moduleFuncName = location.search.substr(1);var moduleFunc = $wnd[moduleFuncName];var moduleName = moduleFunc ? moduleFunc.moduleName : "unknown";$stats({moduleName:moduleName,sessionId:$sessionId,subSystem:'startup',evtGroup:'moduleStartup',millis:(new Date()).getTime(),type:'moduleEvalStart'});}var $hostedHtmlVersion="2.0";var gwtOnLoad;var $hosted = "localhost:9997";function loadIframe(url) {var topDoc = window.top.document;// create an iframevar iframeDiv = topDoc.createElement("div");iframeDiv.innerHTML = "<iframe scrolling=no frameborder=0 src='" + url + "'>";var iframe = iframeDiv.firstChild;// mess with the iframe style a littlevar iframeStyle = iframe.style;iframeStyle.position = "absolute";iframeStyle.borderWidth = "0";iframeStyle.left = "0";iframeStyle.top = "0";iframeStyle.width = "100%";iframeStyle.backgroundColor = "#ffffff";iframeStyle.zIndex = "1";iframeStyle.height = "100%";// update the top window's document's body's stylevar hostBodyStyle = window.top.document.body.style;hostBodyStyle.margin = "0";hostBodyStyle.height = iframeStyle.height;hostBodyStyle.overflow = "hidden";// insert the iframetopDoc.body.insertBefore(iframe, topDoc.body.firstChild);}var ua = navigator.userAgent.toLowerCase();if (ua.indexOf("gecko") != -1) {// install eval wrapper on FF to avoid EvalError problemvar __eval = window.eval;window.eval = function(s) {return __eval(s);}}if (ua.indexOf("chrome") != -1) {// work around __gwt_ObjectId appearing in JS objectsvar hop = Object.prototype.hasOwnProperty;Object.prototype.hasOwnProperty = function(prop) {return prop != "__gwt_ObjectId" && hop.call(this, prop);};}// wrapper to call JS methods, which we need both to be able to supply a// different this for method lookup and to get the exception backfunction __gwt_jsInvoke(thisObj, methodName) {try {var args = Array.prototype.slice.call(arguments, 2);return [0, window[methodName].apply(thisObj, args)];} catch (e) {return [1, e];}}var __gwt_javaInvokes = [];function __gwt_makeJavaInvoke(argCount) {return __gwt_javaInvokes[argCount] || __gwt_doMakeJavaInvoke(argCount);}function __gwt_doMakeJavaInvoke(argCount) {// IE6 won't eval() anonymous functions except as r-valuesvar argList = "";for (var i = 0; i < argCount; i++) {argList += ",p" + i;}var argListNoComma = argList.substring(1);return eval("__gwt_javaInvokes[" + argCount + "] =\n" +" function(thisObj, dispId" + argList + ") {\n" +" var result = __static(dispId, thisObj" + argList + ");\n" +" if (result[0]) {\n" +" throw result[1];\n" +" } else {\n" +" return result[1];\n" +" }\n" +" }\n");}/** This is used to create tear-offs of Java methods. Each function corresponds* to exactly one dispId, and also embeds the argument count. We get the "this"* value from the context in which the function is being executed.* Function-object identity is preserved by caching in a sparse array.*/var __gwt_tearOffs = [];var __gwt_tearOffGenerators = [];function __gwt_makeTearOff(proxy, dispId, argCount) {return __gwt_tearOffs[dispId] || __gwt_doMakeTearOff(dispId, argCount);}function __gwt_doMakeTearOff(dispId, argCount) {return __gwt_tearOffs[dispId] =(__gwt_tearOffGenerators[argCount] || __gwt_doMakeTearOffGenerator(argCount))(dispId);}function __gwt_doMakeTearOffGenerator(argCount) {// IE6 won't eval() anonymous functions except as r-valuesvar argList = "";for (var i = 0; i < argCount; i++) {argList += ",p" + i;}var argListNoComma = argList.substring(1);return eval("__gwt_tearOffGenerators[" + argCount + "] =\n" +" function(dispId) {\n" +" return function(" + argListNoComma + ") {\n" +" var result = __static(dispId, this" + argList + ");\n" +" if (result[0]) {\n" +" throw result[1];\n" +" } else {\n" +" return result[1];\n" +" }\n" +" }\n" +" }\n");}function __gwt_makeResult(isException, result) {return [isException, result];}function __gwt_disconnected() {// Prevent double-invocation.window.__gwt_disconnected = new Function();// Do it in a timeout so we can be sure we have a clean stack.window.setTimeout(__gwt_disconnected_impl, 1);}function __gwt_disconnected_impl() {var topWin = window.top;var topDoc = topWin.document;var outer = topDoc.createElement("div");// Do not insert whitespace or outer.firstChild will get a text node.outer.innerHTML ='<div style="position:absolute;z-index:2147483646;left:0px;top:0px;right:0px;bottom:0px;filter:alpha(opacity=75);opacity:0.75;background-color:#000000;"></div>' +'<div style="position:absolute;z-index:2147483647;left:50px;top:50px;width:600px;color:#FFFFFF;font-family:verdana;">' +'<div style="font-size:30px;font-weight:bold;">GWT Code Server Disconnected</div>' +'<p style="font-size:15px;"> Most likely, you closed GWT development mode. Or you might have lost network connectivity. To fix this, try restarting GWT Development Mode and <a style="color: #FFFFFF; font-weight: bold;" href="javascript:location.reload()">REFRESH</a> this page.</p>' +'</div>';topDoc.body.appendChild(outer);var glass = outer.firstChild;var glassStyle = glass.style;// Scroll to the top and remove scrollbars.topWin.scrollTo(0, 0);if (topDoc.compatMode == "BackCompat") {topDoc.body.style["overflow"] = "hidden";} else {topDoc.documentElement.style["overflow"] = "hidden";}// Steal focus.glass.focus();if ((navigator.userAgent.indexOf("MSIE") >= 0) && (topDoc.compatMode == "BackCompat")) {// IE quirks mode doesn't support right/bottom, but does support this.glassStyle.width = "125%";glassStyle.height = "100%";} else if (navigator.userAgent.indexOf("MSIE 6") >= 0) {// IE6 doesn't have a real standards mode, so we have to use hacks.glassStyle.width = "125%"; // Get past scroll bar area.// Nasty CSS; onresize would be better but the outer window won't let us add a listener IE.glassStyle.setExpression("height", "document.documentElement.clientHeight");}}function findPluginObject() {try {return document.getElementById('pluginObject');} catch (e) {return null;}}function findPluginEmbed() {try {return document.getElementById('pluginEmbed')} catch (e) {return null;}}function findPluginXPCOM() {try {return __gwt_HostedModePlugin;} catch (e) {return null;}}gwtOnLoad = function(errFn, modName, modBase){$moduleName = modName;$moduleBase = modBase;// Note that the order is importantvar pluginFinders = [findPluginXPCOM,findPluginObject,findPluginEmbed,];var topWin = window.top;var url = topWin.location.href;if (!topWin.__gwt_SessionID) {var ASCII_EXCLAMATION = 33;var ASCII_TILDE = 126;var chars = [];for (var i = 0; i < 16; ++i) {chars.push(Math.floor(ASCII_EXCLAMATION+ Math.random() * (ASCII_TILDE - ASCII_EXCLAMATION + 1)));}topWin.__gwt_SessionID = String.fromCharCode.apply(null, chars);}var plugin = null;for (var i = 0; i < pluginFinders.length; ++i) {try {var maybePlugin = pluginFinders[i]();if (maybePlugin != null && maybePlugin.init(window)) {plugin = maybePlugin;break;}} catch (e) {}}if (!plugin) {// try searching for a v1 plugin for backwards compatibilityvar found = false;for (var i = 0; i < pluginFinders.length; ++i) {try {plugin = pluginFinders[i]();if (plugin != null && plugin.connect($hosted, $moduleName, window)) {return;}} catch (e) {}}loadIframe("http://gwt.google.com/missing-plugin");} else {if (plugin.connect(url, topWin.__gwt_SessionID, $hosted, $moduleName,$hostedHtmlVersion)) {window.onUnload = function() {try {// wrap in try/catch since plugins are not required to supply thisplugin.disconnect();} catch (e) {}};} else {if (errFn) {errFn(modName);} else {alert("Plugin failed to connect to hosted mode server at " + $hosted);loadIframe("http://code.google.com/p/google-web-toolkit/wiki/TroubleshootingOOPHM");}}}}window.onunload = function() {};// Lightweight metricswindow.fireOnModuleLoadStart = function(className) {$stats && $stats({moduleName:$moduleName, sessionId:$sessionId, subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date()).getTime(), type:'onModuleLoadStart', className:className});};window.__gwt_module_id = 0;</script></head><body><font face='arial' size='-1'>This html file is for hosted mode support.</font><script><!--// Lightweight metrics$stats && $stats({moduleName:$moduleName, sessionId:$sessionId, subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date()).getTime(), type:'moduleEvalEnd'});// OOPHM currently only supports IFrameLinkervar query = parent.location.search;if (!findPluginXPCOM()) {document.write('<embed id="pluginEmbed" type="application/x-gwt-hosted-mode" width="10" height="10">');document.write('</embed>');document.write('<object id="pluginObject" CLASSID="CLSID:1D6156B6-002B-49E7-B5CA-C138FB843B4E">');document.write('</object>');}// look for the old query parameter if we don't find the new onevar idx = query.indexOf("gwt.codesvr=");if (idx >= 0) {idx += 12; // "gwt.codesvr=".length() == 12} else {idx = query.indexOf("gwt.hosted=");if (idx >= 0) {idx += 11; // "gwt.hosted=".length() == 11}}if (idx >= 0) {var amp = query.indexOf("&", idx);if (amp >= 0) {$hosted = query.substring(idx, amp);} else {$hosted = query.substring(idx);}// According to RFC 3986, some of this component's characters (e.g., ':')// are reserved and *may* be escaped.$hosted = decodeURIComponent($hosted);}query = window.location.search.substring(1);if (query && $wnd[query]) setTimeout($wnd[query].onScriptLoad, 1);--></script></body></html>