Hi Craig,

warning, this is long!

I toyed arround last weekend with the Struts tools, but I'm still
unsatisfied. The basic idea as well as the basic approach is very
cool anyway. I'd like to stay closer to the JSP/Servlet framework as
Webmacro and freemarker, but have a better separation of functionality,
layout and data.

Some points:

* The TextareaTag is broken: Accessing rows and cols attributes, certain
  Attributes (like wrapping) of HTML are not available for the struts-tag.

* Generally it looks like many HTML attributes are missing from the taglib.

* Maybe it would be nice to have more control whether the text is editable
  or read/only or not even viewed with custom tags. I.E. with your user
  registration, I'd like to use the same bean and the same jsp to register
  and edit my registration data, but in the latter case I shouldn't be able
  to change my unique user id any more AND I DONT WANT TO DO JAVA CODING IN
  IN MY JSP :-)

* Having the System text properties in many languages would be nice anyway.

* Isn't there some means to implement an "else" Tag to your if tags (I know
  there are intrinsic problems with the Taglib-Syntax). Would be so nice.
  Having "if a endif if not a endif" is a source of easy mistakes.

* The locale/message support is very nice, but instead of hanging my
application
  with a NullPointerException, I'd like another behaviour if an undefined
  text is requested: Write s.th. in the log file, and show the Message id
  to the presenting tag/servlet. E.g. if a MessageTag requests
franks.cool.text,
  which is missing. Write a warning in a log file and return
de_DE:franks.cool.text
  to the application. This behaviour should be (maybe switchable) at low
level
  in the application.

* Switching locales seems to be broken. I implemented an Action to set the
  session locale to a certain value, but still get german text unless it
  is missing and i get the english ones you provided.

* Consider to have some classes (e.g. the Message obtaining/caching) as
  singletons in JVM Space instead of Application space. I'd rather like
  to have a MessageBundle.getInstance() anywhere in my java, than to access
  the objects via requests, session and application objects. Hmm at a second
  thought I am not convinced completely if this is a good idea, but its
  an idea anyway.

* Consider having a tag for a jsp to check weather it is accessed directly
or
  via the controler servlet, forwarding the request to some neutral page in
the
  prior case. Even nice would be if sun would allow some fixed
initialization
  code for a JSP, when a taglib is requested by it, but I don't know where
to
  send that idea. Second thinging shows: A taglib would then need to have
  an initialization at JVM, Server, Application, Session, Request and Page
scope
  :-)

* Customization of process method is a lot of work to do, like starting from

  scratch. Couldn't be that more modularized so that I can restrict myself
to
  the essential coding (I started programming s.th. like having a process
  function which essentially returns the JSP URI, not caring about
initialization
  and forwarding, when I realized it pulled me away from the application I
  need to program and might be different with the next struts-edition...)
  Together with the idea of self validating FormBeans (having a own validate
  method it should be possible to obtain very short process methods for many
  standard cases.

* Consider a different inner error format, not using a vector but a
hashtable
  and give the JSP another custom tag, to show the error at the position
  created (by having a entryField->Error mapping in the Hashtable)...

* What I really liked would be to have the whole application abstract
automaton
  layed out in the action.xml, e.g. there should be a mechanism to reference
a
  link just by name (from a Hashtable instead of the getSuccess(),
getFailure()
  thingie) and a custom tag for the JSP which is s.th. like a inner link and
  does not even contain a HREF but rather a NAME of a link from the recent
  action.xml. Currently certain links are both in the action.xml and in the
  JSP source code.
  I fear, to imlement this one had to change quite a lot from the struts
  framework, keeping rather the spirit than the mechanics.

* Give me an easy slot to plug in a XSLT Transform engine (not necessarily
cocoon,
  but at least some XSL postprocessing, like piping output once through an
  choosen XSL)

Well, maybe it is a different project, but then it had to copy a lot of code
from struts :-)

I'd like to test/use that system but I doubt my personal schedule leaves me
much time to do so. Any specific idea, how I could join the development at a

slow rate?

When are the next updates coming :-)

Cheers,
Frank.

> -----Urspr�ngliche Nachricht-----
> Von: Craig R. McClanahan [mailto:[EMAIL PROTECTED]]
> Gesendet am: Donnerstag, 1. Juni 2000 03:25
> An: [EMAIL PROTECTED]
> Betreff: ANNOUNCEMENT: New JAKARTA-STRUTS Subproject
>
> The Jakarta Project Management Committee is pleased to announce the
> formation of a new subproject called JAKARTA-STRUTS.  Struts
> is a small
> framework for building web applications that uses the
> Model-View-Controller (MVC) design pattern commonly known as
> "Model 2".
> It includes the following key features:
>
> * A controller servlet with action mapping technology, which serves as
>   the "front component" for the application.
>
> * A comprehensive custom tag library for building internationalized
>   JSP pages that interact with JavaBeans managed automatically by
>   the controller servlet.
>
> * Useful utility classes that can process XML input, as well as use
>   Java reflection to populate JavaBean properties by matching names
>   in the same way that <jsp:setProperty name="bean" property="*"/>
>   does for JSP pages.
>
> Struts will serve as a platform for exploring the optimum
> approaches to
> implementing the "Model 2" design pattern, and will run on any servlet
> container that supports the Servlet Specification, version
> 2.2 or later,
> and the JavaServer Pages (JSP) Specification, version 1.1 or
> later (such
> as Tomcat).  It is also supported by developer and user mailing lists,
> with subscription information available at
> <http://jakarta.apache.org/getinvolved/mail.html>http://jakart
a.apache.org/getinvolved/mail.html</a>.

Nightly distributions of Struts (which includes both the source code and
the compiled libraries) are available at
<http://jakarta.apache.org/builds/struts/nightly/>http://jakarta.apache.org/
builds/struts/nightly/</a>.

Craig McClanahan

===========================================================================
To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff
JSP-INTEREST".
Some relevant FAQs on JSP/Servlets can be found at:

 http://java.sun.com/products/jsp/faq.html
 http://www.esperanto.org.nz/jsp/jspfaq.html
 http://www.jguru.com/jguru/faq/faqpage.jsp?name=JSP
 http://www.jguru.com/jguru/faq/faqpage.jsp?name=Servlets

===========================================================================
To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff JSP-INTEREST".
Some relevant FAQs on JSP/Servlets can be found at:

 http://java.sun.com/products/jsp/faq.html
 http://www.esperanto.org.nz/jsp/jspfaq.html
 http://www.jguru.com/jguru/faq/faqpage.jsp?name=JSP
 http://www.jguru.com/jguru/faq/faqpage.jsp?name=Servlets

Reply via email to