See yourself: http://wiki.apache.org/struts/StrutsSolutions?action=diff&rev2=14&rev1=12
I guess I should just put redirects on pages, not delete them. Deletion seems to be unrecoverable operation. On 7/17/06, Frank W. Zammetti <[EMAIL PROTECTED]> wrote:
Yep, looks good... I still thought there was more to the web service page, but maybe not. The memory is the first thing to go they say :) Frank Michael Jouravlev wrote: > Is it better now? I guess I should stop fiddling with wiki for today ;-) > > On 7/17/06, Frank W. Zammetti <[EMAIL PROTECTED]> wrote: >> Michael, it looks like this update got botched a bit... or maybe your >> still working on it, in which case ignore this... it looks like some of >> the content from the web service info is missing (my memory may be off >> though, but I did think there was more to it), but from bullet #5 down >> is talking about opening a new window from an Action, not web services, >> so that part at least would appear to be misplaced for sure. >> >> Frank >> >> Apache Wiki wrote: >> > Dear Wiki user, >> > >> > You have subscribed to a wiki page or wiki category on "Struts Wiki" >> for change notification. >> > >> > The following page has been changed by MichaelJouravlev: >> > http://wiki.apache.org/struts/StrutsWebService >> > >> > New page: >> > By Frank Zammetti, extracted from StrutsSolutions page. >> > >> > Please see [url]http://sourceforge.net/projects/strutsws/ for >> complete details, but in brief... >> > >> > I decided that, in my case at least, the easiest path "into the >> application" that could be exposed as a service would actually be the >> Actions themselves. You may ask, assuming the application was >> architected properly and the Actions delegated out work to business >> classes (that IS the case), why not just expose the business classes? >> The answer is that I wanted to leverage all the form validation and >> security built in to the app (it was a custom security solution). >> Because of this, I needed Struts to "do it's thing" leading up to the >> business class execution. >> > >> > My solution was to write a custom request processor that could >> recognize a Web Service request (SOAP over HTTP). It would be able to >> "unroll" the SOAP request, then let Struts process the request as it >> usually would, and then render the response. My solution does this. >> > >> > I don't claim this is THE way to do Web Services. Far from it. >> What I WILL claim though is that if you have an existing application >> and you want to expose parts of it as Web Services, this solution can >> give you a very easy way to do it, with some limitations of course... >> First, it is Struts 1.1-only at the moment. Second, the incoming >> request must be "flat", that is, no nested elements are allowed (aside >> from children of the root element). Third, only strings are >> supported, so you lose the notion of true data typing that SOAP gives >> you. >> > >> > All these details, and plenty more, as well as full source, are >> available at the linked address above. I welcome any suggestions >> anyone has. Although I haven't done much on this in a while (because >> it met my needs as-is), I would love to continue this work if enough >> people find it useful. >> > >> > 5. Simply put, there is no way to do this. Opening a new window is >> a strictly client-side activity. You have to "fake it". There's two >> ways to do it... >> > >> > First, you could simply target your HTML form using the >> target="_blank" attribute. This will result in whatever response the >> server sends back appearing in a new window. The down-side to this is >> you have to know before-hand to do this. If you want a variable >> solution, you have to get into scripting... You can set the target >> attribute's value via client-side scripting as appropiate before >> submitting the form. >> > >> > Second, you could have a check in all JSP's that looks for some flag >> in the request object. When present, the JSP inserts an onLoad >> Javascript event handler that opens the new window and redirects to >> the URL where the content can be found. >> > >> > Another possibility if you are using frames is to target all form >> submissions to a hidden frame. Include in all pages some Javascript >> that performs some checks and handles things accordingly... I use this >> in one system I wrote... The checks I'm speaking of are based on some >> flag value in the request object (just insert the value into a >> page-level Javascript variable)... The flag may direct the page to >> copy itself to the main display frame, or to a new window. The former >> is a very nice way to have a "Please Wait" screen while the server is >> processing. The later is the same basic idea, but in a new window. >> This also allows you to do some nice error handling things, such as >> simply hiding the Please Wait layer in the main frame to expose the >> page as it existed before the form was submitted. Nice way to debuild >> a page without incurring any server time. But now I'm getting off on >> a tangent :) >> > >> > The bottom-line here is this: There is no way to direct the browser >> to open the response in a new window from an Action. You either have >> to indicate you want this behavior when the form is submitted, or make >> it happen with scripting once the response is back at the browser. At >> least, this is true within the confines of plain old HTML... You could >> always pull an applet out and do something like this! >> > >> > >> > >> >> -- >> Frank W. Zammetti >> Founder and Chief Software Architect >> Omnytex Technologies >> http://www.omnytex.com >> AIM: fzammetti >> Yahoo: fzammetti >> MSN: [EMAIL PROTECTED] >> Java Web Parts - >> http://javawebparts.sourceforge.net >> Supplying the wheel, so you don't have to reinvent it! >> >> --------------------------------------------------------------------- >> 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] > > > > -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com AIM: fzammetti Yahoo: fzammetti MSN: [EMAIL PROTECTED] Java Web Parts - http://javawebparts.sourceforge.net Supplying the wheel, so you don't have to reinvent it! --------------------------------------------------------------------- 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]