Don Brown wrote:
Sure, what's the question(s)?
Well, I was going to ask what the status of the WebWork/Struts merger
was, but I did my online research, first. In fact, I went ahead and
created a Wiki page for an SAF 2.0 implementation of the Blog UI and
put the links to the relevant Web Pages in the "Background Info and
Links" section:
http://rollerweblogger.org/wiki/Wiki.jsp?page=Proposal_VelocityToSAF2
I'm proposing that the Blog UI module of Roller be rewritten/refactored
to use a very lightweight implementation of SpringMVC to replace the
current use of VelocityServlet. The main benefits would be:
1) URL mapping will not longer be limited by web.xml (it can use the
SpringMVC HandlerMapping interface or, hopefully, the
SimpleUrlHandlerMapping implementation)
2) View independence through the SpringMVC View interface.
I spent a few hours refactoring in Eclipse and it was pretty easy to
split the PageServlet into a PageController and a RollerVelocityView.
Since SpringMVC Controllers and View use HttpServletRequest and
HttpServletResponse, the refactoring is fairly simple.
I've posted a diff to the Wiki on this page:
http://rollerweblogger.org/wiki/Wiki.jsp?page=Proposal_VelocityToSpringMVC
(although the diffs between PageServlet.java and PageController.java
don't show because I renamed the file)
I've spent a little time looking at WebWork 2.x and it seems to me that
it requires a greater degree of abstraction from Servlets and
HttpServletRequest/Response. That is why, at this point, I believe
SpringMVC would be a more natural choice for the BlogUI.
So the question is: Is there a similar "lightweight" architecture we
could use based upon WebWork/SAF2.0?
I've created a Wiki page for a SAF 2.0 implementation, so it would be
great if you or anyone else (Matt?) would be willing to fill in some
details there.
If this is about Roller moving to WebWork/SAF 2.0, I actually put in a
JavaOne proposal to talk about my experiences migrating Roller to use
SAF 2.0, but it wasn't accepted :)
Do you have any URLs, powerpoints, etc. that you put together? How far
did you get? Is it something you might submit to the Roller project?
Thanks,
Sean