Thanks Leon, about using the servlet context, I read that on a distributed application the share information of the servlet context is not entererly global right?:
*"...In the case of a web application marked "distributed" in its deployment descriptor, there will be one context instance for each virtual machine. In this situation, the context cannot be used as a location to share global information (because the information won't be truly global). Use an external resource like a database instead."* About the second solution that you gave to me, I do not understand, you said that for example in my BaseAction Class create a method to put the objects in the request? The problem is that in every request the application will go to the database to load the objects and then put them on the request! What I do not understand is how to put the objects in the request without have to go the database each time that a request is made and the method in the BaseAction is call. 2007/1/2, Leon Rosenberg <[EMAIL PROTECTED]>:
The easiest way is to initialize the data once in the init(ServletConfig) method of the servlet and put them into the application scope (servletcontext). The struts tags will be able to access the data directly, so you don't need to change a bit. Of course the data structures theirself must be threadsafe to access, which shouldn't be a problem if you are only reading them. Alternatively you can perform this in a static initializer in a action and put them in the request scope of each request (if you have a common code block all actions are passing through, like authorization) or into the application scope on first request (which would need a bit of synchronization with double checked locking) regards leon On 1/2/07, Daniel Chacón Sánchez <[EMAIL PROTECTED]> wrote: > Hi all, I'm using struts framework on my application, but I have a > perfomance question. > > When my application starts I load objects in session that may or may not > will be used (depends on what the user does), for example I load the health > centers, hospitals, countries, etc, that will be available for the users in > html:selects, I know that to had many objects in session is not good, in > fact each time the user click on one application option (menu) all the > objects in session are erased, except the ones that I load on the start of > the application. Is there a way (maybe a pattern) to load this objects in > the moment that are needed, and not load all at the start of the > application. This object are use on differents modules so I load them on the > start of the aplication and put them in sesion for not to go to the database > each time I need to load them on a html:select. > > any solution, idea? or that is the only way? > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]