DO NOT REPLY [Bug 15697] - AbstractMethodError when using Plugins like Tiles and Validator

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15697

AbstractMethodError when using Plugins like Tiles and Validator





--- Additional Comments From [EMAIL PROTECTED]  2002-12-28 07:31 ---
I can't imagine what your problem would be, but it would be nice if you could
elaborate on your problem.  I doubt any of us are going to remember your
description of the problem from the list in a week or two.

The reason your non-default modules aren't available is that one of your plugins
is failing to initialize - which causes Struts to stop initializing.  Comment
out all of your plugins and then bring them back in one-by-one, verifying the
app fully initializes as you go.

... you can't switch to a module that isn't there (and if it doesn't initialize,
it's not there - and they're not going to initialize until you get past this
plugin issue).

Good Luck!

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 15697] New: - AbstractMethodError when using Plugins like Tiles and Validator

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15697

AbstractMethodError when using Plugins like Tiles and Validator

   Summary: AbstractMethodError when using Plugins like Tiles and
Validator
   Product: Struts
   Version: Nightly Build
  Platform: Other
OS/Version: Other
Status: NEW
  Severity: Normal
  Priority: Other
 Component: Standard Actions
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


I tried switching to use a build from 11.27.02, and I get the following error
the first time (and all other times) I hit an action:

- Root Cause -
java.lang.AbstractMethodError
at
org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:1096)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




RE: Switching Modules - isn't working for me...

2002-12-27 Thread Matt Raible
For some reason, I thought Cedric fixed this problem today.  However, I
just checked out Struts from CVS and no dice - it's still broken.  In
fact, I can't run my app at all, regardless of whether I use a sub app
or not.  This has been broken for a couple of weeks now, I'll enter a
bug.

Matt

>  -Original Message-
> From: Matt Raible [mailto:[EMAIL PROTECTED]] 
> Sent: Friday, December 27, 2002 2:02 AM
> To:   '[EMAIL PROTECTED]'
> Subject:  RE: Switching Modules - isn't working for me...
> 
> I tried switching to last night's build, but that appears to 
> be even worse - I can't even use the default module.  I get 
> the following error the first time (and all other times) I 
> hit an action:
> 
> - Root Cause -
> java.lang.AbstractMethodError
>   at 
> org.apache.struts.action.ActionServlet.initModulePlugIns(Actio
nServlet.java:1096)
>   at 
> org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
>   at javax.servlet.GenericServlet.init(GenericServlet.java:256)
> 
> My log file never shows any modules getting initialized (save 
> '').  The last build I had, from 11-24, the default app 
> worked, just the switching didn't.  Are there any sample 
> applications I can prove this works against?
> 
> Thanks,
> 
> Matt
> 
> >  -Original Message-
> > From:   Matt Raible [mailto:[EMAIL PROTECTED]] 
> > Sent:   Friday, December 27, 2002 1:37 AM
> > To: '[EMAIL PROTECTED]'
> > Subject:Switching Modules - isn't working for me...
> > 
> > It's late, so it's possible my problem is something small and 
> > I just need a second set of eyes on it.  I am trying to 
> > configure my application have an "upload" module.  I'm 
> > following the instructions at 
> > http://jakarta.apache.org/struts/userGuide/configuration.html#
> > module_config-switching.
> > 
> > In my , I have the following forward:
> > 
> > 
> >  > path="/upload/index.do" redirect="true" />
> > 
> > I have my ActionServlet configured as follows:
> > 
> > 
> > config
> > /WEB-INF/struts-config.xml
> > 
> > 
> > config/upload
> > /WEB-INF/struts-upload.xml
> > 
> > 
> > And struts-upload.xml has the following action-mappings:
> > 
> > 
> >  > path="/index"
> > type="org.apache.struts.actions.ForwardAction"
> > parameter="upload"/>
> > 
> > 
> >  >type="org.appfuse.webapp.actions.UploadAction"
> >name="uploadForm"
> >   scope="request"
> >   input="upload">
> > 
> >
> > 
> > Where "upload" and "display" are tiles definitions.  When I 
> > try to access this forward (either via link or direct URL), I get:
> > 
> > Tomcat 404: The requested resource (/appfuse/upload) is not 
> available.
> > 
> > And in the log file:
> > 
> > INFO [Thread-4] 
> > [org.apache.struts.util.PropertyMessageResources] 
> > PropertyMessageResources.(127) | Initializing, c
> > onfig='com.fgm.web.menu.displayer.DisplayerStrings', returnNull=true
> > INFO [Thread-4] 
> > [org.apache.struts.tiles.TilesRequestProcessor] 
> > TilesRequestProcessor.initDefinitionsMapping(154) | Tile
> > s definition factory found for request processor '/upload'.
> > INFO [Thread-4] [org.apache.struts.action.RequestProcessor] 
> > RequestProcessor.process(225) | Processing a 'GET' for path
> > '/index'
> > DEBUG [Thread-4] [org.apache.struts.action.RequestProcessor] 
> > RequestProcessor.processActionCreate(305) |  Looking for Ac
> > tion instance for class org.apache.struts.actions.ForwardAction
> > DEBUG [Thread-4] [org.apache.struts.action.RequestProcessor] 
> > RequestProcessor.processActionCreate(321) |   Creating new
> > Action instance
> > DEBUG [Thread-4] [org.apache.struts.action.RequestProcessor] 
> > RequestProcessor.processForwardConfig(428) | processForward
> > Config(ForwardConfig[name=null,path=upload,redirect=false,cont
> extRelative=true])
> > 
> > 
> > 
> > Any ideas?
> > 
> > Thanks,
> > 
> > Matt
> > 
> > 



Java Development with Ant

2002-12-27 Thread Erik Hatcher
All -

I'm proud (and worried about the support e-mails! :) to announce the 
near-final release of a project demonstrating Ant, XDoclet, Struts, 
JUnit, Cactus, and Lucene.  Its called JavaDevWithAnt as it was written 
for the book Steve and I co-authored and has been refined during 
several presentations I've been giving on Ant, XDoclet and Struts.

The documentation is in draft stage, and my primary goal is to collect 
feedback on polishing the documentation (and the application if there 
are any bugs that surface).  The site where I'm hosting the 
distribution and documentation is:

	http://www.ehatchersolutions.com/JavaDevWithAnt/

Please let me know if you try it out and have suggestions for 
improvement, or just to let me know you tried it and hate it or love 
it, etc.  Feedback more than welcome!  Direct feedback to me at 
[EMAIL PROTECTED]

	Erik

p.s. Since this is directed to the Struts lists, here are some hilights:

- XDoclet generation of struts-config.xml and validation.xml
- Custom XDoclet generation of starter JSP and application properties 
based on form bean source code
- My proudest taglib, LabelTag - shows fields in error and marks 
required fields with an asterisk.
- Use of StrutsTestCase in Cactus mode to test a Struts Action.


--
To unsubscribe, e-mail:   
For additional commands, e-mail: 



Fwd: Declared Exceptions and Chained Exceptions

2002-12-27 Thread Matt Raible <[EMAIL PROTECTED]>
I didn't get a response from the User List - so maybe one of you 
gents will know the answer.

Thanks,

Matt

--- In [EMAIL PROTECTED], "Matt Raible" <[EMAIL PROTECTED]> wrote:
Can I use Declarative Exceptions and Chained Exceptions at the same
time?  I'd love to be a able to specify a list of exceptions in my
struts-config.xml, and have those errors stacked on each other.
Currently, I'm rendering ChainedExceptions using the following, and
would love to do it in struts-config.xml instead.  Any advice or
suggestions are appreciated.

try {
UserManager mgr =
new UserManagerImpl(
(String) ctx.getAttribute(Constants.DAO_TYPE));
UserForm user = mgr.getUser(username);
session.setAttribute(Constants.USER_KEY, user);
} catch (Exception e) {
log.error("Error getting user's information " + e);
e.printStackTrace();
ActionErrors errors = new ActionErrors();
errors.add(
ActionErrors.GLOBAL_ERROR,
new ActionError("errors.general"));
StringBuffer sb = new StringBuffer();
if (e.getCause() == null) {
sb.append(e.getMessage());
} else {
while (e.getCause() != null) {
sb.append(e.getMessage());
e = (Exception) e.getCause();
}
}
errors.add(
ActionErrors.GLOBAL_ERROR,
new ActionError("errors.detail", sb.toString()));
}

Thanks,

Matt



--
To unsubscribe, e-mail:   
For additional commands, e-mail: 
--- End forwarded message ---



--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 10584] - Not all validation files are read in Validation PlugIn

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10584

Not all validation files are read in Validation PlugIn





--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 20:00 ---
The simplest thing would be to install the latest nightly build. 

http://jakarta.apache.org/site/binindex.cgi

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 3783] - Uploading MacIntosh files

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3783

Uploading MacIntosh files





--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 19:26 ---
I would be very surprised if this issue is still present in newer builds that 
use the CommonsMultipartRequestHandler implementation. The same bug existed 
with line end corruption on other platforms, but those issues have been 
resolved. However, like many others, I don't have a Mac around to be able to 
confirm this.

