MapGuide Open Source:  Home |  Download |  Internals

Ticket #378 (new defect)

Opened 6 months ago

Last modified 4 days ago

AJAX viewer does not load map in Firefox 3 RC 1

Reported by: jng Assigned to:
Priority: high Milestone: 2.1
Component: AJAX Viewer Version: 2.0.1
Severity: major Keywords:
Cc: chrisclaydon External ID: 1085043

Description

Using Firefox 3.0 beta 2 (Ubuntu Linux 7.10). Load any sample site at http://mapguide.osgeo.org/livegallery.html

The AJAX viewer will load without a problem, but the map itself will not load at all, and the zoom slider will be stuck at 0.0

Attachments

1.PNG (23.4 kB) - added by macieks on 06/18/08 04:40:47.
2.PNG (10.1 kB) - added by macieks on 06/18/08 04:41:53.
FF3 and firebug
3.PNG (9.8 kB) - added by macieks on 06/18/08 04:42:13.
FF3 and firebug
FixedFiles.zip (59.5 kB) - added by tomfukushima on 06/20/08 13:20:52.
FF3Fix.patch (1.4 kB) - added by tomfukushima on 06/20/08 13:24:07.

Change History

02/13/08 09:56:48 changed by jng

Still get the same problems with beta 3

02/29/08 00:41:27 changed by jng

  • milestone set to 2.1.

03/06/08 17:52:02 changed by jng

Using the following environment:

  • Windows XP SP2
  • MGOS 2.0.0 w/ Apache/PHP configuration w/ Shebpygan dataset
  • Firefox 3 Beta 3

The following happens:

1. This POST operation fails

OPERATION=GETVISIBLEMAPEXTENT&VERSION=1.0.0&SESSION=1eef8b10-0000-1000-8001-000c292b5017_en_7F0000010AFC0AFB0AFA&MAPNAME=Sheboygan&SEQ=0.8608854176114282&SETDISPLAYDPI=96&SETDISPLAYWIDTH=824&SETDISPLAYHEIGHT=453&SETVIEWSCALE=98563.34333416916&SETVIEWCENTERX=-87.7302542509315&SETVIEWCENTERY=43.744459064634

2. That POST operation also kills/crashes the Apache service. Error logs show the following:

The Apache service named reported the following error:

[Fri Mar 07 09:53:44 2008] [notice] Disabled use of AcceptEx?() WinSock?2 API .

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

05/17/08 00:24:17 changed by zspitzer

Using mapguide 2.0.1, this crashed also my apache ticket:557

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
[Sat May 17 14:12:03 2008] [crit] Parent: child process exited with status 3 -- Aborting.

05/17/08 00:28:18 changed by zspitzer

  • priority changed from medium to high.
  • version changed from 1.2.0 to 2.0.0.
  • summary changed from AJAX viewer does not load map in Firefox 3 beta to AJAX viewer does not load map in Firefox 3 RC 1.

Both tiled and untiled maps in the basic viewer don't work in Firefox 3.0 RC 1. Firefox loads and then shows the following error in firebug

parent.InMeasure? is not a function [Break on this error] if(!parent.InMeasure?())

mapframe.php line 1115

I have seen any problem's with fusion layouts so far.

05/26/08 11:36:58 changed by tomfukushima

Perhaps it is Sarrisa.js, can you try updating that to 0.9.9.4 and see if that resolves the problem? The file is in the viewerfiles directory of the web server extensions.

Also, can you try running Fiddler on the client and see which HTTP request is crashing Apache?

05/26/08 12:05:36 changed by zspitzer

  • version changed from 2.0.0 to 2.0.1.

updating sarrissa.js made no difference..

