Re: long struts-config.xml file
If they used new HashMap(89) instead of just new HashMap(), the lookup would not change for 2000 objects at all because the HashMap growth beyond the initial size is ((2 times initial size) plus 1) which with 89 as the starting point keeps the size of the HashMap with a prime number well over 2000 providing no difference in lookup at that size. On 6/18/05, Craig McClanahan <[EMAIL PROTECTED]> wrote: > On 6/18/05, John Henry Xu <[EMAIL PROTECTED]> wrote: > > Craig wrote: > > > > > > "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" > > > "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ > > > > > > > > > > > > ... > > > ]> > > > > > > > > > > > > &package-a; > > > &package-b; > > > ... > > > > > > > > > > > > where "package-a.xml", "package-b.xml" and so on contain the form > > > beans and actions for some logical subset of your overall application. > > > > Craig, thank you for this info. > > > > > > Craig, does this confirm with the dtd file? > > > > Validation against the DTD requires two things: > > * Using the DOCTYPE declaration (as shown above) in the outer configuration > file > > * Setting the servlet init parameter "validating" to "true" in > /WEB-INF/web.xml > for the Struts ActionServlet > > It doesn't matter whether you use XML entities or not. > > > Also, can you tell us the site link on Internet that uses > > hundreds actions? > > > > I'm afraid I don't have permission to do that. But let's think for a > moment about what the difference between a Struts app with two actions > and a Struts app with 2000 actions would be. There's certainly going > to be a longer startup time (lots more stuff to parse), and more > memory required for all the classes. But, at runtime while the app is > executing, the only difference this makes is how long it takes to look > up the particular Action definition in a HashMap keyed by action > paths. Even with 2000 entries, such a lookup is pretty fast (and CPU > time on the server tends not to be the bottleneck in most web > applications anyway). > > > It seems this approach the best in all the options we discussed. > > > > In fact, when I develop an knowlege site with forums in java. I first > > used struts, then I had some problems on configure file so I used > > another MVC approach. If I know I could do this way, I may stick with > > struts in this large project. > > > > If you had struggles with editing a large configuration file, I would > also suggest using one of the many tools available that provides a GUI > front end for this purpose. For example, a standalone tool that is > quite popular for editing configuration files is Struts Console: > > http://www.jamesholmes.com/struts/console/ > > > Jack H. Xu > > Technology columnist and author > > > > http://www.usanalyst.com > > > > http://www.getusjobs.com > > > > (Both sites are developed in java and on open source). > > > > Craig > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- "You can lead a horse to water but you cannot make it float on its back." ~Dakota Jack~ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Re: long struts-config.xml file
Thanks Laurie for pointing that out. To validate an XML file, dtd or xsd defined order. This is an XML standard. I think one may create a new DTD (or even better a xsd ) that can separate different configuration files, while compatible with older version struts dtds. - Original Message - From: "Laurie Harper" To: user@struts.apache.org Subject: Re: long struts-config.xml file Date: Sat, 18 Jun 2005 23:20:35 -0400 > > Craig McClanahan wrote: > > Validation against the DTD requires two things: > > > > * Using the DOCTYPE declaration (as shown above) in the outer > > configuration file > > > > * Setting the servlet init parameter "validating" to "true" in > > /WEB-INF/web.xml > > for the Struts ActionServlet > > > > It doesn't matter whether you use XML entities or not. > > One note of caution: validation also requires complying with the > document order specified by the DTD, which can constrain the way > you break the file out into external entities (they have to > reassemble in valid document order). > > I'm not familiar enough with the DTD to know if this'll be a factor > for a struts-config.xml, or if Struts / Digester is sensitive to > document order (if you turn off validation). > > L. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm
Re: long struts-config.xml file
Good catch Laurie ... through at least today's version of the 1.3 DTD, it is indeed sensitive to the order of the elements. For example, all the elements need to be before the element that contains all the elements. Therefore, if you're going to use the XML entities approach, you'll need to create multiple entities for each logical segment ... one for the form beans, one for the actions, and so on. This was a lesson learned on the standards front ... in Servlet 2.4 and JavaServer Faces 1.0, the element order was defined to *not* be important ... that's something we could consider in Struts 1.3, because relaxing the restriction would not break any previously valid configuration file. Craig On 6/18/05, Laurie Harper <[EMAIL PROTECTED]> wrote: > Craig McClanahan wrote: > > Validation against the DTD requires two things: > > > > * Using the DOCTYPE declaration (as shown above) in the outer configuration > > file > > > > * Setting the servlet init parameter "validating" to "true" in > > /WEB-INF/web.xml > > for the Struts ActionServlet > > > > It doesn't matter whether you use XML entities or not. > > One note of caution: validation also requires complying with the > document order specified by the DTD, which can constrain the way you > break the file out into external entities (they have to reassemble in > valid document order). > > I'm not familiar enough with the DTD to know if this'll be a factor for > a struts-config.xml, or if Struts / Digester is sensitive to document > order (if you turn off validation). > > L. > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Craig McClanahan wrote: Validation against the DTD requires two things: * Using the DOCTYPE declaration (as shown above) in the outer configuration file * Setting the servlet init parameter "validating" to "true" in /WEB-INF/web.xml for the Struts ActionServlet It doesn't matter whether you use XML entities or not. One note of caution: validation also requires complying with the document order specified by the DTD, which can constrain the way you break the file out into external entities (they have to reassemble in valid document order). I'm not familiar enough with the DTD to know if this'll be a factor for a struts-config.xml, or if Struts / Digester is sensitive to document order (if you turn off validation). L. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Hi Frank, If you look at the link I provided you can see we had a pretty large project. I was working with a team working in multiple places in world. Maintaining and synchronizing struts-config.xml file did give us some bad time at beginning. So we choose the spirit of struts, MVC, but avoided this problem. We are working on an even larger project, so I had this question. >From beginning, I know performance was not a problem (see my previous posts). Maintenance was. For programming example, we like large C program becomes smaller pieces so application can be more managable. When struts becomes more mature and solve larger and more complex problems, we certainly may find some problems. That is the reason I propose this question. (I had some bad experience using a struts-based large web system. It was easy to see if a system was struts based if its URL showed something.do?) Hi Craig, Thank you for the link of Struts Console program. It looks better than the XML editor I used for struts before. Struts is a nice system. - Original Message - From: "Frank W. Zammetti" To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file Date: Sat, 18 Jun 2005 18:46:07 -0400 > > John, what kind of problems did you encounter? Cataloging them > here will likely elicit solutions, and this may help others in the > future who encounter the same problems. > > Frank > > John Henry Xu wrote: > > Craig, I had XML editors to do that. I will try the Struts Console you > > mentioned. > > > > - Original Message - > > From: "Craig McClanahan" > > To: "Struts Users Mailing List" > > Subject: Re: long struts-config.xml file > > Date: Sat, 18 Jun 2005 12:13:56 -0700 > > > > > >> On 6/18/05, John Henry Xu wrote: > >> > >>> Craig wrote: > >>> > >>> > >>>>> "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" > >>>> > >>>> "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ > >>>> > >>>> > >>>> > >>>> ... > >>>> ]> > >>>> > >>>> > >>>> > >>>> &package-a; > >>>> &package-b; > >>>> ... > >>>> > >>>> > >>>> > >>>> where "package-a.xml", "package-b.xml" and so on contain the form > >>>> beans and actions for some logical subset of your overall > > > > application. > > > >>> Craig, thank you for this info. > >>> > >>> > >>> Craig, does this confirm with the dtd file? > >>> > >> > >> Validation against the DTD requires two things: > >> > >> * Using the DOCTYPE declaration (as shown above) in the outer > >> configuration file > >> > >> * Setting the servlet init parameter "validating" to "true" in > >> /WEB-INF/web.xml > >> for the Struts ActionServlet > >> > >> It doesn't matter whether you use XML entities or not. > >> > >> > >>> Also, can you tell us the site link on Internet that uses > >>> hundreds actions? > >>> > >> > >> I'm afraid I don't have permission to do that. But let's think for a > >> moment about what the difference between a Struts app with two actions > >> and a Struts app with 2000 actions would be. There's certainly going > >> to be a longer startup time (lots more stuff to parse), and more > >> memory required for all the classes. But, at runtime while the app is > >> executing, the only difference this makes is how long it takes to look > >> up the particular Action definition in a HashMap keyed by action > >> paths. Even with 2000 entries, such a lookup is pretty fast (and CPU > >> time on the server tends not to be the bottleneck in most web > >> applications anyway). > >> > >> > >>> It seems this approach the best in all the options we discussed. > >>> > >>> In fact, when I develop an knowlege site with forums in java. I first > >>> used struts, then I had some problems on configure file so I used > >>> another MVC approach. If I know I could do this way, I may stick with > >>> struts in this large
Re: long struts-config.xml file
John, what kind of problems did you encounter? Cataloging them here will likely elicit solutions, and this may help others in the future who encounter the same problems. Frank John Henry Xu wrote: Craig, I had XML editors to do that. I will try the Struts Console you mentioned. - Original Message - From: "Craig McClanahan" To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file Date: Sat, 18 Jun 2005 12:13:56 -0700 On 6/18/05, John Henry Xu wrote: Craig wrote: "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ ... ]> &package-a; &package-b; ... where "package-a.xml", "package-b.xml" and so on contain the form beans and actions for some logical subset of your overall application. Craig, thank you for this info. Craig, does this confirm with the dtd file? Validation against the DTD requires two things: * Using the DOCTYPE declaration (as shown above) in the outer configuration file * Setting the servlet init parameter "validating" to "true" in /WEB-INF/web.xml for the Struts ActionServlet It doesn't matter whether you use XML entities or not. Also, can you tell us the site link on Internet that uses hundreds actions? I'm afraid I don't have permission to do that. But let's think for a moment about what the difference between a Struts app with two actions and a Struts app with 2000 actions would be. There's certainly going to be a longer startup time (lots more stuff to parse), and more memory required for all the classes. But, at runtime while the app is executing, the only difference this makes is how long it takes to look up the particular Action definition in a HashMap keyed by action paths. Even with 2000 entries, such a lookup is pretty fast (and CPU time on the server tends not to be the bottleneck in most web applications anyway). It seems this approach the best in all the options we discussed. In fact, when I develop an knowlege site with forums in java. I first used struts, then I had some problems on configure file so I used another MVC approach. If I know I could do this way, I may stick with struts in this large project. If you had struggles with editing a large configuration file, I would also suggest using one of the many tools available that provides a GUI front end for this purpose. For example, a standalone tool that is quite popular for editing configuration files is Struts Console: http://www.jamesholmes.com/struts/console/ Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com (Both sites are developed in java and on open source). Craig - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Craig, I had XML editors to do that. I will try the Struts Console you mentioned. - Original Message - From: "Craig McClanahan" To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file Date: Sat, 18 Jun 2005 12:13:56 -0700 > > On 6/18/05, John Henry Xu wrote: > > Craig wrote: > > > > > > "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" > > > "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ > > > > > > > > > > > > ... > > > ]> > > > > > > > > > > > > &package-a; > > > &package-b; > > > ... > > > > > > > > > > > > where "package-a.xml", "package-b.xml" and so on contain the form > > > beans and actions for some logical subset of your overall application. > > > > Craig, thank you for this info. > > > > > > Craig, does this confirm with the dtd file? > > > > Validation against the DTD requires two things: > > * Using the DOCTYPE declaration (as shown above) in the outer > configuration file > > * Setting the servlet init parameter "validating" to "true" in > /WEB-INF/web.xml > for the Struts ActionServlet > > It doesn't matter whether you use XML entities or not. > > > Also, can you tell us the site link on Internet that uses > > hundreds actions? > > > > I'm afraid I don't have permission to do that. But let's think for a > moment about what the difference between a Struts app with two actions > and a Struts app with 2000 actions would be. There's certainly going > to be a longer startup time (lots more stuff to parse), and more > memory required for all the classes. But, at runtime while the app is > executing, the only difference this makes is how long it takes to look > up the particular Action definition in a HashMap keyed by action > paths. Even with 2000 entries, such a lookup is pretty fast (and CPU > time on the server tends not to be the bottleneck in most web > applications anyway). > > > It seems this approach the best in all the options we discussed. > > > > In fact, when I develop an knowlege site with forums in java. I first > > used struts, then I had some problems on configure file so I used > > another MVC approach. If I know I could do this way, I may stick with > > struts in this large project. > > > > If you had struggles with editing a large configuration file, I would > also suggest using one of the many tools available that provides a GUI > front end for this purpose. For example, a standalone tool that is > quite popular for editing configuration files is Struts Console: > > http://www.jamesholmes.com/struts/console/ > > > Jack H. Xu > > Technology columnist and author > > > > http://www.usanalyst.com > > > > http://www.getusjobs.com > > > > (Both sites are developed in java and on open source). > > > > Craig > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm
Re: long struts-config.xml file
On 6/18/05, John Henry Xu <[EMAIL PROTECTED]> wrote: > Craig wrote: > > > > "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" > > "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ > > > > > > > > ... > > ]> > > > > > > > > &package-a; > > &package-b; > > ... > > > > > > > > where "package-a.xml", "package-b.xml" and so on contain the form > > beans and actions for some logical subset of your overall application. > > Craig, thank you for this info. > > > Craig, does this confirm with the dtd file? > Validation against the DTD requires two things: * Using the DOCTYPE declaration (as shown above) in the outer configuration file * Setting the servlet init parameter "validating" to "true" in /WEB-INF/web.xml for the Struts ActionServlet It doesn't matter whether you use XML entities or not. > Also, can you tell us the site link on Internet that uses > hundreds actions? > I'm afraid I don't have permission to do that. But let's think for a moment about what the difference between a Struts app with two actions and a Struts app with 2000 actions would be. There's certainly going to be a longer startup time (lots more stuff to parse), and more memory required for all the classes. But, at runtime while the app is executing, the only difference this makes is how long it takes to look up the particular Action definition in a HashMap keyed by action paths. Even with 2000 entries, such a lookup is pretty fast (and CPU time on the server tends not to be the bottleneck in most web applications anyway). > It seems this approach the best in all the options we discussed. > > In fact, when I develop an knowlege site with forums in java. I first > used struts, then I had some problems on configure file so I used > another MVC approach. If I know I could do this way, I may stick with > struts in this large project. > If you had struggles with editing a large configuration file, I would also suggest using one of the many tools available that provides a GUI front end for this purpose. For example, a standalone tool that is quite popular for editing configuration files is Struts Console: http://www.jamesholmes.com/struts/console/ > Jack H. Xu > Technology columnist and author > > http://www.usanalyst.com > > http://www.getusjobs.com > > (Both sites are developed in java and on open source). > Craig - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Craig wrote: > > "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" > "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ > > > > ... > ]> > > > > &package-a; > &package-b; > ... > > > > where "package-a.xml", "package-b.xml" and so on contain the form > beans and actions for some logical subset of your overall application. Craig, thank you for this info. Craig, does this confirm with the dtd file? Also, can you tell us the site link on Internet that uses hundreds actions? It seems this approach the best in all the options we discussed. In fact, when I develop an knowlege site with forums in java. I first used struts, then I had some problems on configure file so I used another MVC approach. If I know I could do this way, I may stick with struts in this large project. Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com (Both sites are developed in java and on open source). ----- Original Message - From: "Craig McClanahan" To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file Date: Fri, 17 Jun 2005 22:48:44 -0700 > > On 6/17/05, Frank W. Zammetti wrote: > > Good info Craig... So do I understand correctly then that you can > > specify multiple config files for an app regardless of module > > usage (well, one with just the "default" module really)? > > Yep. > > > I thought I saw someone mention a CSV list in the ActionServlet > > init param, is that all there is to it?... > > Yep :-). > > > If so, I don't think I was aware of that, definitely not fully > anyway, and thank you for pointing it out :) > > You're welcome. > > Of course, there's also an XML level solution to this problem, > something that works even if the program that is reading the document > doesn't support multiple configuration files -- XML entities. > Consider the following sort of struts-config.xml file: > > > "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" > "http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ > > > > ... > ]> > > > > &package-a; > &package-b; > ... > > > > where "package-a.xml", "package-b.xml" and so on contain the form > beans and actions for some logical subset of your overall application. > In this scenario, the XML parser glues everything together into one > document (from the point of view of the application doing the > parsing), while still allowing each subset's own configuration file to > be managed by the team that is responsible for the code and JSP pages > for that subset. > > This strategy works with any sort of environment that consumes XML > documents, because it's the parser that is doing the dirty work for > you. > > > > > Frank > > > > Craig > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm
Re: long struts-config.xml file
Craig McClanahan wrote: Of course, there's also an XML level solution to this problem, something that works even if the program that is reading the document doesn't support multiple configuration files -- XML entities. Now *THAT* I was totally unaware of... very cool! I love it... just woke up an hour ago and already I've learned my minimum one new thing for the day :) I can slack the rest of the day :) -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
On 6/17/05, Frank W. Zammetti <[EMAIL PROTECTED]> wrote: > Good info Craig... So do I understand correctly then that you can specify > multiple config files for an app regardless of module usage (well, one with > just the "default" module really)? Yep. > I thought I saw someone mention a CSV list in the ActionServlet init param, > is that all there is to it?... Yep :-). >If so, I don't think I was aware of that, definitely not fully anyway, and thank you for pointing it out :) You're welcome. Of course, there's also an XML level solution to this problem, something that works even if the program that is reading the document doesn't support multiple configuration files -- XML entities. Consider the following sort of struts-config.xml file: http://struts.apache.org/dtds/struts-config_1_2.dtd"; [ ... ]> &package-a; &package-b; ... where "package-a.xml", "package-b.xml" and so on contain the form beans and actions for some logical subset of your overall application. In this scenario, the XML parser glues everything together into one document (from the point of view of the application doing the parsing), while still allowing each subset's own configuration file to be managed by the team that is responsible for the code and JSP pages for that subset. This strategy works with any sort of environment that consumes XML documents, because it's the parser that is doing the dirty work for you. > > Frank > Craig - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Good info Craig... So do I understand correctly then that you can specify multiple config files for an app regardless of module usage (well, one with just the "default" module really)? I thought I saw someone mention a CSV list in the ActionServlet init param, is that all there is to it?... If so, I don't think I was aware of that, definitely not fully anyway, and thank you for pointing it out :) Frank -Original Message- From: "Craig McClanahan"<[EMAIL PROTECTED]> Sent: 6/18/05 1:05:17 AM To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file On 6/17/05, Frank W. Zammetti <[EMAIL PROTECTED]> wrote: > The longest I have is 173 action mappings. I haven't noticed any > performance problems with it. Struts basically loads it once at startup > and from then on it's in-memory, so the only potential problem I could > imagine is lookup speed, but that doesn't seem to be an issue. > In particular, all the configuration data for a single Struts module is loaded into a single set of HashMaps, no matter how many separate configuration files are used for that module. Map sizes in the hundreds are duck soup on modern JVMs. > Breaking it up makes sense as others have said from an organizational > standpoint. But, if your application doesn't make sense in multiple > modules, and some don't, then it's probably not a big problem... be sure > to have lots of comments in the config file and group things as logically > as possible, much like writing any code!, and a few hundred shouldn't be > an unmanageable number. > The largest Struts based configuration I've ever personally seen had many hundreds of actions, and a similar number of form beans and so on. They organized things with a separate configuration file for each logical segment of the applicaton (independent of whether it was going to be a separate Struts module or not). This wasn't done for performance reasons; it was much more related to code management (the config files for a particular logical segment should belong to the developers working on that segment, with the overall application architects exercising control over naming conventions to avoid conflicts). > -- > Frank W. Zammetti > Founder and Chief Software Architect > Omnytex Technologies > http://www.omnytex.com > Craig - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] [Message truncated. Tap Edit->Mark for Download to get remaining portion.] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Good info Craig... So do I understand correctly then that you can specify multiple config files for an app regardless of module usage (well, one with just the "default" module really)? I thought I saw someone mention a CSV list in the ActionServlet init param, is that all there is to it?... If so, I don't think I was aware of that, definitely not fully anyway, and thank you for pointing it out :) Frank -Original Message- From: "Craig McClanahan"<[EMAIL PROTECTED]> Sent: 6/18/05 1:05:17 AM To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file On 6/17/05, Frank W. Zammetti <[EMAIL PROTECTED]> wrote: > The longest I have is 173 action mappings. I haven't noticed any > performance problems with it. Struts basically loads it once at startup > and from then on it's in-memory, so the only potential problem I could > imagine is lookup speed, but that doesn't seem to be an issue. > In particular, all the configuration data for a single Struts module is loaded into a single set of HashMaps, no matter how many separate configuration files are used for that module. Map sizes in the hundreds are duck soup on modern JVMs. > Breaking it up makes sense as others have said from an organizational > standpoint. But, if your application doesn't make sense in multiple > modules, and some don't, then it's probably not a big problem... be sure > to have lots of comments in the config file and group things as logically > as possible, much like writing any code!, and a few hundred shouldn't be > an unmanageable number. > The largest Struts based configuration I've ever personally seen had many hundreds of actions, and a similar number of form beans and so on. They organized things with a separate configuration file for each logical segment of the applicaton (independent of whether it was going to be a separate Struts module or not). This wasn't done for performance reasons; it was much more related to code management (the config files for a particular logical segment should belong to the developers working on that segment, with the overall application architects exercising control over naming conventions to avoid conflicts). > -- > Frank W. Zammetti > Founder and Chief Software Architect > Omnytex Technologies > http://www.omnytex.com > Craig - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] [Message truncated. Tap Edit->Mark for Download to get remaining portion.] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
On 6/17/05, Frank W. Zammetti <[EMAIL PROTECTED]> wrote: > The longest I have is 173 action mappings. I haven't noticed any > performance problems with it. Struts basically loads it once at startup > and from then on it's in-memory, so the only potential problem I could > imagine is lookup speed, but that doesn't seem to be an issue. > In particular, all the configuration data for a single Struts module is loaded into a single set of HashMaps, no matter how many separate configuration files are used for that module. Map sizes in the hundreds are duck soup on modern JVMs. > Breaking it up makes sense as others have said from an organizational > standpoint. But, if your application doesn't make sense in multiple > modules, and some don't, then it's probably not a big problem... be sure > to have lots of comments in the config file and group things as logically > as possible, much like writing any code!, and a few hundred shouldn't be > an unmanageable number. > The largest Struts based configuration I've ever personally seen had many hundreds of actions, and a similar number of form beans and so on. They organized things with a separate configuration file for each logical segment of the applicaton (independent of whether it was going to be a separate Struts module or not). This wasn't done for performance reasons; it was much more related to code management (the config files for a particular logical segment should belong to the developers working on that segment, with the overall application architects exercising control over naming conventions to avoid conflicts). > -- > Frank W. Zammetti > Founder and Chief Software Architect > Omnytex Technologies > http://www.omnytex.com > Craig - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
The longest I have is 173 action mappings. I haven't noticed any performance problems with it. Struts basically loads it once at startup and from then on it's in-memory, so the only potential problem I could imagine is lookup speed, but that doesn't seem to be an issue. Breaking it up makes sense as others have said from an organizational standpoint. But, if your application doesn't make sense in multiple modules, and some don't, then it's probably not a big problem... be sure to have lots of comments in the config file and group things as logically as possible, much like writing any code!, and a few hundred shouldn't be an unmanageable number. -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com On Fri, June 17, 2005 10:25 am, John Henry Xu said: > Yuniar and Nitesh, Thanks for replies. > > There are two possibilities struts could do with struts-config.xml. > > 1. load this file from server start up. save it in memory. or 2. read > when it use it. > > The second possibility would have performance issue. So I assume struts > use first possibility. > > The problem was maintenance. If a true large application (may have 500+ > or even 1000+), the file become so complicated and easy to be messed up > if one need add or change configurations. > > Maybe then have to separate by groups under webapps. Even so, many small > groups are not convenient. So I thought someone may had this problem > before and hopefully someone already deal with it. > > It is also strange that I did not find blogs or forums written by struts > (but lots of phps). I think java is more powerful and can add a lot of > more functionalities easier than phps. > > Jack H. Xu > Technology columnist and author > > http://www.usanalyst.com > > http://www.getusjobs.com > > > - Original Message - > From: Nitesh > To: "Struts Users Mailing List" > Subject: Re: long struts-config.xml file > Date: Fri, 17 Jun 2005 13:10:16 +0530 > > > > > There may not be a performance issue... > > probably could have some effect in startup (not sure if there are > > any though!) . > > > > Mainly this would be done to make your config files more 'readable' > > Also it makes sense to group the related ones together depending on > > functionality/module or whatever parameters that could > > separate/group actions/jsps/etc together. > > > > Nitesh > > > > - Original Message - From: "Yuniar Setiawan" > > > > To: "Struts Users Mailing List" > > Sent: Friday, June 17, 2005 11:55 AM > > Subject: Re: long struts-config.xml file > > > > > > Is there any performance issue when you have very long > struts-config.xml? > > I'm having about 200+ action either but so far everything is > running well, > > or perhaps not yet? > > > > On 6/17/05, Nitesh wrote: > > > > > > You could also think about using multiple struts-config files... > say one > > > for > > > each module and use them (in the web.xml for action param-value > give the > > > comma separated config file list.) > > > > > > Nitesh > > > > > > - Original Message - > > > From: "John Henry Xu" > > > To: > > > Sent: Friday, June 17, 2005 9:34 AM > > > Subject: long struts-config.xml file > > > > > > > > > Hi all, > > > > > > In a project I am working on, we have a very lengthy > struts-config.xml > > > file to handle complex actions jsps (200+) take. > > > > > > Does anyone have this situation (very complex struts-config.xml)? > Please > > > tell me about your experience. > > > > > > Also, anyone see a blog or forum written by struts technology? If > you > > > know, can you tell me the link? > > > > > > Thanks. > > > > > > Jack H. Xu > > > Technology columnist and > > > authorhttp://www.usanalyst.comhttp://www.getusjobs.com > > > > > > -- > > > ___ > > > Sign-up for Ads Free at Mail.com > > > http://promo.mail.com/adsfreejump.htm > > > > > > > > > > > > > - > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > Jack H. Xu > Technology columnist and author > > http://www.usanalyst.com > > http://www.getusjobs.com > > -- > ___ > Sign-up for Ads Free at Mail.com > http://promo.mail.com/adsfreejump.htm > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Yuniar and Nitesh, Thanks for replies. There are two possibilities struts could do with struts-config.xml. 1. load this file from server start up. save it in memory. or 2. read when it use it. The second possibility would have performance issue. So I assume struts use first possibility. The problem was maintenance. If a true large application (may have 500+ or even 1000+), the file become so complicated and easy to be messed up if one need add or change configurations. Maybe then have to separate by groups under webapps. Even so, many small groups are not convenient. So I thought someone may had this problem before and hopefully someone already deal with it. It is also strange that I did not find blogs or forums written by struts (but lots of phps). I think java is more powerful and can add a lot of more functionalities easier than phps. Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com - Original Message - From: Nitesh To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file Date: Fri, 17 Jun 2005 13:10:16 +0530 > > There may not be a performance issue... > probably could have some effect in startup (not sure if there are > any though!) . > > Mainly this would be done to make your config files more 'readable' > Also it makes sense to group the related ones together depending on > functionality/module or whatever parameters that could > separate/group actions/jsps/etc together. > > Nitesh > > - Original Message - From: "Yuniar Setiawan" > > To: "Struts Users Mailing List" > Sent: Friday, June 17, 2005 11:55 AM > Subject: Re: long struts-config.xml file > > > Is there any performance issue when you have very long struts-config.xml? > I'm having about 200+ action either but so far everything is running well, > or perhaps not yet? > > On 6/17/05, Nitesh wrote: > > > > You could also think about using multiple struts-config files... say one > > for > > each module and use them (in the web.xml for action param-value give the > > comma separated config file list.) > > > > Nitesh > > > > - Original Message - > > From: "John Henry Xu" > > To: > > Sent: Friday, June 17, 2005 9:34 AM > > Subject: long struts-config.xml file > > > > > > Hi all, > > > > In a project I am working on, we have a very lengthy struts-config.xml > > file to handle complex actions jsps (200+) take. > > > > Does anyone have this situation (very complex struts-config.xml)? Please > > tell me about your experience. > > > > Also, anyone see a blog or forum written by struts technology? If you > > know, can you tell me the link? > > > > Thanks. > > > > Jack H. Xu > > Technology columnist and > > authorhttp://www.usanalyst.comhttp://www.getusjobs.com > > > > -- > > ___ > > Sign-up for Ads Free at Mail.com > > http://promo.mail.com/adsfreejump.htm > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm
Re: long struts-config.xml file
Yuniar and Nitesh, Thank you for your thinking about the problem. Do you have web link of web sites that has used struts for 200+ jsp pages? Thanks. - Original Message - From: Nitesh To: "Struts Users Mailing List" Subject: Re: long struts-config.xml file Date: Fri, 17 Jun 2005 13:10:16 +0530 > > There may not be a performance issue... > probably could have some effect in startup (not sure if there are > any though!) . > > Mainly this would be done to make your config files more 'readable' > Also it makes sense to group the related ones together depending on > functionality/module or whatever parameters that could > separate/group actions/jsps/etc together. > > Nitesh > > - Original Message - From: "Yuniar Setiawan" > > To: "Struts Users Mailing List" > Sent: Friday, June 17, 2005 11:55 AM > Subject: Re: long struts-config.xml file > > > Is there any performance issue when you have very long struts-config.xml? > I'm having about 200+ action either but so far everything is running well, > or perhaps not yet? > > On 6/17/05, Nitesh wrote: > > > > You could also think about using multiple struts-config files... say one > > for > > each module and use them (in the web.xml for action param-value give the > > comma separated config file list.) > > > > Nitesh > > > > - Original Message - > > From: "John Henry Xu" > > To: > > Sent: Friday, June 17, 2005 9:34 AM > > Subject: long struts-config.xml file > > > > > > Hi all, > > > > In a project I am working on, we have a very lengthy struts-config.xml > > file to handle complex actions jsps (200+) take. > > > > Does anyone have this situation (very complex struts-config.xml)? Please > > tell me about your experience. > > > > Also, anyone see a blog or forum written by struts technology? If you > > know, can you tell me the link? > > > > Thanks. > > > > Jack H. Xu > > Technology columnist and > > authorhttp://www.usanalyst.comhttp://www.getusjobs.com > > > > -- > > ___ > > Sign-up for Ads Free at Mail.com > > http://promo.mail.com/adsfreejump.htm > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] Jack H. Xu Technology columnist and author http://www.usanalyst.com http://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm
Re: long struts-config.xml file
There may not be a performance issue... probably could have some effect in startup (not sure if there are any though!) . Mainly this would be done to make your config files more 'readable' Also it makes sense to group the related ones together depending on functionality/module or whatever parameters that could separate/group actions/jsps/etc together. Nitesh - Original Message - From: "Yuniar Setiawan" <[EMAIL PROTECTED]> To: "Struts Users Mailing List" Sent: Friday, June 17, 2005 11:55 AM Subject: Re: long struts-config.xml file Is there any performance issue when you have very long struts-config.xml? I'm having about 200+ action either but so far everything is running well, or perhaps not yet? On 6/17/05, Nitesh <[EMAIL PROTECTED]> wrote: You could also think about using multiple struts-config files... say one for each module and use them (in the web.xml for action param-value give the comma separated config file list.) Nitesh - Original Message - From: "John Henry Xu" <[EMAIL PROTECTED]> To: Sent: Friday, June 17, 2005 9:34 AM Subject: long struts-config.xml file Hi all, In a project I am working on, we have a very lengthy struts-config.xml file to handle complex actions jsps (200+) take. Does anyone have this situation (very complex struts-config.xml)? Please tell me about your experience. Also, anyone see a blog or forum written by struts technology? If you know, can you tell me the link? Thanks. Jack H. Xu Technology columnist and authorhttp://www.usanalyst.comhttp://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com <http://Mail.com> http://promo.mail.com/adsfreejump.htm - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Is there any performance issue when you have very long struts-config.xml? I'm having about 200+ action either but so far everything is running well, or perhaps not yet? On 6/17/05, Nitesh <[EMAIL PROTECTED]> wrote: > > You could also think about using multiple struts-config files... say one > for > each module and use them (in the web.xml for action param-value give the > comma separated config file list.) > > Nitesh > > - Original Message - > From: "John Henry Xu" <[EMAIL PROTECTED]> > To: > Sent: Friday, June 17, 2005 9:34 AM > Subject: long struts-config.xml file > > > Hi all, > > In a project I am working on, we have a very lengthy struts-config.xml > file to handle complex actions jsps (200+) take. > > Does anyone have this situation (very complex struts-config.xml)? Please > tell me about your experience. > > Also, anyone see a blog or forum written by struts technology? If you > know, can you tell me the link? > > Thanks. > > Jack H. Xu > Technology columnist and > authorhttp://www.usanalyst.comhttp://www.getusjobs.com > > -- > ___ > Sign-up for Ads Free at Mail.com <http://Mail.com> > http://promo.mail.com/adsfreejump.htm > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
Re: long struts-config.xml file
You could also think about using multiple struts-config files... say one for each module and use them (in the web.xml for action param-value give the comma separated config file list.) Nitesh - Original Message - From: "John Henry Xu" <[EMAIL PROTECTED]> To: Sent: Friday, June 17, 2005 9:34 AM Subject: long struts-config.xml file Hi all, In a project I am working on, we have a very lengthy struts-config.xml file to handle complex actions jsps (200+) take. Does anyone have this situation (very complex struts-config.xml)? Please tell me about your experience. Also, anyone see a blog or forum written by struts technology? If you know, can you tell me the link? Thanks. Jack H. Xu Technology columnist and authorhttp://www.usanalyst.comhttp://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: long struts-config.xml file
Hi Jack, You can split the struts-config module wise so that it is easy to handle. If you are having multiple struts config you should mention that as comma separated values in you web.xml. Eg: /WEB-INF/struts-config/common-config.xml,/WEB-INF/struts-config/A.xml, /WEB-INF/struts-config/B.xml etc. Hope this helps you Regards, Venkat -Original Message- From: Yen [mailto:[EMAIL PROTECTED] Sent: Friday, June 17, 2005 11:03 AM To: Struts Users Mailing List Subject: Re: long struts-config.xml file Is that possible, seperate the actions into modules and use the modules struts-config? - Original Message - From: "John Henry Xu" <[EMAIL PROTECTED]> To: Sent: Friday, June 17, 2005 12:04 PM Subject: long struts-config.xml file Hi all, In a project I am working on, we have a very lengthy struts-config.xml file to handle complex actions jsps (200+) take. Does anyone have this situation (very complex struts-config.xml)? Please tell me about your experience. Also, anyone see a blog or forum written by struts technology? If you know, can you tell me the link? Thanks. Jack H. Xu Technology columnist and authorhttp://www.usanalyst.comhttp://www.getusjobs.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] CAUTION - Disclaimer * This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely for the use of the addressee(s). If you are not the intended recipient, please notify the sender by e-mail and delete the original message. Further, you are not to copy, disclose, or distribute this e-mail or its contents to any other person and any such actions are unlawful. This e-mail may contain viruses. Infosys has taken every reasonable precaution to minimize this risk, but is not liable for any damage you may sustain as a result of any virus in this e-mail. You should carry out your own virus checks before opening the e-mail or attachment. Infosys reserves the right to monitor and review the content of all messages sent to or from this e-mail address. Messages sent to or from this e-mail address may be stored on the Infosys e-mail system. ***INFOSYS End of Disclaimer INFOSYS*** - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
Is that possible, seperate the actions into modules and use the modules struts-config? - Original Message - From: "John Henry Xu" <[EMAIL PROTECTED]> To: Sent: Friday, June 17, 2005 12:04 PM Subject: long struts-config.xml file Hi all, In a project I am working on, we have a very lengthy struts-config.xml file to handle complex actions jsps (200+) take. Does anyone have this situation (very complex struts-config.xml)? Please tell me about your experience. Also, anyone see a blog or forum written by struts technology? If you know, can you tell me the link? Thanks. Jack H. Xu Technology columnist and authorhttp://www.usanalyst.comhttp://www.getusjobs.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: long struts-config.xml file
depends on what version of struts u're working on. (i have never worked with 200 or so actions). :) 1) i reduced the number of actions using wildcards in action mapping, and a couple of hidden parameters that i pass to actions. kind of genericised the actions. 2) use "extends" where possible, mostly Actions and Forms, _especially_ Forms. 3) using extensions of dynaforms for my base forms (reduce dumb form beans. whats the name for these info containers? i forgot). bloats struts-config but reduces code to write. 4) while this may/will not :) reduce the size of struts-config, i've found this to be invaluable with large struts-configs. with struts 1.3 (in development), u might want to check out the new "key="key" value="value" /> - ability to set arbitrary properties. assists in genericising (eg: do something/somethingextra/nothing/differentthing in the called action base on some keyed property value) ... solves a lot of my pains :) riyaz John Henry Xu wrote: Hi all, In a project I am working on, we have a very lengthy struts-config.xml file to handle complex actions jsps (200+) take. Does anyone have this situation (very complex struts-config.xml)? Please tell me about your experience. Also, anyone see a blog or forum written by struts technology? If you know, can you tell me the link? Thanks. Jack H. Xu Technology columnist and authorhttp://www.usanalyst.comhttp://www.getusjobs.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
long struts-config.xml file
Hi all, In a project I am working on, we have a very lengthy struts-config.xml file to handle complex actions jsps (200+) take. Does anyone have this situation (very complex struts-config.xml)? Please tell me about your experience. Also, anyone see a blog or forum written by struts technology? If you know, can you tell me the link? Thanks. Jack H. Xu Technology columnist and authorhttp://www.usanalyst.comhttp://www.getusjobs.com -- ___ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm