Did you convert all the struts-*.war files to use your new framework? 
Initially looking at these war files, it doesn't appear so.  Reference
implementation of a framework are always nice to look at ;)

Also, would you use your framework to construct an application like the
struts-example - where there are html-based forms, validation, and messages
from the ApplicationResources.properties file?  

Thanks,

Matt


--- Jeff Pennal <[EMAIL PROTECTED]> wrote:
> Hi Matt,
> 
> I did not rename the war files, though I probably should have. The file 
> struts.jar contains all of my changes. I'll make a note to rename it for 
>   the next release.
> 
> As for the source, it'll be handy to download if you need to do any 
> debugging.
> 
> Let me know how it works for you and feel free to email me if you have 
> any questions.
> 
> Jeff
> 
> Matt Raible wrote:
> > Jeff - thanks for posting this - I've been eagerly waiting for this. 
> However,
> > when I try to download the binary versions, it appears that all the wars
> are
> > original struts-*.war files.  I don't see any new files, such as
> > struts-stxx.war??
> > 
> > Should I download the source distribution?
> > 
> > Thanks,
> > 
> > Matt
> > 
> > 
> > --- Jeff Pennal <[EMAIL PROTECTED]> wrote:
> > 
> >>Hi Matt,
> >>
> >>I had a similar problem in that I wanted a framework that would allow me 
> >>to write Struts Actions that pump out XML and convert them to XSL.
> >>
> >>I looked for a while to find something that did what I wanted. Cocoon2 
> >>was close but not quite what I was looking for.
> >>
> >>In the end I rewrote Struts to support xml and xsl transformations, 
> >>called struts-stxx. You can download it here,
> >>http://www.openroad.ca/opencode/index.html
> >>
> >>Let me know if you find it useful.
> >>
> >>This is how it works:
> >>    - In the struts-config.xml file, you add an new tag, nested
> >>           under the <forward> tag called <transform> will contain
> >>           the xsl file to transform the Action classes XML against.
> >>           (You can specify zero-many <transform> tags). The <transform>
> >>           tags can be specific to a particular user-agent if you'd like,
> >>           or a "default" one.
> >>
> >>    - In your Action class you would run your business logic
> >>           as usual. Then once that is complete, you would create
> >>           an XML document of the output (using JDOM) and assign
> >>           it to the Actions new class variable "Document"
> >>
> >>    - The ActionServlet will take the Actions XML, check the
> >>      browsers user-agent and determine what XSL file to
> >>           transform against. The resulting HTML is sent back to
> >>           the broswer.
> >>
> >>Currently, struts-stxx does not support sending the xml back to the 
> >>browser to do client side xsl transformation. That's one of my planned 
> >>features that I have not got around to implementing yet.
> >>
> >>
> >>List of changes to the struts code:
> >>---------------------------------------------
> >>struts-config.xml gets:
> >>     <!--
> >>     the transform tag defines the browser user agent to match
> >>         against to run a particular xsl file
> >>     -->
> >>     <action    path="/menu"
> >>                type="com.oroad.mail.actions.MenuAction"
> >>                scope="request">
> >>       <forward name="success">
> >>         <transform name="default" path="/menu_default.xsl"/>
> >>         <transform name="Mozilla" path="/menu_netscape.xsl"/>
> >>         <transform name="MSIE" path="/menu_ie.xsl"/>
> >>       </forward>
> >>     </action>
> >>---------------------------------------------
> >>org.apache.struts.action.Action gets:
> >>A document (JDOM) class variable to store the XML created in an action 
> >>class.
> >>---------------------------------------------
> >>org.apache.struts.action.ActionTransform and 
> >>org.apache.struts.action.ActionTransforms
> >>(basically modified org.apache.struts.action.ActionForward(s) classes)
> >>---------------------------------------------
> >>org.apache.struts.action.ActionServlet gets:
> >>processActionTransform which basically handles getting the correct xsl 
> >>file for the user agent being passed in, does the transform on the 
> >>action.document variable and dumps the resulting html(or whatever) to 
> >>the client.
> >>
> >>Hope this helps,
> >>Jeff
> >>
> >>
> >>Matt Raible wrote:
> >>
> >>>Thanks to everyone who has contributed to this thread.  I've been
> >>>
> >>advocating
> >>
> >>>client-side XSL to myself for a few months now, but discovered a fairly
> >>>
> >>major
> >>
> >>>roadblock this morning - client XSLT does not work on the latest version
> of
> >>>
> >>IE
> >>
> >>>on the Mac (5.1).  I've tested this and found supporting information at
> >>>http://www.hut.fi/u/hsivonen/os-x-browsers.html.  Therefore, I will be
> >>>
> >>doing
> >>
> >>>server-side styling as many of you suggest.
> >>>
> >>>My initial go around will involve trying to use the "Standard" Tag library
> >>>
> >>to
> >>
> >>>wrap my XML that I emit from JSPs.  I figure it's better to use my JSPs w/
> >>>
> >>XML
> >>
> >>>for the view so I can get labels from ApplicationResources, and use
> >>>
> >>html:form
> >>
> >>>to do the retrieval of values from my beans.  
> >>>
> >>>One concern I have with this type of transformation is that it's easy to
> >>>
> >>pick
> >>
> >>>the stylesheet with clien-side styling.  For instance, with client-side
> >>>styling, you can do:
> >>>
> >>><?xml-stylesheet href="default.xsl" type="text/xsl"?>
> >>><?xml-stylesheet href="wap.xsl" type="text/xsl" media="wap"?>
> >>>
> >>>And I don't think this is possible with the current JSTL.  Maybe so, I'll
> >>>
> >>have
> >>
> >>>to check.
> >>>
> >>>Any further comments are appreciated.
> >>>
> >>>Thanks,
> >>>
> >>>Matt
> >>>
> >>>
> >>>
> >>-- 
> >>Jeff Pennal                         p:604-694-0554(x107)
> >>Software Developer                  f:604-694-0558
> >>Openroad Communications             e:[EMAIL PROTECTED]
> >>Vancouver, BC
> >>
> >>
> >>--
> >>To unsubscribe, e-mail:  
> <mailto:[EMAIL PROTECTED]>
> >>For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> >>
> > 
> > 
> > __________________________________________________
> > Do You Yahoo!?
> > Great stuff seeking new owners in Yahoo! Auctions! 
> > http://auctions.yahoo.com
> > 
> > --
> > To unsubscribe, e-mail:  
> <mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> > 
> 
> 
> -- 
> Jeff Pennal                         p:604-694-0554(x107)
> Software Developer                  f:604-694-0558
> Openroad Communications             e:[EMAIL PROTECTED]
> Vancouver, BC
> 
> 
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
> 


__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions! 
http://auctions.yahoo.com

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

Reply via email to