using fiddler, there was no response to this request (#16)

which was done as a HTTP POST... POST http://localhost:8008/mapguide/mapagent/mapagent.fcgi

OPERATION=GETVISIBLEMAPEXTENT&VERSION=1.0.0&SESSION=c7c1dc7a-ffff-ffff-8000-005056c00001_en_7F0000010AFC0AFB0AFA&MAPNAME=Sheboygan&SEQ=0.3653077422034543&SETDISPLAYDPI=96&SETDISPLAYWIDTH=805&SETDISPLAYHEIGHT=570&SETVIEWSCALE=78331.92022873442&SETVIEWCENTERX=-87.7302542509315&SETVIEWCENTERY=43.744459064634

trying it as a HTTP GET doesn't crash...

http://localhost:8008/mapguide/mapagent/mapagent.fcgi?OPERATION=GETVISIBLEMAPEXTENT&VERSION=1.0.0&SESSION=c7c1dc7a-ffff-ffff-8000-005056c00001_en_7F0000010AFC0AFB0AFA&MAPNAME=Sheboygan&SEQ=0.3653077422034543&SETDISPLAYDPI=96&SETDISPLAYWIDTH=805&SETDISPLAYHEIGHT=570&SETVIEWSCALE=78331.92022873442&SETVIEWCENTERX=-87.7302542509315&SETVIEWCENTERY=43.744459064634

05/26/08 12:07:10 changed by zspitzer

ignore the ticket 16 link, i was just referring to the number of http requests logged whilst loading the viewer

05/26/08 13:31:26 changed by tomfukushima

  • cc set to chrisclaydon.

05/28/08 14:26:50 changed by tomfukushima

Would you be able to use Fiddler to see what the difference in requests is between FF2 and FF3? Thanks, Tom

05/29/08 00:53:24 changed by zspitzer

Firefox 3 is sending a slightly different Content-Type

FF3: Content-Type: application/x-www-form-urlencoded; charset=UTF-8 FF2: Content-Type: application/x-www-form-urlencoded

apart from that the requests are pretty much the same, the post variables are slightly different ( but i think that's rounding stuff )

Interestingly, whilst FF2 will render the map, using live http headers replay function, the same request will crash apache when it's called by itself

[Thu May 29 14:28:18 2008] [error] [client 192.168.84.3] Invalid Content-Length, referer: http://zac:8008/mapguide/mapviewerajax/mapframe.php ?MAPDEFINITION=Library%3A%2F%2FSamples%2FSheboygan%2FMaps%2FSheboygan.MapDefinition?&TYPE=HTML&SHOWLEGEND=1&SHOWPROP=1&INFOWIDTH=200 &LOCALE=en&HLTGT=1&HLTGTNAME=&SHOWSLIDER=1&SESSION=2407287e-0000-1000-8003-005056c00008_en_7F0000010AFC0AFB0AFA

This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. [Thu May 29 14:28:18 2008] [crit] Parent: child process exited with status 3 -- Aborting.

06/03/08 11:15:54 changed by tomfukushima

  • external_id set to 1085043.

06/09/08 06:23:15 changed by guest

While waiting mapguide team fix this, I suggest following workaround for time being. Add to WebServerExtensions/Apache?2/conf/httpd.conf . At least works for me, YMMV

<Directory "C:/Program Files/MapGuideOpenSource2.0/WebServerExtensions/www/mapagent/">

<Files mapagent.fcgi>

SetEnvIf? Content-Type "application/x-www-form-urlencoded" truef3 RequestHeader? set Content-Type "application/x-www-form-urlencoded" env=truef3

</Files>

</Directory>

(follow-up: ↓ 15 ) 06/18/08 03:54:33 changed by gabrimonfa

@tomfukushima

I'm not sure to have understood your words correctly. Do you mean that with your workaround you are able to view the map in the ajax viewer with Firefox 3?

(in reply to: ↑ 14 ) 06/18/08 04:38:45 changed by macieks

i try this fix but still don't see map on FF3.

06/18/08 04:40:47 changed by macieks

  • attachment 1.PNG added.

06/18/08 04:41:53 changed by macieks

  • attachment 2.PNG added.

FF3 and firebug

06/18/08 04:42:13 changed by macieks

  • attachment 3.PNG added.

FF3 and firebug

06/18/08 04:56:52 changed by gabrimonfa

I think this bug is extremely important.

Firefox 3 is out, no possibility to download FF2 anymore. Firefox is by far the most used browser apart from IE. Not supporting Firefox3 cuts out a lot of users and destroys one of the major pros of this product, the fact that it is not available only for legacy, proprietary ActiveX enabled browser.

This bug was opened 6 month ago, and was here since the very first beta of FF3. In my opinion 6 month are enough to try to fix such an important bug!

06/19/08 10:06:29 changed by guest

I was also able to get it working by applying the workaround suggested. Please make sure the following line is not commented out in your httpd.conf:

LoadModule headers_module modules/mod_headers.so

Hope it helps. Dário Oliveros

06/20/08 13:20:52 changed by tomfukushima

  • attachment FixedFiles.zip added.

06/20/08 13:21:30 changed by tomfukushima

OK, it looks like we're not getting much progress on this. I compiled the code and debugged and sure enough it looks like FF3 is sending the content type in the extended format that Zac mentions. And sure enough the code expects it in the FF2 format and that is causing the failures. Can you try using the attached files (FixedFiles.zip, MD5: 1339dedef68a59cc2646c4caa6ee0663) to see if it fixes your problems and doesn't introduce new ones?

This will only work for MGOS 2.0.1 on Windows. To do this: Stop your web server. Find occurrences of the file in your webserverextensions install and replace them with the attached (you should really also make copies of the originals in case you need to restore things). Restart your web server. Test.

If you test this please post a note in this ticket with the configuration you tested and the results.

I'll post a patch (called FF3Fix.path or something like that) for those who are compiling from source.

Thanks, Tom.

06/20/08 13:24:07 changed by tomfukushima

  • attachment FF3Fix.patch added.

06/20/08 17:33:09 changed by tomfukushima

06/20/08 21:33:01 changed by zspitzer

The patch files worked successfully for me :)

Using MG 2.0.1 & XP SP3 FF 3.0 & Apache

06/20/08 23:50:20 changed by zspitzer

I tried applying the patch on Linux against the 2.0.x branch.

The basic viewer now works on linux as well, but fusion isn't working for against my linux server with Firefox now. It does, however, work with IE.

It just seems to hang silently.. digging with fiddler I saw an error which looks like an ELF binary (mapguide.fcgi ?) is being passed by fusion as the sessionid

snip

%2Fweblayouts%2FSlate.ApplicationDefinition?&session=%7FELF%01%01%01%00%00%00%00%00%00%00%00%00%02%00%03%00%01%00%00%000%EF%BF%BD%06%084%00%00%008%3CI%00%00%00%00%004%00%20%00%08%00(%00%27%00%24%00%06%00%00%004%00%00%004%EF%BF%BD%04%084%EF%BF%BD%04%08%00%01%00%00%00%01%00%00%05%00%00%00%04%00%00%00%03%00%00%004%01%00%004%EF%BF%BD%04%084%EF%BF%BD%04%08%13%00%00%00%13%00%00%00%04%00%00%00%01%00%00%00%01%00%00%00%00%00%00%00%00%EF%BF%BD%04%08%00%EF%BF%BD%04%08%EF%BF%BD-%07%00%EF%BF%BD-%07%00%05%00%00%00%00%10%00%00%01%00%00%00%000%07%00%00%EF%BF%BD%0B%08%00%EF%BF%BD%0B%08%EF%BF%BD%05%00%00D%0A%00%00%06%00%00%00%00%10%00%00%02%00%00%0000%07%000%EF%BF%BD%0B%080%EF%BF%BD%0B%08%EF%BF%BD%01%00%00%EF%BF%BD%01%00%00%06%00%00%00%04%00%00%00%04%00%00%00H%01%00%00H%EF%BF%BD%04%08H%EF%BF%BD%04%08%20%00%00%00%20%00%00%00%04%00%00%00%04%00%00%00P%EF%BF%BDtd0%EF%BF%BD%04%0009%09%0809%09%08%04%26%00%00%04%26%00%00%04%00%00%00%04%00%00%00Q%EF%BF%BDtd%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%06%00%00%00%04%00%00%00%2Flib%2Fld-

with the response

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>414 Request-URI Too Large</title> </head><body> <h1>Request-URI Too Large</h1> <p>The requested URL's length exceeds the capacity limit for this server.<br /> </p> </body></html>

06/26/08 00:51:27 changed by zspitzer

Must of been some weekend gremlins at play, I just tested this again and it's all now working fine with Fusion and the Basic Viewer with FF3

06/26/08 11:49:13 changed by tomfukushima

Thanks Zac for the update. I was in the process of building on Linux (and having problems) but I'll put that on the back burner now. Tom

07/01/08 08:57:36 changed by sledhead45

Has anyone found where to apply these fixes for 1.2.x? I dont mind upgrading to 2.0 to simply use the provided patches, but following these instructions http://trac.osgeo.org/mapguide/wiki/1.2to2.0MigrationInstructions my RestoreRepositories?.sh fails on step 4. Thanks. --travis