For someone who does have a Mac, the struts-upload sample application can be 
used to verify that this is no longer an issue. As for a sample file, any 
binary file that contains the appropriate bytes can be used. Alternatively, if 
you have a hex editor, you could edit some binary file to insert those bytes, 
and then verify that the uploaded file matches the original.

Since Scott mentioned that the line ends may differ across Mac OSs, it would be 
particularly helpful to test with a file that contains all of the CR, LF, and 
CR/LF patterns, to cover all bases.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 10584] - Not all validation files are read in Validation PlugIn

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10584

Not all validation files are read in Validation PlugIn

[EMAIL PROTECTED] changed:

   What|Removed |Added

URL||[EMAIL PROTECTED]



--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 17:38 ---
Good to hear that it is fixed.  Can I have the link to where the fix can be
download?  
I am also getting that problem with multiple validation files.  Here is my case:
I am writting an application with many sub-application in it and all
sub-application contain sets of dynaforms(DynaValidatorForm).  And each of these
sub-application has it's own struts-config.xml, validation.xml, and a shared
validator-rules.xml file.  However, when the application is deployed, it only
pickup one of the validation.xml from one of the sub-application, and only
validate that particular sub-application correctly.  As to rest of the
sub-applications, all validation didn't start at all. 
So, I am glad it is fixed, and I hope the fix will apply to my application too.
 It will be thankful if I can be point to the fix.  
Thank you.

David Li.
GGU

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 3783] - Uploading MacIntosh files

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3783

Uploading MacIntosh files





--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 14:07 ---
I have a Mac that I can test this on if I'm provided with a test case.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 3783] - Uploading MacIntosh files

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3783

Uploading MacIntosh files





--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 13:59 ---
It should be noted there is likely a difference between Mac OS9 and OSX.  The
old mac style used CR as line breaks, and the since OSX is unix based it
probably uses NL.  Just my two cents.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 15673] - Default Action in ActionMapping

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15673

Default Action in ActionMapping





--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:55 ---
In the case of multiple jsp for a single action the input state is inadequate 
for the validate function (depending upon the where the validation error 
occured, the input would change).

You could use 'start' as the first forward but that just doesn't feel right.

Using a plugin doesn't work because then you have the configuration information 
in code or in a separate configuration file.

I agree about the size of the workflow issue.  The amount of code required 
(which seems like it should be 'built-in') is much larger than it should be.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 15673] - Default Action in ActionMapping

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15673

Default Action in ActionMapping





--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:35 ---
The input property is tied to the validate state, and so its worth spending a
property here. For everything else, you can use whatever local or global
forwards you need. If each of the workflows have a name, there could be
"workflow.a" global forward that pointed to the entry page. At the same time,
there could be a "start" or a "1" or "whatever" local forward that pointed to
the entry page of a workflow action-mapping. 

The ActionMappings are also pluggable. If you felt that a default property was
needed, you can define your own subclass and set it using set-property. 

The whole workflow thing is a pretty big banana, and we would want to think
carefully about whatever changes we make in this regard.

-Ted.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 14749] - Action "input" not starting with '/' and not a valid forward will cause an internal server error

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14749

Action "input" not starting with '/' and not a valid forward will cause an internal 
server error

[EMAIL PROTECTED] changed:

   What|Removed |Added

 AssignedTo|[EMAIL PROTECTED]   |struts-
   ||[EMAIL PROTECTED]



--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:23 ---
In case someone can beat me to it.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 13645] - add action attribute in

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13645

add action attribute in 

[EMAIL PROTECTED] changed:

   What|Removed |Added

 AssignedTo|[EMAIL PROTECTED]   |struts-
   ||[EMAIL PROTECTED]



--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:23 ---
James Turner submitted a patch for this, but for some reason the mail didn't go out.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 12302] - Sporadic error in html:form action attribute

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=12302

Sporadic error in html:form action attribute

[EMAIL PROTECTED] changed:

   What|Removed |Added

 AssignedTo|[EMAIL PROTECTED]   |struts-
   ||[EMAIL PROTECTED]



--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:22 ---
In case someone can beat me to it.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 3783] - Uploading MacIntosh files

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3783

Uploading MacIntosh files

[EMAIL PROTECTED] changed:

   What|Removed |Added

 AssignedTo|[EMAIL PROTECTED]|struts-
   ||[EMAIL PROTECTED]



--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:21 ---
I don't think Mike is around.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




DO NOT REPLY [Bug 11021] - ActionForward or tag does not support absolute URIs

2002-12-27 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11021

ActionForward or  tag does not support absolute URIs

[EMAIL PROTECTED] changed:

   What|Removed |Added

 AssignedTo|[EMAIL PROTECTED]   |struts-
   ||[EMAIL PROTECTED]



--- Additional Comments From [EMAIL PROTECTED]  2002-12-27 12:21 ---
In case someone can beat me to it.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/doc/userGuide building_view.xml

2002-12-27 Thread husted
husted  2002/12/27 03:57:48

  Modified:doc/userGuide building_view.xml
  Log:
  Conform use of pre/code tags. No content changes.
  
  Revision  ChangesPath
  1.23  +49 -35jakarta-struts/doc/userGuide/building_view.xml
  
  Index: building_view.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/building_view.xml,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- building_view.xml 24 Dec 2002 01:50:07 -  1.22
  +++ building_view.xml 27 Dec 2002 11:57:48 -  1.23
  @@ -133,10 +133,14 @@
   
   
  @@ -691,48 +698,55 @@
   
   
   Create a /layout/layout.jsp file that contains your app's 
common look and feel:
  -
  -
  -
  -
  -
  -
  -
  +
   
   
   Create your /index.jsp homepage file:
  -
  -

This is my homepage!

- + Create a /WEB-INF/tiles-defs.xml file that looks like this: - - - - - - - - - - + Setup the TilesPlugin in the struts-config.xml file: - - - - - + Setup an action mapping in struts-config.xml to point to your homepage tile: - - - + -- To unsubscribe, e-mail: For additional commands, e-mail:

cvs commit: jakarta-struts/doc/userGuide building_model.xml

