Hi John,
thanks for the encouragement :-)
No, not yet... but I don't test against 3rd party AV. I have done some
long running tests which include disconnecting both the client and
server and then restoring the connections and that works depending on
the type of Comet connection. I've done lots and lots of iPhone Comet
testing against our Dynamic Mashup Server with fabulous results.
So 64-bit Vista has taken a back seat to the iPhone. We support Vista
Sidebar Gadget development in our Web 2.0 developer tools so it's just
a matter of time for me to try out that configuration.
The Dynamic Mashup Server embeds Grizzly with Grizzlets so I have a
bit better control over the environment than just using the GlassFish
install or Grizzly with Jetty, etc. I did experience the "Comet data
into the bit bucket" issue when I was using various threads to start
embedded Grizzly. Since I think you are using Servlets, are you sure
that you are abiding with the threading rules for Servlet containers?
That's what I thought might be your problem but I wanted to ask
Jeanfrancois first... but since you asked...
If I remember the Servlet spec, you can spawn threads at your leisure
but can only post to the Response output stream from its thread and
not yours. Perhaps your thread is getting GCed?
The other possible issue which also may be categorized as the "Comet
data into the bit bucket" issue is that the browser might be
internally stopping the connection without warning. I think that this
happens when you send more than 8 MB of data over the life of the
Comet connection-- depending on the type of Comet connection.
This is empirical and not based on vendor information. In fact the
only HTTP size limits that I've seen come from Apple regarding the
iPhone and IIRC that's 10 MB per HTTP connection... but does a Comet
connection which progressively sends its data without disconnect/
reconnect and runs the JavaScript engine, etc. different from a 10 MG
image download? I haven't tested this to see. Opera engineers have
discussed connection timeouts wrt Opera Widgets... but I don't know
about IE and FireFox definitely. Don't forget that Vista allows the
connection to be made and then prompts you for permission after the
first HTTP send/receive transaction. That's what I've noticed.
So which browser are you using on Vista? and what's the Comet type?
JavaScript code?
For the Dynamic Mashup Server, I've implemented the following Comet
types:
1. XHR multipart (for FireFox)
2. Forever frame
3. XHR streaming (for FireFox and uses XHR readyState 3 instead of the
typical XHR readyState 4)
4. Forever script
So with that said I would try to get everything working on Vista with
FireFox and FireBug first and then try IE with their developer tools
also installed.
I'm hopping to have a demo Comet site for the Dynamic Mashup Server
ready next week so that might be an alternative also to determine the
actual source of the problem: client, server, or... South Park
underwear gnomes :-)))
so perhaps server thread, client timeout, HTTP size, or AV might be
the issue.
best of luck.
--Zaid
ALT Mobile
http://altmobile.com/Home.html (web site)
http://web.mac.com/altmobile/ (official blog)
On Feb 7, 2008, at 6:40 AM, John C. Turnbull wrote:
> Well done, that sounds like a great project.
>
> But I am curious... have you experienced any problems with the
> Mashup Server and anti-virus or firewall software? I have found
> that Comet data seems to be blocked by some such programs.
> Specifically, Kaspersky Internet Security 7.0 running on Vista x64
> suspects that Comet traffic is not legitimate HTTP data and blocks
> it in its default configuration. Some tweaking can get around this
> but it concerns me that Comet-enabled web sites may not load when
> this software is installed and this would greatly discourage users
> who are unlikely to be patient enough to fiddle with the settings to
> get things to work.
>
> I have tested my use of Comet on Windows Server 2003 and XP as well
> with other AV and firewall software and no such problems emerged.
> So far, the problem only happens with Vista and Kaspersky but
> there’s no reason to think that other systems that offer advanced
> protection would necessarily be immune from it as well.
>
> So I would be very interested to hear you feedback on this.
>
> Thanks,
>
> John
>
> From: ALT Mobile DEV [mailto:dev_at_altmobile.com]
> Sent: Tuesday, 5 February 2008 23:10
> To: users_at_grizzly.dev.java.net
> Cc: Jeanfrancois Arcand
> Subject: [ANN] Announcing the Dynamic Mashup Server
> Importance: High
>
> To commemorate Grizzly's open source birthday, I just announced the
> <alt> Dynamic Mashup Server on the company blog. Truth be told, we
> launched the blog just for Grizzly :-)
>
> The blog can be found at: http://web.mac.com/altmobile/
>
>
> --Zaid
>
> ALT Mobile
>
> http://altmobile.com/Home.html
>
> ---
>
>
> Dynamic Mashup Server Debuts
> Tuesday, February 5, 2008
>
> We are pleased to announce the <alt> Dynamic Mashup Server. Built to
> support internet scale amalgamation of web content, the Dynamic
> Mashup Server is the industry’s first Comet enabled mash-up server.
>
> Implementing all of the major AJAX and Comet technologies such as
> XHR multipart, forever frame, XHR streaming, and forever script;
> the Dynamic Mashup Server supports HTTP Streaming to desktop
> browsers as well as Safari on iPhone. Single-site browsers (SSB)
> such as Mozilla's Prism and widget platforms such as Opera Widgets,
> Microsoft Vista Sidebar Gadgets, and Mac OS X Dashboard are also
> supported clients.
>
> Comet services are provided through a custom version of Sun's
> Grizzly web server technology.
>
>
> Other cool features of the Dynamic Mashup Server include RSS mash-up
> feed generation and text-to-speech output to support visually
> impaired user access.
>
> Implemented to run on 64-bit Java Virtual Machines, the Dynamic
> Mashup Server integrates into our virtual Web 2.0 containers which
> provide isolated access and execution of remote web content ensuring
> that mash-up clients are protected from potentially harmful HTML and
> JavaScript. Mash-up isolation is also necessary to avoid XSS attacks.
>
> The perfect companion to our Web 2.0 developer tools, the Dynamic
> Mashup Server supports mash-up RDF meta models which provide a
> realistic implementation of the semantic web.
>
> The <alt> Dynamic Mashup Server will be available in Q2 of this year.
>
>
> ###