Closed
Bug 1193947
Opened 8 years ago
Closed 6 years ago
DeKlab, GA county school locator will not display application
Categories
(Web Compatibility :: Mobile, defect)
Tracking
(Not tracked)
RESOLVED
DUPLICATE
of bug 1070763
People
(Reporter: gio.marrero87, Unassigned, NeedInfo)
References
()
Details
(Whiteboard: [sitewait] [http] [BOM])
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.130 Safari/537.36 Firefox for Android Steps to reproduce: Web Page will not display on Firefox but will on Chrome, Safari, EI http://www.dekalb.k12.ga.us/www/school-locator/ Actual results: Not Displaying Expected results: Web page should display http://www.dekalb.k12.ga.us/www/school-locator/
Severity: normal → critical
Updated•8 years ago
|
Group: core-security
Comment 1•8 years ago
|
||
Giovanni, please let the developers set the severity.
Severity: critical → normal
The server is not reachable or broken, I tried with both FF40 and IE11, no success. Even the cached version in Google doesn't work.
Status: UNCONFIRMED → RESOLVED
Closed: 8 years ago
Resolution: --- → INVALID
Comment 3•8 years ago
|
||
I can reach the web site. I didn't go very far debugging but it appears that it uses display to show the progress div and when it completes it is supposed to set the progress to display:none and the remainder to display:block I believe. It performs a number of tests and may fail to display the content due to our failure to pass them. Regardless, this isn't invalid due to an unreachable server.
Status: RESOLVED → REOPENED
Ever confirmed: true
Resolution: INVALID → ---
Does the code below mean anything to anybody? This is where the page is failing, not sure why. jimu.js init... main.js:148:7 Load Config: timer started ConfigLoader.js:90 Load Config: 175.06ms ConfigManager.js:101 Load Map: timer started MapManager.js:65 Error: Invalid template: <div> <div class="loading-container"> <img data-dojo-attach-point="loadingImg"/> <p data-dojo-attach-point="textNode">${nls.loading}...</p> </div> </div> Stack trace: .cache["dijit/_TemplatedMixin"]/</d<.buildRendering@http://js.arcgis.com/3.13/init.js:286:377 .cache["dijit/_WidgetBase"]/</f<.create@http://js.arcgis.com/3.13/init.js:1123:120 .cache["dijit/_WidgetBase"]/</f<.postscript@http://js.arcgis.com/3.13/init.js:1122:94 d/<@http://js.arcgis.com/3.13/init.js:108:190 clazz<._showMap@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/MapManager.js:66:24 clazz<.showMap@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/MapManager.js:60:9 clazz<._loadMap@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/LayoutManager.js:521:7 clazz<.onAppConfigLoaded@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/LayoutManager.js:96:7 .cache["dojo/_base/lang"]/</g.hitch/<@http://js.arcgis.com/3.13/init.js:177:294 l/</h@http://js.arcgis.com/3.13/init.js:244:108 .cache["dojo/on"]/</k.emit@http://js.arcgis.com/3.13/init.js:220:234 .cache["dojo/on"]/</k.emit@http://js.arcgis.com/3.13/init.js:221:296 .cache["dojo/Evented"]/</e.prototype.emit@http://js.arcgis.com/3.13/init.js:183:337 .cache["dojo/topic"]/</<.publish@http://js.arcgis.com/3.13/init.js:197:389 clazz<.loadConfig/<@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/ConfigManager.js:102:1 .cache["dojo/_base/lang"]/</g.hitch/<@http://js.arcgis.com/3.13/init.js:177:294 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</g/<@http://js.arcgis.com/3.13/init.js:200:217 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</g/<@http://js.arcgis.com/3.13/init.js:200:217 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</f/b.then@http://js.arcgis.com/3.13/init.js:202:308 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:34 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</g/<@http://js.arcgis.com/3.13/init.js:200:217 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 clazz<.loadWidgetsManifest/<@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/ConfigLoader.js:720:11 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/promise/all"]/</</</<@http://js.arcgis.com/3.13/init.js:815:54 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 clazz<.loadWidgetManifest/<@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/WidgetManager.js:193:15 .cache["dojo/_base/lang"]/</g.hitch/<@http://js.arcgis.com/3.13/init.js:177:294 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:103 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 q@http://js.arcgis.com/3.13/init.js:160:170 f@http://js.arcgis.com/3.13/init.js:164:199 .cache["dijit/_TemplatedMixin"]/</d<.buildRendering@http://js.arcgis.com/3.13/init.js:286:377 .cache["dijit/_WidgetBase"]/</f<.create@http://js.arcgis.com/3.13/init.js:1123:120 .cache["dijit/_WidgetBase"]/</f<.postscript@http://js.arcgis.com/3.13/init.js:1122:94 d/<@http://js.arcgis.com/3.13/init.js:108:190 clazz<._showMap@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/MapManager.js:66:24 clazz<.showMap@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/MapManager.js:60:9 clazz<._loadMap@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/LayoutManager.js:521:7 clazz<.onAppConfigLoaded@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/LayoutManager.js:96:7 .cache["dojo/_base/lang"]/</g.hitch/<@http://js.arcgis.com/3.13/init.js:177:294 l/</h@http://js.arcgis.com/3.13/init.js:244:108 .cache["dojo/on"]/</k.emit@http://js.arcgis.com/3.13/init.js:220:234 .cache["dojo/on"]/</k.emit@http://js.arcgis.com/3.13/init.js:221:296 .cache["dojo/Evented"]/</e.prototype.emit@http://js.arcgis.com/3.13/init.js:183:337 .cache["dojo/topic"]/</<.publish@http://js.arcgis.com/3.13/init.js:197:389 clazz<.loadConfig/<@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/ConfigManager.js:102:1 .cache["dojo/_base/lang"]/</g.hitch/<@http://js.arcgis.com/3.13/init.js:177:294 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</g/<@http://js.arcgis.com/3.13/init.js:200:217 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</g/<@http://js.arcgis.com/3.13/init.js:200:217 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</f/b.then@http://js.arcgis.com/3.13/init.js:202:308 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:34 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</g/<@http://js.arcgis.com/3.13/init.js:200:217 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 clazz<.loadWidgetsManifest/<@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/ConfigLoader.js:720:11 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/promise/all"]/</</</<@http://js.arcgis.com/3.13/init.js:815:54 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 clazz<.loadWidgetManifest/<@http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/WidgetManager.js:193:15 .cache["dojo/_base/lang"]/</g.hitch/<@http://js.arcgis.com/3.13/init.js:177:294 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:199:431 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:103 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 .cache["dojo/Deferred"]/</a@http://js.arcgis.com/3.13/init.js:200:309 .cache["dojo/Deferred"]/</k@http://js.arcgis.com/3.13/init.js:200:70 .cache["dojo/Deferred"]/</m@http://js.arcgis.com/3.13/init.js:199:357 .cache["dojo/Deferred"]/</f/this.resolve@http://js.arcgis.com/3.13/init.js:201:441 q@http://js.arcgis.com/3.13/init.js:160:170 f@http://js.arcgis.com/3.13/init.js:164:199 init.js:209:10 n() init.js:209 k/g<() init.js:209 .cache["dojo/_base/array"]/</g.filter() init.js:230 k() init.js:209
Updated•8 years ago
|
Component: Untriaged → General
Product: Firefox → Firefox for Android
Version: 39 Branch → Firefox 39
Comment 5•8 years ago
|
||
This is broken on both desktop and Firefox for Android. Mike do you have time to look at this?
Component: General → Mobile
Flags: needinfo?(miket)
Product: Firefox for Android → Tech Evangelism
Summary: Web Page will not display → DeKlab, GA county school locator will not display application
Version: 39 Branch → Firefox 39
Comment 6•8 years ago
|
||
Giovanni, do you happen to work on the site? If so, there's a utf8 byte order mark at the beginning of the LoadingShelter.html template that is causing the app to throw in Firefox: http GET http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/dijit/templates/LoadingShelter.html HTTP/1.1 200 OK Accept-Ranges: bytes Connection: Keep-Alive Content-Encoding: gzip Content-Length: 135 Content-Type: text/html; charset=ISO-8859-1 Date: Mon, 11 Jan 2016 20:56:40 GMT ETag: "45de63-b1-51a7861289300" Keep-Alive: timeout=3, max=100 Last-Modified: Thu, 09 Jul 2015 22:00:12 GMT Server: Apache/2.2.15 (Unix) mod_perl/2.0.4 Perl/v5.8.8 Vary: Accept-Encoding <div> <div class="loading-container"> <img data-dojo-attach-point="loadingImg"/> <p data-dojo-attach-point="textNode">${nls.loading}...</p> </div> </div> Note the "" -- it's being served as ISO-8859-1. Not sure why Chrome is happy with that, but I would suggest removing the BOM so Dojo doesn't throw Error: Invalid template.
Flags: needinfo?(miket) → needinfo?(gio.marrero87)
![]() |
||
Comment 7•8 years ago
|
||
needinfo Henri who might be interested by encoding/parsing bugs.
Flags: needinfo?(hsivonen)
![]() |
||
Comment 8•8 years ago
|
||
Giovanni indeed seems to be working there. https://www.linkedin.com/in/giovanni-marrero-a6315923 So I'm switching the bug to contacted. Giovanni, Any progress?
Whiteboard: [sitewait] [http] [BOM]
Sorry for the late reply. I have been super busy at work. I have found out that the exact same files will work and display on firefox when using my local ISS machine. So I'm assuming there is something blocking the website on the school's server. Which is sadly out of my control since I'm not with the IT department.
Flags: needinfo?(gio.marrero87)
Reporter | ||
Comment 10•8 years ago
|
||
(In reply to Mike Taylor [:miketaylr] from comment #6) > Giovanni, do you happen to work on the site? > > If so, there's a utf8 byte order mark at the beginning of the > LoadingShelter.html template that is causing the app to throw in Firefox: > > http GET > http://www.dekalb.k12.ga.us/www/school-locator/jimu.js/dijit/templates/ > LoadingShelter.html > HTTP/1.1 200 OK > Accept-Ranges: bytes > Connection: Keep-Alive > Content-Encoding: gzip > Content-Length: 135 > Content-Type: text/html; charset=ISO-8859-1 > Date: Mon, 11 Jan 2016 20:56:40 GMT > ETag: "45de63-b1-51a7861289300" > Keep-Alive: timeout=3, max=100 > Last-Modified: Thu, 09 Jul 2015 22:00:12 GMT > Server: Apache/2.2.15 (Unix) mod_perl/2.0.4 Perl/v5.8.8 > Vary: Accept-Encoding > > <div> > <div class="loading-container"> > <img data-dojo-attach-point="loadingImg"/> > <p data-dojo-attach-point="textNode">${nls.loading}...</p> > </div> > </div> > > Note the "" -- it's being served as ISO-8859-1. Not sure why Chrome is > happy with that, but I would suggest removing the BOM so Dojo doesn't throw > Error: Invalid template. Hello, Thank you for looking into the problem. I open the loadingshelter.html file to look for the weird question mark. Below is the script, which seems to be fine (no upside down question mark) <div> <div class="loading-container"> <img data-dojo-attach-point="loadingImg"/> <p data-dojo-attach-point="textNode">${nls.loading}...</p> </div> </div>
![]() |
||
Comment 11•8 years ago
|
||
Giovanni, The BOM (Byte Order Mark) is not always visible in all editors. http://stackoverflow.com/questions/2223882/whats-different-between-utf-8-and-utf-8-without-bom Be sure to save the file as ISO-8859-1 before putting it on the server. When saving the file, you might want to "save as UTF-8 without BOM" Or change the configuration of the server so that it is served as UTF-8. Currently the file and the server don't have the same encoding. ^_^ Thanks.
Flags: needinfo?(gio.marrero87)
Loading the URL times out for me, but looking at the minified JS code, it seems that the HTML template isn't being loaded via the HTML parser (neither through an iframe nor through the "document" mode of XHR). Instead, it looks like it's being loaded via XHR as non-HTML data. It's unclear to me how exactly Dojo sets up XHR, so I'm not immediately sure if we should be decoding as windows-1252 thanks to the ISO-8859-1 label or if we should let the BOM override. Anyway, if we have a bug, it's an XHR plain text handling bug and not a parser bug. Keeping myself needinfoed so that I don't forget this.
Flags: needinfo?(miket)
OK, we have a bug. https://xhr.spec.whatwg.org/#text-response invokes https://encoding.spec.whatwg.org/#decode which sniffs for BOM. However, our XHR code doesn't. Duplicate of bug 1070763. Not marking as such in case you wish to pursue evangelism anyway.
Flags: needinfo?(hsivonen)
![]() |
||
Comment 14•7 years ago
|
||
Thanks a lot Henri. Giovanni, that would be very cool if you could fix this on your side too.
(Clearing the needinfo that I set but then edited out the question for.)
Flags: needinfo?(miket)
Status: REOPENED → RESOLVED
Closed: 8 years ago → 6 years ago
Resolution: --- → DUPLICATE
Assignee | ||
Updated•4 years ago
|
Product: Tech Evangelism → Web Compatibility
You need to log in
before you can comment on or make changes to this bug.
Description
•