2002-12-27 Thread husted
husted  2002/12/27 03:44:13

  Modified:doc/userGuide building_model.xml
  Log:
  Conform line-length. No content changes.
  
  Revision  ChangesPath
  1.14  +311 -247  jakarta-struts/doc/userGuide/building_model.xml
  
  Index: building_model.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/building_model.xml,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- building_model.xml24 Dec 2002 01:50:07 -  1.13
  +++ building_model.xml27 Dec 2002 11:44:13 -  1.14
  @@ -1,249 +1,312 @@
   
  +
  +
  +
   
   
  -  
  +
   Craig R. McClanahan
   Mike Schachter
   Ted Husted
   Martin Cooper
   Ed Burns
   The Struts User's Guide - Building Model Components
  -  
  +
  +
  +
  +
   
  -  
  -  
  +
   
  -  
  +
  +Many requirements documents used for building web applications focus on 
  +the View.  
  +However, you should ensure that the processing required for each submitted 
  +request is also clearly defined from the Model's perspective.  
  +In general, the developer of the Model components will be focusing 
  +on the creation of JavaBeans classes that support all of the functional 
  +requirements.  
  +The precise nature of the beans required by a particular application will 
  +vary widely depending on those requirements, but they can generally be
  +classified into several categories discussed below.  
  +However, a brief review of the concept of "scope" as it relates to beans 
  +and JSP is useful first.
  +
  +
  +
  +
  +
  +
  +
  +Within a web-based application, JavaBeans can be stored in (and accessed
  +from) a number of different collections of "attributes".  
  +Each collection has different rules for the lifetime of that collection, 
  +and the visibility of the beans stored there.  
  +Together, the rules defining lifetime and visibility are called the 
  +scope of those beans.  
  +The JavaServer Pages (JSP) Specification defines scope choices using 
  +the following terms (with the equivalent servlet API concept defined in 
  +parentheses):
  +
  +
  +
  +
  +
  +page - Beans that are visible within a single JSP page,
  +for the lifetime of the current request.  
  +(Local variables of the service method)
  +
  +
  +
  +request - Beans that are visible within a single JSP page,
  +as well as to any page or servlet that is included in this page,
  +or forwarded to by this page.
  +(Request attributes)
  +
  +
  +
  +session - Beans that are visible to all JSP pages and
  +servlets that participate in a particular user session, across one
  +or more requests.
  +(Session attributes)
  +
  +
  +
  +application - Beans that are visible to all JSP pages and
  +servlets that are part of a web application.  
  +(Servlet context attributes)
  +
  +
  +
  +
  +
  +It is important to remember that JSP pages and servlets in the same
  +web application share the same sets of bean collections.  
  +For example, a bean stored as a request attribute in a servlet like this:
  +
  +
  +
  +MyCart mycart = new MyCart(...);
  +request.setAttribute("cart", mycart);
  +
  +
  +
  +
  +is immediately visible to a JSP page which this servlet forwards to,
  +using a standard action tag like this:
  +
  +
  +
  +
  +
  +
  +
  +
  +
  +
  +
  +
  +Note: While ActionForm beans often have properties that 
  +correspond to properties in your Model beans, the form beans themselves 
  +should be considered a Controller component. 
  +As such, they are able to transfer data between the Model and View layers.
  +
  +
  +
  +The Struts framework generally assumes that you have defined an
  +ActionForm bean (that is, a Java class extending the
  +ActionForm class) for the input forms in your
  +application. 
  +ActionForm beans are sometimes just called "form beans". 
  +These may be finely-grained objects, so that there is one
  +bean for each form, or coarsely-grained so that one bean serves
  +several forms, or even an entire application.
  +
  +
  +
  +If you declare such beans in your Struts
  +configuration file (see "
  +Building the Controller Components"), the Struts  controller servlet
  +will automatically perform the following services for you, before
  +invoking the appropriate Action method:
  +
  +
  +
  +
  +
  +Check in the user's session for an instance of a bean of th

cvs commit: jakarta-struts/doc/userGuide project.xml

2002-12-27 Thread husted
husted  2002/12/27 03:25:58

  Modified:doc/userGuide project.xml
  Log:
  Add reference to new configuration chapter.
  
  Revision  ChangesPath
  1.19  +3 -2  jakarta-struts/doc/userGuide/project.xml
  
  Index: project.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/project.xml,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- project.xml   29 Nov 2002 21:25:16 -  1.18
  +++ project.xml   27 Dec 2002 11:25:58 -  1.19
  @@ -13,8 +13,9 @@
 
 
 
  -  
  -  
  +  
  +  
  +  
   
   
   
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/doc/userGuide dev_validator.xml

2002-12-27 Thread husted
husted  2002/12/27 03:15:06

  Modified:doc/userGuide dev_validator.xml
  Log:
  Port David's overview -- these sections need to be reviewed in the context of the 
current codebase.
  
  Revision  ChangesPath
  1.19  +401 -43   jakarta-struts/doc/userGuide/dev_validator.xml
  
  Index: dev_validator.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/dev_validator.xml,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- dev_validator.xml 27 Dec 2002 10:24:05 -  1.18
  +++ dev_validator.xml 27 Dec 2002 11:15:06 -  1.19
  @@ -34,34 +34,387 @@
   
   
   
  -[:TODO: Cover basic functionality as documented on David's web site.
  -http://home.earthlink.net/~dwinterfeldt/";>Validation Framework for
  -Struts ]
  +Once you have configured the Validator Plug-In, so that it can load your
  +Validator Resources you just have to extend
  +org.apache.struts.validator.action.ValidatorForm instead of
  +org.apache.struts.action.ActionForm.
  +Then when the validate method is called, the action's name
  +attribute from the struts-config.xml is used to load the validations for
  +the current form.
  +So the form element's name attribute in the
  +validator-rules.xml should match  action element's name
  +attribute.
  +
  +
  +
  +Another alternative is to use the action mapping you are currently on by
  +extending the ValidatorActionForm instead of the ValidatorForm.
  +The ValidatorActionForm uses the action element's path
  +attribute from the struts-config.xml which should match the form element's
  +name attribute in the validator-rules.xml.
  +
  +
  +
  +Then a separate action can be defined for each page in a multi-page form
  +and the validation rules can be associated with the action and not a page
  +number as in the example of a multi-page form in the validator example.
  +
  +
  +
  +
  +
  +
  +
  +Validation rules for forms can be grouped under a FormSet
  +element in the validator-rules.xml file.
  +The FormSet has language, country, and variant attributes that
  +correspond with the java.util.Locale class.
  +If they are not used, the FormSet  will be set to the default
  +locale.
  +A FormSet  can also have constants associated with it.
  +On the same level as a FormSet  there can be a global element
  +which can also have constants and have validator actions that perform
  +validations.
  +
  +
  +
  +The default error message for a pluggable validator can be overriden with
  +the msg element.
  +So instead of using the msg attribute for the mask validator
  +to generate the error message the msg attribute from the
  +field will be used if the name of the field's name attribute matches the
  +validator's name attribute.
  +
  +
  +
  +
  +
  +The arguments for error messages can be set with the arg0-arg3 elements.
  +If the arg0-arg3 elements' name attribute isn't set, it will become the
  +default arg value for the different error messages constructed.
  +If the name attribute is set, you can specify the argument for a specific
  +pluggable validator and then this will be used for constructing the error
  +message.
  +
  +
  +
  +
  +
  +By default the arg0-arg3 elements will try to look up the key
  +attribute in the message resources.
  +If the resource attribute is set to false, it will pass in the value directly
  +without retrieving the value from the message resources.
  +
  +
  +
  +
  +
  +
  +
  +
  +
  +Global constants can be inside the global tags and FormSet/Locale
  +constants can be created in the formset tags.
  +Constants are currently only replaced in the Field's property attribute,
  +the Field's var element value attribute, the Field's msg element key
  +attribute, and Field's arg0-arg3 element's key attribute.
  +A Field's variables can also be substituted in the arg0-arg3
  +elements (ex: ${var:min}).
  +The order of replacement is FormSet/Locale constants are replaced first,
  +Global constants second, and for the arg elements variables are replaced
  +last.
  +
  +
  +
  +
  +
  +The var element under a field can be used to store variables for use by a
  +pluggable validator.
  +These variables are available through the Field's
  +getVar(String key) method.
  +
  +
  +
  +
  +
  +
  +
  +
  +
  +Validation actions are read from the validation.xml file.
  +The default actions are setup in the validation.xml file.
  +The ones currently configured are required, mask ,byte, short, int, long,
  +float, double, date (without locale support), and a numeric range.
  +
  +
  +
  +The 'mask' action depends on

cvs commit: jakarta-struts build-tests.xml

2002-12-27 Thread cedric
cedric  2002/12/27 03:03:55

  Modified:.build-tests.xml
  Log:
  Add batch for tiles test suite.
  
  Revision  ChangesPath
  1.13  +17 -10jakarta-struts/build-tests.xml
  
  Index: build-tests.xml
  ===
  RCS file: /home/cvs/jakarta-struts/build-tests.xml,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- build-tests.xml   22 Dec 2002 05:55:20 -  1.12
  +++ build-tests.xml   27 Dec 2002 11:03:55 -  1.13
  @@ -121,7 +121,7 @@
   
   
   
  -
   
  @@ -138,7 +138,7 @@
   
   
   
  -
   
  @@ -189,9 +189,9 @@
   
   
  - 
  +

  - 
  +
   
   
   
  +
  +  
  +
  +  
  +
  +
   
   
   
  @@ -266,10 +273,10 @@
   

   
  -
  +
   
   
  -
  +
   
   
  @@ -301,7 +308,7 @@
   
   
   
  -
  +
   
   
   
  @@ -319,7 +326,7 @@
   
   
   
  -
  +
   
   
   
  @@ -438,7 +445,7 @@
   
   
   
  -
  +
   
   
  @@ -521,7 +528,7 @@
   
   
   
  -
  +
   
   
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/test/org/apache/struts/tiles/config tiles-defs.xml

2002-12-27 Thread cedric
cedric  2002/12/27 03:02:54

  Added:   src/test/org/apache/struts/tiles TestTilesPlugin.java
   src/test/org/apache/struts/tiles/config tiles-defs.xml
  Log:
  Test suite for tiles.
  
  Revision  ChangesPath
  1.1  
jakarta-struts/src/test/org/apache/struts/tiles/TestTilesPlugin.java
  
  Index: TestTilesPlugin.java
  ===
  /*
   * $Header: 
/home/cvs/jakarta-struts/src/test/org/apache/struts/tiles/TestTilesPlugin.java,v 1.1 
2002/12/27 11:02:54 cedric Exp $
   * $Revision: 1.1 $
   * $Date: 2002/12/27 11:02:54 $
   *
   * 
   *
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *notice, this list of conditions and the following disclaimer in
   *the documentation and/or other materials provided with the
   *distribution.
   *
   * 3. The end-user documentation included with the redistribution, if
   *any, must include the following acknowlegement:
   *   "This product includes software developed by the
   *Apache Software Foundation (http://www.apache.org/)."
   *Alternately, this acknowlegement may appear in the software itself,
   *if and wherever such third-party acknowlegements normally appear.
   *
   * 4. The names "The Jakarta Project", "Struts", and "Apache Software
   *Foundation" must not be used to endorse or promote products derived
   *from this software without prior written permission. For written
   *permission, please contact [EMAIL PROTECTED]
   *
   * 5. Products derived from this software may not be called "Apache"
   *nor may "Apache" appear in their names without prior written
   *permission of the Apache Group.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * 
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * .
   *
   */
  
  
  package org.apache.struts.tiles;
  
  
  import java.net.MalformedURLException;
  import java.util.HashMap;
  import java.util.Map;
  
  import javax.servlet.jsp.JspException;
  import javax.servlet.ServletException;
  import javax.servlet.ServletContext;
  import javax.servlet.ServletConfig;
  
  import junit.framework.Test;
  import junit.framework.TestSuite;
  
  import org.apache.struts.Globals;
  import org.apache.struts.action.Action;
  import org.apache.struts.action.ActionServlet;
  import org.apache.struts.action.ActionForm;
  import org.apache.struts.action.ActionMapping;
  import org.apache.struts.action.RequestProcessor;
  import org.apache.struts.action.PlugIn;
  import org.apache.struts.config.ApplicationConfig;
  import org.apache.struts.mock.TestMockBase;
  import org.apache.struts.mock.MockActionServlet;
  
  
  import org.apache.struts.config.ModuleConfigFactory;
  import org.apache.struts.config.ModuleConfig;
  import org.apache.struts.config.PlugInConfig;
  
  import org.apache.struts.util.RequestUtils;
  import org.apache.commons.beanutils.BeanUtils;
  
  /**
   * Unit tests for org.apache.struts.tiles.*.
   *
   * @author Cedric Dumoulin
   * @version $Revision: 1.1 $ $Date: 2002/12/27 11:02:54 $
   */
  
  public class TestTilesPlugin extends TestMockBase {
  
  
protected ModuleConfig module1;
protected ModuleConfig module2;
protected MockActionServlet actionServlet;
  
  // - Basics
  
  
  public TestTilesPlugin(String name) {
  super(name);
  }
  
  
 

cvs commit: jakarta-struts/src/test/org/apache/struts/mock MockServletContext.java

2002-12-27 Thread cedric
cedric  2002/12/27 03:02:09

  Modified:src/test/org/apache/struts/mock MockServletContext.java
  Log:
  Implement getResource() and getResourceAsStream().
  The implementation simply use the underlying method of Class.
  
  Revision  ChangesPath
  1.2   +8 -6  
jakarta-struts/src/test/org/apache/struts/mock/MockServletContext.java
  
  Index: MockServletContext.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/test/org/apache/struts/mock/MockServletContext.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- MockServletContext.java   1 Jul 2002 22:10:35 -   1.1
  +++ MockServletContext.java   27 Dec 2002 11:02:09 -  1.2
  @@ -191,12 +191,14 @@
   
   
   public URL getResource(String path) {
  -throw new UnsupportedOperationException();
  +  return this.getClass().getResource(path);
  +//throw new UnsupportedOperationException();
   }
   
   
   public InputStream getResourceAsStream(String path) {
  -throw new UnsupportedOperationException();
  +  return this.getClass().getResourceAsStream(path);
  +//throw new UnsupportedOperationException();
   }
   
   
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/test/org/apache/struts/mock MockActionServlet.java

2002-12-27 Thread cedric
cedric  2002/12/27 03:00:55

  Added:   src/test/org/apache/struts/mock MockActionServlet.java
  Log:
  An ActionServlet mock object to be able to test objects and methods requiring such
  object.
  The implementation only provide a fake object with getServletContext() and
  getServletConfig() returning valid objects.
  
  Revision  ChangesPath
  1.1  
jakarta-struts/src/test/org/apache/struts/mock/MockActionServlet.java
  
  Index: MockActionServlet.java
  ===
  /*
   * $Header: 
/home/cvs/jakarta-struts/src/test/org/apache/struts/mock/MockActionServlet.java,v 1.1 
2002/12/27 11:00:55 cedric Exp $
   * $Revision: 1.1 $
   * $Date: 2002/12/27 11:00:55 $
   *
   * 
   *
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *notice, this list of conditions and the following disclaimer in
   *the documentation and/or other materials provided with the
   *distribution.
   *
   * 3. The end-user documentation included with the redistribution, if
   *any, must include the following acknowlegement:
   *   "This product includes software developed by the
   *Apache Software Foundation (http://www.apache.org/)."
   *Alternately, this acknowlegement may appear in the software itself,
   *if and wherever such third-party acknowlegements normally appear.
   *
   * 4. The names "The Jakarta Project", "Struts", and "Apache Software
   *Foundation" must not be used to endorse or promote products derived
   *from this software without prior written permission. For written
   *permission, please contact [EMAIL PROTECTED]
   *
   * 5. Products derived from this software may not be called "Apache"
   *nor may "Apache" appear in their names without prior written
   *permission of the Apache Group.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * 
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * .
   *
   */
  
  
  package org.apache.struts.mock;
  
  
  import javax.servlet.ServletContext;
  import javax.servlet.ServletConfig;
  
  
  import org.apache.struts.action.ActionServlet;
  
  /**
   * Mock ActionServlet object for low-level unit tests
   * of Struts controller components.  Coarser grained tests should be
   * implemented in terms of the Cactus framework, instead of the mock
   * object classes.
   *
   * WARNING - Only getter methods for servletContext and
   * servletConfig are provided, plus additional methods to configure this
   * object as necessary.  Methods for unsupported operations will throw
   * UnsupportedOperationException.
   *
   * WARNING - Because unit tests operate in a single
   * threaded environment, no synchronization is performed.
   *
   * @author Craig R. McClanahan
   * @author Cedric Dumoulin
   * @version $Revision: 1.1 $ $Date: 2002/12/27 11:00:55 $
   */
  public class MockActionServlet extends ActionServlet
  {
protected ServletContext servletContext;
protected ServletConfig servletConfig;
  
  /**
   * Constructor.
   */
public MockActionServlet( ServletContext servletContext, ServletConfig 
servletConfig  )
{
this.servletContext = servletContext;
this.servletConfig = servletConfig;
}
  
  /**
   * Constructor.
   */
public MockActionServlet( )
{
}
  
  /**
   * Set property
   * @param servletContext
   */
public void setServletCon

cvs commit: jakarta-struts/src/test/org/apache/struts/tiles/config - New directory

2002-12-27 Thread cedric
cedric  2002/12/27 02:57:50

  jakarta-struts/src/test/org/apache/struts/tiles/config - New directory

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/test/org/apache/struts/tiles - New directory

2002-12-27 Thread cedric
cedric  2002/12/27 02:57:44

  jakarta-struts/src/test/org/apache/struts/tiles - New directory

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles TilesRequestProcessor.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:57:01

  Modified:src/share/org/apache/struts/tiles TilesRequestProcessor.java
  Log:
  Change definitionFactory visibility to protected (requested on mailing list).
  Remove one call to deprecated api.
  
  Revision  ChangesPath
  1.16  +6 -5  
jakarta-struts/src/share/org/apache/struts/tiles/TilesRequestProcessor.java
  
  Index: TilesRequestProcessor.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/TilesRequestProcessor.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- TilesRequestProcessor.java28 Nov 2002 07:26:21 -  1.15
  +++ TilesRequestProcessor.java27 Dec 2002 10:57:01 -  1.16
  @@ -95,7 +95,7 @@
   public class TilesRequestProcessor extends RequestProcessor
   {
   /** Definitions factory */
  -  private DefinitionsFactory definitionsFactory;
  +  protected DefinitionsFactory definitionsFactory;
   
/**
 * Commons Logging instance.
  @@ -119,11 +119,12 @@
   /**
* Read component instance mapping configuration file.
* This is where we read files properties.
  + * @param moduleConfig The ModuleConfig we are associated with.
*/
 protected void initDefinitionsMapping() throws ServletException
   {
 // Retrieve and set factory for this modules
  -definitionsFactory = DefinitionsUtil.getDefinitionsFactory(getServletContext());
  +definitionsFactory = 
((TilesUtilStrutsImpl)TilesUtil.getTilesUtil()).getDefinitionsFactory(getServletContext(),
 moduleConfig);
   if( definitionsFactory == null )
 {  // problem !
   if(log.isErrorEnabled())
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles package.html

2002-12-27 Thread cedric
cedric  2002/12/27 02:55:44

  Modified:src/share/org/apache/struts/tiles package.html
  Log:
  Update documentation.
  
  Revision  ChangesPath
  1.4   +20 -11jakarta-struts/src/share/org/apache/struts/tiles/package.html
  
  Index: package.html
  ===
  RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/package.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- package.html  5 Nov 2002 14:17:16 -   1.3
  +++ package.html  27 Dec 2002 10:55:44 -  1.4
  @@ -169,29 +169,38 @@
   
   
 moduleAware: (optional)
  -
  +   
 Specify if the Tiles definition factory is module aware. If true 
(default), 
there will be one factory for each Struts module. 
If false, there will be one common factory for all module. In 
this later case, 
it is still needed to declare one plugin per module. The 
factory will be 
initialized with parameters found in the first initialized 
plugin (generally the
one associated with the default module). 
  -
  -  true : validate. DTD should be specified in file header 
(default)
  -false : no validation  
  - 
  -
  -
  -
  +
  + true : Tiles framework is module aware 
  + false :Tiles framework has one single factoy shared among modules 
(default)
  +
  +   
   
   
  -
  +
  +tilesUtilImplClassname: (optional - for advanced user)
  + 
  +Specify The classname of the TilesUtil implementation to use. The specified 
class should
  + be a subclass of TilesUtilStrutsImpl. This option disable the moduleAware 
option.
  + Specifying "TilesUtilStrutsImpl" is equivalent to moduleAware = false.
  + Specifying "TilesUtilStrutsModuleImpl" is equivalent to moduleAware = 
true.
  + This option is taken into account only once, when it is first encountered. To 
avoid problems,
  + it is advice to specify the same values in all TilesPlugin declaration.
  +
  + 
   
  +
   
  -The TilesPlugin class creates one defintion factory for each struts 
module.
  +The TilesPlugin class creates one definition factory for each struts 
module.


  - If the flag moduleAware is false, only one shared factory is created 
for all module. 
  + If the flag moduleAware is false, only one shared factory is created 
for all modules. 
In this later case, the factory is initialized with parameters found 
in the first plugin.
The plugins should be declared in all modules, and the moduleAware 
flag should be 
the same for the entire application. 
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles TilesPlugin.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:55:15

  Modified:src/share/org/apache/struts/tiles TilesPlugin.java
  Log:
  Change initialization code.
  The moduleAware is better taken into account (bug reported on mailing list).
  The struts original plugin config object is now retrieved with appropriate mechanism.
  
  Revision  ChangesPath
  1.16  +199 -129  
jakarta-struts/src/share/org/apache/struts/tiles/TilesPlugin.java
  
  Index: TilesPlugin.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/TilesPlugin.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- TilesPlugin.java  17 Dec 2002 00:57:36 -  1.15
  +++ TilesPlugin.java  27 Dec 2002 10:55:15 -  1.16
  @@ -103,15 +103,25 @@
*/
   public class TilesPlugin implements PlugIn {
   
  -/** Commons Logging instance. */
  +  /** Commons Logging instance. */
   protected static Log log = LogFactory.getLog(TilesPlugin.class);
   
  -/** Does the factory is module aware ? */
  +  /** Does the factory is module aware ? */
   protected boolean moduleAware = false;
   
  -/** Associated definition factory */
  +  /** Tiles util implementation classname. This property can be set
  +   *  by user in the plugin declaration
  +   */
  +protected String tilesUtilImplClassname = null;
  +
  +  /** Associated definition factory */
   protected DefinitionsFactory definitionFactory;
   
  +  /** The plugin config object provided by the ActionServlet initializing
  +   *  this plugin.
  +   */
  +protected PlugInConfig currentPlugInConfigObject;
  +
   /**
* Get the module aware flag.
* true: user want a single factory instance
  @@ -125,6 +135,8 @@
* Set the module aware flag.
* true: user want a single factory instance
* false: user want multiple factory instance (one per module with Struts)
  + * This flag is meaningfull only if the property tilesUtilImplClassname is not
  + * set.
* @param moduleAware
*/
   public void setModuleAware(boolean moduleAware) {
  @@ -137,53 +149,92 @@
*
* @param servlet ActionServlet that is managing all the modules
*  in this web application
  - * @param config ModuleConfig for the module with which
  + * @param moduleConfig ModuleConfig for the module with which
*  this plug in is associated
*
* @exception ServletException if this PlugIn cannot
*  be successfully initialized
*/
  -public void init(ActionServlet servlet, ModuleConfig config) throws 
ServletException {
  -// Create factory config object
  -DefinitionsFactoryConfig factoryConfig = readFactoryConfig(servlet, config);
  -// Set RequestProcessor class
  -initRequestProcessorClass(config);
  -
  -// Check if user want one single factory instance for all module,
  -// or one factory for each module. Set the appropriate TilesUtil
  -// object accordingly
  -if (isModuleAware()) {
  -// Use appropriate TilesUtil implementation
  -TilesUtil.setTilesUtil(new StrutsModulesTilesUtilImpl());
  -// Set the module name in the config. This name will be used to compute
  -// the name under which the factory is stored.
  -factoryConfig.setFactoryName(config.getPrefix());
  -} else {
  -
  -  // Use appropriate TilesUtil implementation
  -TilesUtil.setTilesUtil(new TilesUtilStrutsSingleFactory());
  -  // We want one single shared instance. Check if it already exists in 
servlet context.
  -definitionFactory = 
TilesUtil.getDefaultDefinitionsFactory(servlet.getServletContext());
  -if (definitionFactory != null) {
  -if (log.isInfoEnabled())
  -log.info(
  -"Factory already exists for module '"
  -+ config.getPrefix()
  -+ "'. No new creation.");
  -return;
  -} // end if
  +public void init(ActionServlet servlet, ModuleConfig moduleConfig) throws 
ServletException
  +{
  +  // Create factory config object
  +DefinitionsFactoryConfig factoryConfig = readFactoryConfig(servlet, 
moduleConfig);
  +  // Set the module name in the config. This name will be used to compute
  +  // the name under which the factory is stored.
  +factoryConfig.setFactoryName(moduleConfig.getPrefix());
  +  // Set RequestProcessor class
  +initRequestProcessorClass(moduleConfig);
  +
  +  // Set Tiles util implementation according to properties 
'tilesUtilImplClassname'
  +  // and 'moduleAware'.
  +  // These properties are taken into account only once. A
  +  // side effect 

cvs commit: jakarta-struts/src/share/org/apache/struts/action ActionServlet.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:52:22

  Modified:src/share/org/apache/struts/action ActionServlet.java
  Log:
  Pass the current plugIn config object to the PlugIn during initialization.
  The object is passed as a property of the plugin. The plugin should declare a
  property "currentPlugInConfigObject" to be able to receive the config object.
  The property is set only if the plugin declares it.
  This plugin config object is needed by Tiles.
  
  Revision  ChangesPath
  1.138 +9 -5  
jakarta-struts/src/share/org/apache/struts/action/ActionServlet.java
  
  Index: ActionServlet.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/action/ActionServlet.java,v
  retrieving revision 1.137
  retrieving revision 1.138
  diff -u -r1.137 -r1.138
  --- ActionServlet.java22 Dec 2002 05:31:14 -  1.137
  +++ ActionServlet.java27 Dec 2002 10:52:22 -  1.138
  @@ -1093,7 +1093,11 @@
   plugIns[i] =
   
(PlugIn)RequestUtils.applicationInstance(plugInConfigs[i].getClassName());
   BeanUtils.populate(plugIns[i], plugInConfigs[i].getProperties());
  -plugIns[i].init(this, (ModuleConfig) config);
  +  // Pass the current plugIn config object to the PlugIn.
  +  // The property is set only if the plugin declares it.
  +  // This plugin config object is needed by Tiles
  +BeanUtils.copyProperty( plugIns[i], "currentPlugInConfigObject", 
plugInConfigs[i]);
  +plugIns[i].init(this, (ModuleConfig) config);
   } catch (ServletException e) {
   // Lets propagate
   throw e;
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles DefinitionsUtil.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:49:34

  Modified:src/share/org/apache/struts/tiles DefinitionsUtil.java
  Log:
  Change the implementation of getFactory with a single argument.
  
  Revision  ChangesPath
  1.9   +4 -4  
jakarta-struts/src/share/org/apache/struts/tiles/DefinitionsUtil.java
  
  Index: DefinitionsUtil.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/DefinitionsUtil.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- DefinitionsUtil.java  17 Dec 2002 00:57:36 -  1.8
  +++ DefinitionsUtil.java  27 Dec 2002 10:49:34 -  1.9
  @@ -333,7 +333,7 @@
  */
static  public DefinitionsFactory getDefinitionsFactory(ServletContext 
servletContext)
 {
  -  return getDefaultDefinitionsFactory(servletContext);
  +  return (DefinitionsFactory)servletContext.getAttribute(DEFINITIONS_FACTORY);
 }
   
 /**
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles DefaultTilesUtilImpl.java StrutsModulesTilesUtilImpl.java TilesUtilInterface.java TilesUtilStrutsSingleFactory.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:47:23

  Removed: src/share/org/apache/struts/tiles DefaultTilesUtilImpl.java
StrutsModulesTilesUtilImpl.java
TilesUtilInterface.java
TilesUtilStrutsSingleFactory.java
  Log:
  Change the TilesUtil implementations hierarchie.
  Some file names have changed:
  DefaultTilesUtilImpl --> TilesUtilImpl
  TilesUtilInterface --> removed, use TilesUtilImpl instead
  TilesUtiStrutsSingleFactory --> TilesUtilStrutsImpl
  StrutsModuleTilesUtilImpl --> TilesUtilStrutsModuleImpl
  These removed files have been introduce recently, removing them
  shouldn't affect users.

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles TilesUtilStrutsModulesImpl.java TilesUtilStrutsImpl.java TilesUtilImpl.java TilesUtil.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:41:24

  Modified:src/share/org/apache/struts/tiles TilesUtil.java
  Added:   src/share/org/apache/struts/tiles
TilesUtilStrutsModulesImpl.java
TilesUtilStrutsImpl.java TilesUtilImpl.java
  Log:
  Change the TilesUtil implementations hierarchie:
  TilesUtil is the main entry
  TilesUtilImpl is the root and default implementation
  TilesUtilStrutsImpl is the implementation for struts
  TilesUtilStrutsModuleImpl is the implementation for struts with multi module.
  Normal user doesn't have to take care about the implementation to use. It is
  selected by the TilesPlugin
  
  Revision  ChangesPath
  1.4   +40 -33jakarta-struts/src/share/org/apache/struts/tiles/TilesUtil.java
  
  Index: TilesUtil.java
  ===
  RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/TilesUtil.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- TilesUtil.java17 Dec 2002 00:57:36 -  1.3
  +++ TilesUtil.java27 Dec 2002 10:41:23 -  1.4
  @@ -74,6 +74,15 @@
   
 /**
  * Class containing utilities for Tiles.
  +   * Methods of this class are static, and so are accessible from anywhere.
  +   * The underlying implementation can be changed with
  +   * {@link void setTilesUtil(TilesUtilImpl tilesUtil)}.
  +   * 
  +   * Real implementation classes should derive from the {@link TilesUtilImpl } 
class.
  +   * 
  +   * Some methods are specified to throw the 
UnsupportedOperationException
  +   * if the underlying implementation doesn't support the operation.
  +   *
  *
  */
   public class TilesUtil
  @@ -82,30 +91,13 @@
 protected static Log log = LogFactory.getLog(TilesUtil.class);
   
   /** The implementation of tilesUtilImpl */
  -  protected static TilesUtilInterface tilesUtilImpl = new DefaultTilesUtilImpl();
  -
  -  protected static String test=null;
  -
  -/**
  - * Static constructor for tests
  - */
  -  public TilesUtil()
  -  {
  -  if(test==null)
  -{
  -test="initialized";
  -log.warn( "TilesUtil is called for the first time" );
  -}
  -   else
  -{
  -log.error( "TilesUtil is already initialized" );
  -} // end if
  -  }
  +  protected static TilesUtilImpl tilesUtilImpl = new TilesUtilImpl();
   
   /**
* Get the real implementation.
  + * @return The underlying implementation object.
*/
  -  static public TilesUtilInterface getTilesUtil()
  +  static public TilesUtilImpl getTilesUtil()
 {
 return tilesUtilImpl;
 }
  @@ -115,13 +107,25 @@
* This method should be called only once.
* Successive calls have no effect.
*/
  -  static public void setTilesUtil(TilesUtilInterface tilesUtil)
  +  static public void setTilesUtil(TilesUtilImpl tilesUtil)
 {
 if( implAlreadySet)
   return;
 tilesUtilImpl = tilesUtil;
 implAlreadySet = true;
 }
  +
  +/**
  + * Getter to know if the underlying implementation is already set to another
  + * value than the default value.
  + * @return true if setTilesUtil() has already been called.
  + */
  +  static boolean isTilesUtilImplSet()
  +  {
  +  return implAlreadySet;
  +  }
  +
  +
   /** Flag to know if internal implementation have been set by the setter method 
*/
 private static boolean implAlreadySet=false;
   
  @@ -158,15 +162,6 @@
 }
   
   /**
  - * @param servletContext Current servlet context
  - * @return Definitions factory or null if not found.
  - */
  -  static  public DefinitionsFactory getDefaultDefinitionsFactory(ServletContext 
servletContext)
  -  {
  -  return tilesUtilImpl.getDefaultDefinitionsFactory(servletContext);
  -  }
  -
  -/**
* Get definition factory from appropriate servlet context.
* @return Definitions factory or null if not found.
*/
  @@ -232,4 +227,16 @@
 {
 return tilesUtilImpl.applicationClass(className);
 }
  +
  +
  +/**
  + * Reset internal state.
  + * This method is used by test suites to reset the class to its original state.
  + */
  +  protected static void testReset()
  +  {
  +  implAlreadySet = false;
  +  tilesUtilImpl = new TilesUtilImpl();
  +  }
  +
   }
  
  
  
  1.1  
jakarta-struts/src/share/org/apache/struts/tiles/TilesUtilStrutsModulesImpl.java
  
  Index: TilesUtilStrutsModulesImpl.java
  ===
  /*
   * $Header: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/TilesUtilStrutsModulesImpl.java,v
 1.1 2002/12/27 10:41:23 cedric Exp $
   * $Revision: 1.1 $
   * $Date: 2002/12/27 10:41:23 $
   *
   * 
   *
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 1999-2002 The Apache Software

cvs commit: jakarta-struts/src/share/org/apache/struts/tiles/actions NoOpAction.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:36:54

  Modified:src/share/org/apache/struts/tiles/actions NoOpAction.java
  Log:
  Add some documentation
  
  Revision  ChangesPath
  1.5   +10 -5 
jakarta-struts/src/share/org/apache/struts/tiles/actions/NoOpAction.java
  
  Index: NoOpAction.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/actions/NoOpAction.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- NoOpAction.java   20 Oct 2002 19:21:01 -  1.4
  +++ NoOpAction.java   27 Dec 2002 10:36:54 -  1.5
  @@ -86,7 +86,12 @@
*
* @author Cedric Dumoulin
* @version $Revision$ $Date$
  - * @deprecated Use o.a.s.a.ForwardAction instead
  + * @deprecated Use o.a.s.a.ForwardAction instead with the parameter attribute:
  + * 
  + *
  + * 
*/
   
   public final class NoOpAction extends Action {
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/src/share/org/apache/struts/tiles/xmlDefinition I18nFactorySet.java

2002-12-27 Thread cedric
cedric  2002/12/27 02:35:20

  Modified:src/share/org/apache/struts/tiles/xmlDefinition
I18nFactorySet.java
  Log:
  Move the loaded factory log report from 'info' to 'debug'.
  This suppress the long report at startup.
  Set log to debug to see it again.
  
  Revision  ChangesPath
  1.5   +5 -5  
jakarta-struts/src/share/org/apache/struts/tiles/xmlDefinition/I18nFactorySet.java
  
  Index: I18nFactorySet.java
  ===
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/tiles/xmlDefinition/I18nFactorySet.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- I18nFactorySet.java   10 Oct 2002 16:32:26 -  1.4
  +++ I18nFactorySet.java   27 Dec 2002 10:35:19 -  1.5
  @@ -301,8 +301,8 @@
 log.debug( rootXmlConfig );
   
   DefinitionsFactory factory = new DefinitionsFactory( rootXmlConfig );
  -if(log.isInfoEnabled())
  -  log.info( "factory loaded : " + factory );
  +if(log.isDebugEnabled())
  +  log.debug( "factory loaded : " + factory );
   
   return factory;
   }
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/doc/userGuide dev_validator.xml

2002-12-27 Thread husted
husted  2002/12/27 02:24:06

  Modified:doc/userGuide dev_validator.xml
  Log:
  Minor structural changes to existing content.
  
  Revision  ChangesPath
  1.18  +114 -82   jakarta-struts/doc/userGuide/dev_validator.xml
  
  Index: dev_validator.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/dev_validator.xml,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- dev_validator.xml 27 Dec 2002 09:53:39 -  1.17
  +++ dev_validator.xml 27 Dec 2002 10:24:05 -  1.18
  @@ -6,9 +6,9 @@
   -->
   
   
  -  David Winterfeldt 
  -  James Turner 
  -  Rob Leland 
  +  David Winterfeldt
  +  James Turner
  +  Rob Leland
   The Struts User's Guide - Validator Guide
   
   
  @@ -18,48 +18,32 @@
   
   
   
  -
  -[:TODO:]
  -
  +
  +The Struts Validator, in some form, has been available since the
  +days of Struts 0.5.
  +It was orignally packaged as a developer contribution.
  +Later, the core code was moved to the Jakarta Commons and
  +a Struts specific extension became part of Struts 1.1.
  +
   
  -
  -Cover basic functionality as documented on David's web site.
  -http://home.earthlink.net/~dwinterfeldt/";>Validation Framework for 
  -Struts  
  -
  +
  +For the convenience of the many developers who have been using
  +the Struts Validator all along, this document first overviews
  +the core functionality and then covers the changes and
  +new functionality added in the Struts 1.1.
  +
  +
  +
  +[:TODO: Cover basic functionality as documented on David's web site.
  +http://home.earthlink.net/~dwinterfeldt/";>Validation Framework for
  +Struts ]
  +
   
   
  -Changes in the validator behavior and deprecation of functionality from 
  +Changes in the validator behavior and deprecation of functionality from
   original validator
   
   
  -
  -
  -
  -The validator xml files now validates against the DTD stored in the 
  -commons-validator.jar !
  -
  -
  -
  -The default validator-rules.xml now ignores blank fields for all the basic 
  -validation types.
  -If you require a field to be present then to your applications validator.xml 
  -field definition add "required" to the depends attribute.
  -
  -
  -
  -The Javascript Tag has new attributes defined.
  -
  -
  -
  -Deprecation of range methods in both JavaScript and Java
  -
  -
  -
  -Deprecation of StrutsValidator & StrutsValidatorUtil
  -
  -
  -
   
   
   Struts 1.1 has also added additional functionality over the original validator
  @@ -73,7 +57,7 @@
   
   
   
  -intRange & floatRange methods in both JavaScript 
  +intRange & floatRange methods in both JavaScript
   and Java
   
   
  @@ -84,17 +68,25 @@
   
   
   
  -Current know bugs can be found by clicking:
  -http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Struts&version=1.1+Beta+1&version=1.1+Beta+2&version=Nightly+Build&version=Unknown&component=Validator+Framework&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time";>
  -Validation Bugs
  -
  -
  -
  -Since validation also relies on the commons-validator those bugs can be found
  -http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Commons&version=&component=Validator&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time";>
  -here
  +Since the Struts Validator relies on the Commons Validator, problem
  +reports and enhancement requests may be listed against either product.
   
   
  +
  +
  +
  +http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOP

cvs commit: jakarta-struts/doc/userGuide dev_validator.xml

2002-12-27 Thread husted
husted  2002/12/27 01:53:39

  Modified:doc/userGuide dev_validator.xml
  Log:
  Conform line-length. No content changes.
  
  Revision  ChangesPath
  1.17  +236 -171  jakarta-struts/doc/userGuide/dev_validator.xml
  
  Index: dev_validator.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/dev_validator.xml,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- dev_validator.xml 24 Dec 2002 01:50:07 -  1.16
  +++ dev_validator.xml 27 Dec 2002 09:53:39 -  1.17
  @@ -1,13 +1,20 @@
   
   
  +
  +
  +
   
 David Winterfeldt 
 James Turner 
 Rob Leland 
   The Struts User's Guide - Validator Guide
   
  - 
  - 
  +
  +
  +
  +
   
   
   
  @@ -17,219 +24,277 @@
   
   
   Cover basic functionality as documented on David's web site.
  -http://home.earthlink.net/~dwinterfeldt/";>Validation Framework for Struts 
 
  +http://home.earthlink.net/~dwinterfeldt/";>Validation Framework for 
  +Struts  
   
   
   
  -Changes in the validator behavior and deprecation of functionality from original 
validator
  +Changes in the validator behavior and deprecation of functionality from 
  +original validator
   
  +
   
  -
  -  The validator xml files now validates against the DTD stored in the 
commons-validator.jar !
  -
  -
  -  The default validator-rules.xml now ignores blank fields for all the basic 
validation types.
  -  If you require a field to be present then to your applications validator.xml 
  -  field definition add "required" to the depends attribute.
  -
  -
  -  The Javascript Tag has new attributes defined.
  -
  -
  -  Deprecation of range() methods in both JavaScript and Java
  -
  -
  -  Deprecation of StrutsValidator & StrutsValidatorUtil
  -
  +
  +
  +The validator xml files now validates against the DTD stored in the 
  +commons-validator.jar !
  +
  +
  +
  +The default validator-rules.xml now ignores blank fields for all the basic 
  +validation types.
  +If you require a field to be present then to your applications validator.xml 
  +field definition add "required" to the depends attribute.
  +
  +
  +
  +The Javascript Tag has new attributes defined.
  +
  +
  +
  +Deprecation of range methods in both JavaScript and Java
  +
  +
  +
  +Deprecation of StrutsValidator & StrutsValidatorUtil
  +
  +
   
  +
   
   Struts 1.1 has also added additional functionality over the original validator
   contributed by David Winterfeldt.
   
   
   
  +
   
  -  Conditionally required fields
  +Conditionally required fields
   
  +
   
  -  intRange() & floatRange() methods in both JavaScript and Java
  +intRange & floatRange methods in both JavaScript 
  +and Java
   
  +
   
  +
   
  +
   
  - Current know bugs can be found by clicking:
  -http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Struts&version=1.1+Beta+1&version=1.1+Beta+2&version=Nightly+Build&version=Unknown&component=Validator+Framework&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time";>
  -Validation Bugs 
  -Since validation also relies on the commons-validator those bugs can be found
  -http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Commons&version=&component=Validator&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time";>
  -here
  +
  +
  +Current know bugs can be found by clicking:
  +http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&

cvs commit: jakarta-struts/doc/userGuide dev_bean.xml

2002-12-27 Thread husted
husted  2002/12/27 01:25:33

  Modified:doc/userGuide dev_bean.xml
  Log:
  Conform line-length. No content changes.
  
  Revision  ChangesPath
  1.4   +42 -21jakarta-struts/doc/userGuide/dev_bean.xml
  
  Index: dev_bean.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/dev_bean.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- dev_bean.xml  17 Dec 2002 06:48:52 -  1.3
  +++ dev_bean.xml  27 Dec 2002 09:25:33 -  1.4
  @@ -1,39 +1,60 @@
   
   
  +
  +
  +
   
 Craig R. McClanahan
 The Struts User's Guide - Bean Taglib Guide
   
  +


   
   
   
  -
  - Note: - Some of the features in this taglib are also 
available in the 
  - http://java.sun.com/products/jsp/jstl/";>JavaServer Pages Standard Tag 
Library (JSTL).
  - The Struts team encourages the use of the standard tags over the Struts 
specific tags when possible.
  -
  -
  -
  -The "struts-bean" tag library contains JSP custom tags useful in defining new beans 
(in any desired scope) from a variety of possible sources, as well as a tag to
  -render a particular bean (or bean property) to the output response. 
  -
  -
  -
  -This tag library contains tags useful in accessing beans and their properties, as 
well as defining new beans (based on these
  -accesses) that are accessible to the remainder of the page via scripting variables 
and page scope attributes. Convenient
  -mechanisms to create new beans based on the value of request cookies, headers, and 
parameters are also provided.
  -
  +
  +Note: - Some of the features in this taglib are also 
  +available in the 
  +http://java.sun.com/products/jsp/jstl/";>JavaServer Pages 
  +Standard Tag Library (JSTL).
  +The Struts team encourages the use of the standard tags over the Struts 
  +specific tags when possible.
  +
  +
  +
  +The "struts-bean" tag library contains JSP custom tags useful in defining 
  +new beans (in any desired scope) from a variety of possible sources, 
  +as well as a tag to render a particular bean (or bean property) to the 
  +output response. 
  +
  +
  +
  +This tag library contains tags useful in accessing beans and their 
  +properties, as well as defining new beans (based on these accesses) that 
  +are accessible to the remainder of the page via scripting variables and 
  +page scope attributes. 
  +Convenient mechanisms to create new beans based on the value of request 
  +cookies, headers, and parameters are also provided.
  +
   
   
   
   
   
  -
  -Bean
 Taglib Package Description
  -Bean Taglib API Reference
  -
  +
  +
  +
  +Bean Taglib Package Description
  +
  +Bean Taglib API Reference
  +
  +
  +
   
   
  -
  +
  +
  +
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/doc/userGuide configuration.xml

2002-12-27 Thread husted
husted  2002/12/27 01:21:36

  Modified:doc/userGuide configuration.xml
  Log:
  Insert mention of listing multiple struts-config files. Spell check.
  
  Revision  ChangesPath
  1.7   +16 -4 jakarta-struts/doc/userGuide/configuration.xml
  
  Index: configuration.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/configuration.xml,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- configuration.xml 27 Dec 2002 09:06:52 -  1.6
  +++ configuration.xml 27 Dec 2002 09:21:36 -  1.7
  @@ -462,7 +462,13 @@
   struts-config.xml file.
   Obviously, this wasn't ideal for a team environment, since multiple users 
   had to share the same configuration file.
  -Modules to the rescue!
  +
  +
  +
  +In Struts 1.1, you have two options: you can list 
  +multiple struts-config files as a 
  +comma-delimited list, or you can subdivide a larger application into 
  +modules.
   
   
   
  @@ -674,7 +680,13 @@
   
   config - Context-relative path to the XML resource
   containing the configuration information for the default module.
  -[/WEB-INF/struts-config.xml].
  +This may also be a comma-delimited list of configuration files. 
  +Each file is loaded in turn, and its objects are appended to the 
  +internal data structure. [/WEB-INF/struts-config.xml].
  +WARNING - If you define 
  +an object of the same name in more than one configuration file, 
  +the last one loaded quietly wins.
  +
   
   
   
  @@ -989,7 +1001,7 @@
   
   
   
  -The struts-bean taglib contains tags useful in accessingbeans and their
  +The struts-bean taglib contains tags useful in accessing beans and their
   properties,  as well as defining new beans (based on these accesses)
   that are accessible to the remainder of the page via scripting
   variables and page scope attributes.
  @@ -1007,7 +1019,7 @@
   The struts-logic taglib contains tags that are useful in managing
   conditional generation of output text,
   looping over object collections for repetitive generation of output
  -text,and application flow management.
  +text,  and application flow management.
   
   
   
  
  
  

--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




cvs commit: jakarta-struts/doc/userGuide configuration.xml

2002-12-27 Thread husted
husted  2002/12/27 01:06:52

  Modified:doc/userGuide configuration.xml
  Log:
  Conform line-ends, no content changes.
  
  Revision  ChangesPath
  1.6   +728 -441  jakarta-struts/doc/userGuide/configuration.xml
  
  Index: configuration.xml
  ===
  RCS file: /home/cvs/jakarta-struts/doc/userGuide/configuration.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- configuration.xml 27 Dec 2002 02:38:00 -  1.5
  +++ configuration.xml 27 Dec 2002 09:06:52 -  1.6
  @@ -1,7 +1,7 @@
   
   
   
  -  
  +
   The Struts User's Guide - Configuring Applications
   Craig R. McClanahan
   Mike Schachter
  @@ -13,16 +13,17 @@
   Yann Cebron
   David Graham
   Tim O'Brien
  -  
  +
   
  -  
  -  
  +
  +
   
  - 
  +
   
   
   Before you can build an application, you need to lay a solid foundation.
  -There are several setup tasks you need to perform before deploying your Struts 
application.
  +There are several setup tasks you need to perform before deploying
  +your Struts application.
   These include components in the Struts configuration file
   and in the Web Application Deployment Descriptor.
   
  @@ -42,168 +43,252 @@
   
   
   
  -These "static" configuration elements are :
  +These "static" configuration elements are:
   
   
   
  -controller
  -message-resources
  -plug-in
  -data-sources
  +
  +
  +controller
  +
  +
  +
  +message-resources
  +
  +
  +
  +plug-in
  +
  +
  +
  +data-sources
  +
  +
   
   

   

  -  
  -The  element allows you to configure
  -the ActionServlet.  Many of the controller parameters were previously
  -defined by servlet initialization parameters in your
  -web.xml file but have been moved to this section of
  -struts-config.xml in order to allow different modules
  -in the same web application to be configured differently.
  -For full details on available parameters see the
  -http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd";>struts-config_1_1.dtd
  -or the list below.
  -  
  -  
  -  
  -  
  -  bufferSize - The size (in bytes) of the input buffer
  -  used when processing file uploads.  [4096] (optional)
  -  
  -  
  -  className - Classname of configuration bean.
  -  [org.apache.struts.config.ControllerConfig] (optional)
  -  
  -  
  -  contentType - Default content type (and optional character
  -  encoding) to be set on each response.  May be overridden by the
  -  Action, JSP, or other resource to which the request is forwarded.
  -  [text/html] (optional)
  -  
  -  
  -  forwardPattern - Replacement pattern defining how the "path"
  -  attribute of a  element is mapped to a
  -  context-relative URL when it starts with a slash (and when the
  -  contextRelative property is false).
  -  This value may consist of any combination of the following:
  -  
  -  $M - Replaced by the module prefix of this module.
  -  $P - Replaced by the "path" attribute of the selected
  -   element.
  -  $$ - Causes a literal dollar sign to be rendered.
  -  $x - (Where "x" is any character not defined above)
  -  Silently swallowed, reserved for future use.
  -  
  -  If not specified, the default forwardPattern is consistent with the
  -  previous behavior of forwards.  [$M$P] (optional)
  -  
  -  
  -  inputForward - Set to true if you want the
  -  input attribute of  elements
  -  to be the name of a local or global ActionForward, which
  -  will then be used to calculate the ultimate URL.  Set to
  -  false to treat the input parameter of
  -   elements as a module-relative path to
  -  the resource to be used as the input form.  [false] (optional)
  -  
  -  
  -  locale - Set to true if you want a
  -  Locale object stored in the user's session if not already
  -  present.  [true] (optional)
  -  
  -  
  -  maxFileSize - The maximum size (in bytes) of a file to be accepted
  -  as a file upload.  Can be expressed as a number followed by a "K",
  -  "M", or "G", which are interpreted to mean kilobytes, megabytes, or
  -  gigabytes, respectively.  [250M] (optional)
  -  
  -  
  -  multipartClass - The fully qualified Java class name of the
  -  multipart request handler class to be used with this module.
  -  [org.apache.struts.upload.CommonsMultipartRequesthandler] (optional)
  -  

Re: [VOTE] Struts 1.1 Beta 3 Release Plan (revised)

2002-12-27 Thread Ted Husted
Each issue in a Release Plan is decided by Lazy Majority, so it's up for 
 someone to veto. (Release Plans are "line-item" documents.)

http://jakarta.apache.org/site/decisions.html

"Release Plan

"A release plan is used to keep all volunteers aware of when a release 
is desired, who will be the release manager, when the repository will be 
frozen to create a release, and other assorted information to keep 
volunteers from tripping over each other. Lazy majority decides each 
issue in a release plan. "

Personally, I'd like to try and lock this down so that next milestone 
can be a release candidate, but everything depends on what comes in 
"over the transom" once its released =:(

-Ted.

Eddie Bush wrote:
I don't really think we need a revote, but if others do you can count in 
my +1.  At this stage, I'm all for marking new bugs as LATER for the 
"next release" (whether that be a beta or final).  By all means, let's 
try to knock out the bugs we can between now and the time the beta is 
cut, but let's cut it none-the-less.

(What is the next milestone we're aiming for?  1.1-final?  1.1-beta-4?)

Peace

Martin Cooper wrote:

On Thu, 26 Dec 2002, Ted Husted wrote:


Ok, I'll update the Roadmap and the B3 plan with the appropriate
queries, and add a box next to the bugs we are swatting to indicate
their status. This will at least make the static list easier to maintain
=:0)


I just updated the site with your updated release plan. Given that the
plan has changed from what people voted on, do we need to ((re-)re-)vote
on the updated release plan?  I hope not, but I fear so.

FYI, we had 9 +1/+0 responses and no -1/-0 responses, so 9 committers
responding out of 14 currently listed.

--
Martin Cooper








--
To unsubscribe, e-mail:   
For additional commands, e-mail: 




RE: Switching Modules - isn't working for me...

2002-12-27 Thread Matt Raible
I tried switching to last night's build, but that appears to be even
worse - I can't even use the default module.  I get the following error
the first time (and all other times) I hit an action:

- Root Cause -
java.lang.AbstractMethodError
at
org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.j
ava:1096)
at
org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)

My log file never shows any modules getting initialized (save '').  The
last build I had, from 11-24, the default app worked, just the switching
didn't.  Are there any sample applications I can prove this works
against?

Thanks,

Matt

>  -Original Message-
> From: Matt Raible [mailto:[EMAIL PROTECTED]] 
> Sent: Friday, December 27, 2002 1:37 AM
> To:   '[EMAIL PROTECTED]'
> Subject:  Switching Modules - isn't working for me...
> 
> It's late, so it's possible my problem is something small and 
> I just need a second set of eyes on it.  I am trying to 
> configure my application have an "upload" module.  I'm 
> following the instructions at 
> http://jakarta.apache.org/struts/userGuide/configuration.html#
> module_config-switching.
> 
> In my , I have the following forward:
> 
> 
>  path="/upload/index.do" redirect="true" />
> 
> I have my ActionServlet configured as follows:
> 
> 
> config
> /WEB-INF/struts-config.xml
> 
> 
> config/upload
> /WEB-INF/struts-upload.xml
> 
> 
> And struts-upload.xml has the following action-mappings:
> 
> 
>  path="/index"
> type="org.apache.struts.actions.ForwardAction"
> parameter="upload"/>
> 
> 
> type="org.appfuse.webapp.actions.UploadAction"
>name="uploadForm"
>   scope="request"
>   input="upload">
> 
>
> 
> Where "upload" and "display" are tiles definitions.  When I 
> try to access this forward (either via link or direct URL), I get:
> 
> Tomcat 404: The requested resource (/appfuse/upload) is not available.
> 
> And in the log file:
> 
> INFO [Thread-4] 
> [org.apache.struts.util.PropertyMessageResources] 
> PropertyMessageResources.(127) | Initializing, c
> onfig='com.fgm.web.menu.displayer.DisplayerStrings', returnNull=true
> INFO [Thread-4] 
> [org.apache.struts.tiles.TilesRequestProcessor] 
> TilesRequestProcessor.initDefinitionsMapping(154) | Tile
> s definition factory found for request processor '/upload'.
> INFO [Thread-4] [org.apache.struts.action.RequestProcessor] 
> RequestProcessor.process(225) | Processing a 'GET' for path
> '/index'
> DEBUG [Thread-4] [org.apache.struts.action.RequestProcessor] 
> RequestProcessor.processActionCreate(305) |  Looking for Ac
> tion instance for class org.apache.struts.actions.ForwardAction
> DEBUG [Thread-4] [org.apache.struts.action.RequestProcessor] 
> RequestProcessor.processActionCreate(321) |   Creating new
> Action instance
> DEBUG [Thread-4] [org.apache.struts.action.RequestProcessor] 
> RequestProcessor.processForwardConfig(428) | processForward
> Config(ForwardConfig[name=null,path=upload,redirect=false,cont
extRelative=true])
> 
> 
> 
> Any ideas?
> 
> Thanks,
> 
> Matt
> 
>