Opened 11 years ago

Closed 8 years ago

Last modified 8 years ago

#6156 closed defect (fixed)

[patch][no cla]cometd client and IE url limit to 2083 bytes

Reported by: Krunoslav Pisacic Owned by: Greg Wilkins
Priority: high Milestone: 1.7
Component: DojoX Cometd Version: 1.1b1
Keywords: cometd ie url limit Cc: Greg Wilkins
Blocked By: Blocking:

Description (last modified by Adam Peller)

Due to IE "feature" of not allowing more than 2083 bytes in URL ( http://support.microsoft.com/default.aspx?scid=KB;en-us;q208427 ), more subscriptions in a batch do not get send to the cometd server (confirmed by wireshark). No javascript error is reported.

dojo is: nightly build as of 2008-02-22, cometd server is pyton twisted cometd, IE is 6 and 7 (both have this kind of limit).

function init_comet(s_comet_url, a_groups, a_queues) {
    dojox.cometd.init(s_comet_url);
    console.info("VCCE COMET initialized started");
    dojox.cometd.subscribe("/vcce/bulletin/global", bulletin_notification, "notify");
    for ( var i_g in a_groups ) {
        dojox.cometd.subscribe("/vcce/bulletin/" + i_g, bulletin_notification, "notify");
    }
    dojox.cometd.subscribe("/vcce/topmenu", topmenu_notification, "notify");
    dojox.cometd.subscribe("/vcce/queue/global", queue_notification, "notify");
    for ( var i_q in a_queues ) {
        dojox.cometd.subscribe("/vcce/queue/" + i_q, queue_notification, "notify");
    }
    console.info("VCCE COMET initialized ended");
}

a_groups and a_queues have together ~10 elements.

Workaround would probably be to split subscriptions to more that one transport message. or (ugly) to add flush method.

Attachments (1)

cometd_base.patch (2.4 KB) - added by guest 11 years ago.
cometd base patch

Download all attachments as: .zip

Change History (17)

Changed 11 years ago by guest

Attachment: cometd_base.patch added

cometd base patch

comment:1 Changed 11 years ago by guest

this patch splits under IE split messages into multiple transport messages. only downside is that only last return from dojo.io.script.get is returned back. that shouldn't be a problem since when calling ( _base.js line 551 ) return value is not used.

br

comment:2 Changed 11 years ago by Adam Peller

Owner: changed from Adam Peller to Greg Wilkins
Summary: cometd client and IE url limit to 2083 bytes[patch][no cla]cometd client and IE url limit to 2083 bytes

Please identify yourself so we know if we can accept this patch.

Also, I think we need to avoid the small dependency on dtl. Can we just use encodeURLComponent? (I wonder if dojox.dtl can also?)

comment:3 Changed 11 years ago by Adam Peller

Cc: gregwilkins added

comment:4 in reply to:  3 Changed 11 years ago by guest

Replying to peller:

yes, i guess we could use encodeURIComponent to avoid dependency. i wasn't aware it exists as a build-in javascript function since it was implemented in dtl.

my identity is Krunoslav Pisacic ( kpisacic_N*O*S*P*A*M@…). i attached this patch because it solved problem for me. it was just a suggestion for the assignee to help him resolve problem. i participated in a couple of others opensource projects where this was a prefered way of submiting problems and fixes - sorry if i was wrong.

comment:5 Changed 11 years ago by Adam Peller

Description: modified (diff)
Owner: changed from Greg Wilkins to gregwilkins

comment:6 Changed 11 years ago by dylan

Milestone: 1.2

comment:7 Changed 11 years ago by alex

Component: DojoxDojoX Cometd

comment:8 Changed 11 years ago by dylan

Owner: changed from gregwilkins to Greg Wilkins

comment:9 Changed 11 years ago by bill

Resolution: invalid
Status: newclosed

I'm gonna close this since submitter hasn't identified themselves.

comment:10 Changed 11 years ago by bill

Milestone: 1.21.3
Reporter: changed from guest to Krunoslav Pisacic
Resolution: invalid
Status: closedreopened

Oops, my mistake, submitter identified themselves but has no CLA. Anyway Greg will fix for 1.3.

comment:11 Changed 11 years ago by Greg Wilkins

Cc: Greg Wilkins added; gregwilkins removed

comment:12 Changed 10 years ago by Adam Peller

gregw, any update on this?

comment:13 Changed 10 years ago by dante

Milestone: 1.3future

comment:14 Changed 8 years ago by Chris Mitchell

Resolution: wontfix

closing as wontfix, as cometd client is now maintained at cometd.org. query will be sent to cometd team/Simone Bordet for review by cometd project leads

comment:15 Changed 8 years ago by dylan

Resolution: wontfixfixed
Status: reopenedclosed

Resolved and working in the cometd hosted version of the client.

comment:16 Changed 8 years ago by bill

Milestone: future1.7
Note: See TracTickets for help on using tickets.