On 10/26/06, Don Brown <[EMAIL PROTECTED]> wrote:
Hmm...I don't see any of my replies in those two threads, but maybe there was more. Anyways, I took a look at the DWR stuff, and it looks pretty cool. My only concern is that is requires too much dwr configuration. I wonder if there is a way we could push it into a plugin, that by simply dropping the plugin jar in WEB-INF/lib, you'd be good to go. Whether this would mean overriding DWR's Configuration object to load config from a bundled dwr.xml file or even pushing the whole dwr servlet dispatcher into an action so that the user doesn't even need to modify web.xml, I don't know. The goal would be seamless support from DWR without needing a multi-step configuration process, and without duplicate features such as type converters.
I think this can be done... I will look into this. However, for the moment, I don't have any intentions to move the code (I will at least wait for the DWR 2.0 final before taking a decission). ./alex -- .w( the_mindstorm )p.
Still, this doesn't solve the need for transparent JSON, XML, and partial HTML support. I have an idea for that, which I'll spin off into another thread: Result Selectors. Don Alexandru Popescu wrote: > On 10/26/06, Don Brown <[EMAIL PROTECTED]> wrote: >> Ah, those discussions after JavaOne: >> >> http://www.mail-archive.com/[email protected]/msg22396.html >> http://www.mail-archive.com/[email protected]/msg22381.html >> >> To be honest, I didn't really follow them at the time. > > Still, I remember you participating to the discussion :)) > >> What code came out of it, other than the webwork dwr package? If >> that code is for >> webwork, then I'd imagine it wouldn't work with Struts 2. >> > > As it is right now... no I don't think it will; but the changes should > be absolutely minimal. > > ./alex > -- > .w( the_mindstorm )p. > >> Don >> >> On 10/25/06, Alexandru Popescu <[EMAIL PROTECTED]> >> wrote: >> > On 10/26/06, Don Brown <[EMAIL PROTECTED]> wrote: >> > > Hmm...probably because I didn't know about it :) >> > >> > .... perhaps :-) >> > > Should we move the code back into Struts 2? >> > >> > At some point I guess it may make sense to do this. For the moment >> > (and until it stabilizes and the struts2 stabilizes), I think it is >> > better for it out there. >> > >> > > What exactly does it do? >> > >> > Simply put it allows you to call from DWR a normal action, passing >> > through its normal execution chain. The result can be the rendered >> > result (as in normal action invocations) or a serialized action object >> > (as in <ww:action executeResult="false" />). >> > >> > ./alex >> > -- >> > .w( the_mindstorm )p. >> > >> > > Don >> > > >> > > Alexandru Popescu wrote: >> > > > Wille, I have contributed a long time ago some (similar?) code >> to DWR. >> > > > You can find it in the DWR trunk (a webwork package) . This >> > > > integration code is based on some work I initially done for >> InfoQ.com. >> > > > >> > > > Sure, if you find places where your ideas look better then my >> approach >> > > > I would be happy to hear from you and improve it. I am a bit >> puzzled >> > > > that Don haven't pointed you to this existing code, as the >> discussions >> > > > about where this code should live have been public by that time. >> > > > >> > > > ./alex >> > > > -- >> > > > .w( the_mindstorm )p. >> > > > >> > > > >> > > > On 10/26/06, Wille Faler <[EMAIL PROTECTED]> wrote: >> > > >> Hi. >> > > >> I raised the question today on Don Browns blog about being >> able to have >> > > >> integration between Struts2 and DWR, to get a full MVC model >> if you only >> > > >> want to re-render a snippet of a web-page. >> > > >> I am not sure if this has been discussed previously, but Don >> encouraged >> > > >> me to send my ideas if I had any, so here goes: >> > > >> When I have done AJAX-based stuff, 9 times out of 10, all I >> really want >> > > >> to do i execute some business logic, and re-render a portion >> of a page. >> > > >> This would seem to fit well with a traditional MVC-approach, >> with the >> > > >> exception that I don't want to re-render the full page. >> > > >> >> > > >> Earlier this year, I implemented such a simple framework, >> basically >> > > >> using Webwork2/XWork and DWR, adding some code to glue it all >> together. >> > > >> It consists of the following things: >> > > >> - Some generic JavaScript that can interpret parameters >> (either from a >> > > >> form or URL) into a Map of parameters, akin to what Webwork uses. >> > > >> - A Controller that is called by DWR, taking the Map, a >> callback-target >> > > >> (in the web-page) and the name of an action as its arguments. >> This >> > > >> Controller then invokes an xwork ActionProxy to invoke the >> Action. >> > > >> - Custom Result-implementations for getting JSP-elements >> defined in the >> > > >> xwork results. These results use the DWR >> > > >> WebContextFactory.get().forwardToString() functionality, to >> get the >> > > >> resulting JSP-snippet as a String. >> > > >> - Said Result can then be sent back by the Controller through >> DWR, which >> > > >> is then handled by generic JavaScript and rendered to the >> predefined >> > > >> callback-target on the page. >> > > >> - When using forms, it can also do AJAX-based validation which >> makes use >> > > >> of proper Xwork-validation. >> > > >> >> > > >> As I said, I have already written code for this, it is quite >> compact and >> > > >> only a few hundred lines (11 implementation classes + generic >> JavaScript >> > > >> + dwr config), so obviously this integration is quite easy to >> create. I >> > > >> would love to see something similar within the upcoming Struts2! >> > > >> I haven't attached the code to this mail, but it is available for >> > > >> download here: www.infonatural.com/ajax-mvc.zip (including >> > > >> jar-dependencies and some unit-tests, 3.6mb). >> > > >> >> > > >> If anyone wants to pick the code for ideas, or adapt it, feel >> free to do >> > > >> so as long as you retain the original @author comments as part >> of it (I >> > > >> am the sole copyright holder of the code, and you may use it >> under the >> > > >> ASF if you want). >> > > >> It would probably need some minor improvements to make it more >> in line >> > > >> with the rest of the Struts2-code (so tags work etc), as I >> only did the >> > > >> code originally for my needs and didn't bother doing more than >> I needed >> > > >> at the time. >> > > >> >> > > >> I apologise if this or something similar is already part of >> Struts2, but >> > > >> I got the impression that it may not be. >> > > >> >> > > >> regards >> > > >> Wille Faler >> > > >> >> > > >> >> > > >> >> --------------------------------------------------------------------- >> > > >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> > > >> For additional commands, e-mail: [EMAIL PROTECTED] >> > > >> >> > > >> >> > > > >> > > > >> --------------------------------------------------------------------- >> > > > To unsubscribe, e-mail: [EMAIL PROTECTED] >> > > > For additional commands, e-mail: [EMAIL PROTECTED] >> > > > >> > > > >> > > >> > > >> > > >> --------------------------------------------------------------------- >> > > To unsubscribe, e-mail: [EMAIL PROTECTED] >> > > For additional commands, e-mail: [EMAIL PROTECTED] >> > > >> > > >> > >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: [EMAIL PROTECTED] >> > For additional commands, e-mail: [EMAIL PROTECTED] >> > >> > >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
