Sorry about that, I obviously screwed up in QC... the latest build of AjaxChat IS NOT A PROPER WEBAPP. My build script is obviously not working right as far as the distro task goes, and I didn't notice. Please use the v1.0 alpha, NOT alpha2, which is, AFAIK, correct. It does have some bugs, but they shouldn't bother you if you are just checking the AJAX stuff out.

I will correct the latest version tomorrow and cut a new release... it is ready to be called 1.0 GA at this point anyway, so it's just as well. Alternatively, you could check out from CVS HEAD right now, which should work fine, but you'll have to compile first.

Frank

Sonali Kulkarni wrote:
Hi Frank,
I downloaded ajaxchat.zip from link http://sourceforge.net/project/showfiles.php?group_id=49385&package_id=171010&release_id=375018 <http://sourceforge.net/project/showfiles.php?group_id=49385&package_id=171010&release_id=375018> But I could not find abt jsp files in the zip, Hence cannot run the application.
I am planning to run it in Tomcat. Where can I get the complete source code
for the application, that I can run, and study.
Thanks,
Sonali

On 12/3/05, *Frank W. Zammetti* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Some of the questions you ask here are really more for you to decide...
    there aren't any canned answers.  That being said, I'll do my best...

    To begin with, I highly suggest checking out the numerous articles on
    AJAX out there to get a firm grasp on what it really is, and if I may be
    so bold, start with my own:

    http://www.omnytex.com/articles

    This will show one way AJAX can be integrated with Struts.  You can also
    check out my AjaxChat example app on the Struts Apps SourceForge site:

    http://struts.sourceforge.net

    The short answer is that AJAX, generically, is nothing but an HTTP
    request.  As far as whatever is on the server is concerned, be it a
    Struts apps or something else, it doesn't look any different than any
    other request.  Well, I suppose more accurately, it doesn't *have* to
    look any different.  If you simply pass simple parameters from the
    client and forego XML, then to Struts there's no difference.

    If you want to use XML and Struts, then you will at this point have to
    do your own parsing.  With Struts 1.3, it would be trivial to add a
    Command to the processing chain to parse an incoming XML message and
    translate it to request parameters... come to think of it, that exists
    already:

    http://sourceforge.net/projects/strutsws

    Although that's for Web Services, the underlying theory is identical.
    There is a 1.3 version, courtesy of Marco Mistroni, but you can see my
    original version with the customized RP.  The same thing would work
    nicely for AJAX, although one can envision other ways of doing it too.

    You could just as well have this function in your servlet... it's
    just a
    matter of getting the body content of the HTTP request, which would be
    XML, parsing it and doing what you'd always do.  If this interests you,
    have a look at the code in CVS HEAD here:

    http://javawebparts.sourceforge.net

    I'll probably cut a release this weekend, but the code in CVS for the
    AjaxTags component in the sample app does exactly that... an AJAX
    request is made with XML in the HTTP body, and a servlet in this case
    gets it (via the handy RequestHelpers.getBodyContent() method) and then
    uses Digester to parse it.

    Everything I've talked about here is "naked" AJAX, i.e., without the
    help of any particular library.  AJAX is really quite simple, aside
    from
    a few gotchas, but there are some very robust libraries that will help
    with more than the basics in most cases.  They all seem to have a
    slightly different focus from one another, so if you'd prefer to go that
    route, some (of the many!) to look at are:

    
http://javawebparts.sourceforge.net/javadocs/javawebparts/taglib/ajaxtags/package-summary.html
    
<http://javawebparts.sourceforge.net/javadocs/javawebparts/taglib/ajaxtags/package-summary.html>

    This is the AjaxTags component of Java Web Parts... this is a little
    different than the rest in that it makes enabling specific events very
    easy.  All it requires is adding custom tags to your page, and
    configuring various AJAX events via XML config file.  For instance, if
    you want to fire an AJAX event when a <div> is clicked, and then you
    want a function that will populate another <div> from what the server
    returns, this is a trivial exercise with AjaxTags, and it's all driven
    by config file so there is no coding involved, aside from adding a tag
    or two to your page.  This is my own creation, so obviously I'll
    push it
    a little more than the rest, but I truly do believe it offers something
    than most other options do not and you probably should at least check it
    out and see if it meets your needs.

    http://dojotoolkit.com/
    This is the one people are starting to really get behind, and from what
    I can see there is good reason for it.  This is one of the ones that
    will give you more than just AJAX, and that might be very appealing
    to you.

    DWR of course you already know about.

    http://prototype.conio.net/
    Prototype is actually more of a foundation as there are other libraries
    that use it.  So certainly check out some of those libraries, but
    Prototype on its own might be something you want to use.

    There is no canonical answer at present for integrating with Struts, but
    the point is there probably doesn't ever have to be one... it's just an
    HTTP request.  Oh, there could be something added to Struts to handle
    automatic parsing of XML and stuffing it into an ActionForm, that might
    not be a bad idea, but since you have access to the request object
    anyway in an Action, you can do everything that Struts would ever do
    for
    you so it would probably be unnecessary to add it to Struts.

    To the question of whether AJAX is appropriate or not... first, from a
    security standpoint, AJAX is no different from every form you submit,
    every window.location call you make, every image you GET, etc.  The same
    security concerns that arise in those instances are present with AJAX.
    AJAX has a limitation in that it can't make requests to domains other
    than the one that served the page it's on, so in a sense it's MORE
    secure.  But the bottom line is you secure AJAX the same way you secure
    your webapps generally.

    If your wondering if it's worth it, that of course is for you to answer.
    There are some cases where it absolutely makes things better, but it
    comes with some baggage... unless you spend a lot of time worrying about
    graceful degredation, your app will now *require* scripting.  This might
    not be a problem for you, but it might be.  AJAX is also a problem for
    accessability.  In some cases this is a major problem, but even when
    it's not it's something we should all think about.  It also raises the
    level of expertise your app requires to maintain.

    I'm personally a fan of AJAX.  I've been doing AJAX for over 5 years
    (keep in mind that AJAX is really more a philosophy and an approach than
    it is any specific technology... I haven't used XMLHttpRequest for very
    long, but I accomplished the same types of things in an app 5 years
    ago).  I believe the age of the "classic" web, where scripting is
    optional and apps redraw entire screens, is dead.  AJAX itself is
    nothing knew, but the mindset that accompanies it largely is, so if
    your
    asking *me* if its a good idea in the first place, I'd say absolutely
    yes, assuming two things... first, that the way you want to apply it
    makes sense; anything can be used in a pointless way of course!, and
    second, that you understand and can accept all the caveats that go along
    with it.

    Hope that helps!

    Frank

    Sonali Kulkarni wrote:
     > So, does it mean that is it not a good idea to use DWR with
    Struts just as
     > yet?
     >
     > If so, what would be the best way to integrate AJAX into our Struts
     > application?
     >
     > Ours is a full-blown *financial* banking Struts application.
    Please also let
     > me know if it is a good idea to use AJAX in the first place,
    considering (1)
     > the security risks imposed, especially for a financial
    application (2) ease
     > of integrating AJAX with Struts. (some of the questions i have,
    for starters
     > are... how do i pass the request object from the javascript to my
    action
     > class method, ... how do i handle errors returned etc)
     >
     > Thanks for your time! Any replies would be appreciated!
     >
     >
     > On 12/3/05, Frank W. Zammetti < [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>> wrote:
     >
     >>From the DWR web site:
     >>
     >>http://getahead.ltd.uk/dwr/server/struts
     >>
     >>Just reading through it quickly, that's just about what I would have
     >>suggested too in terms of separating out core logic from Actions and
     >>letting your Actions and DWR servlet call them as needed.  There
    might
     >>be some better approaches, but it sounds like the DWR team is
    looking
     >>for those approaches themselves.
     >>
     >>Frank
     >>
     >>Sonali Kulkarni wrote:
     >>
     >>>Please suggest if there are any good links, or some working examples
     >>
     >>that
     >>
     >>>explain how Struts could be integrated into the DWR (AJAX)
    framework.
     >>
     >>Any
     >>
     >>>help would be appreciated. There is hardly any online support or
     >>>documentation.
     >>>
     >>>Thanks!
     >>>
     >>
     >>--
     >>Frank W. Zammetti
     >>Founder and Chief Software Architect
     >>Omnytex Technologies
     >>http://www.omnytex.com
     >>AIM: fzammetti
     >>Yahoo: fzammetti
     >>MSN: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
     >>
     >>---------------------------------------------------------------------

     >>To unsubscribe, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
     >>For additional commands, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
     >>
     >>
     >
     >

    --
    Frank W. Zammetti
    Founder and Chief Software Architect
    Omnytex Technologies
    http://www.omnytex.com
    AIM: fzammetti
    Yahoo: fzammetti
    MSN: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>

    ---------------------------------------------------------------------
    To unsubscribe, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    For additional commands, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>



--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM: fzammetti
Yahoo: fzammetti
MSN: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to