Basically, each JSP == 1 class. Both are executing the same class
provided they are both in the same JVM.

   Generally, a static method should keep no state, so it should make
no difference if both JSP threads are calling the same method at the
same time.  The example uses variable that are stored on the stack, so
this is safe since each thread has it's own call stack.  If you are
keeping state, you should create an instance of the class and possibly
store it in the session.

Craig Linton wrote:

Let's say we have a Class Util with a static method meth such as:



Class Util

{

public static String meth (String s)

{

   StringBuffer sb = new StringBuffer();



   sb.append (s);

   sb.append (s);

   return sb.toString();

}

}



Let's say I have two JSPs from completely different context roots, but
running on the same system. One calls <% Util.meth ("aa"); %>, the other
calls <% Util.meth ("bb"); %>  Of course with my luck, they get called by
two different users (different sessions too right?) at as close to exactly
the same time.  So, is it possible one invocation could get interrupted by
another?  How can it not without it being synchronized?



Is there only one "copy" of Util being used by multiple JSPs?  If so, does
the local variable sb have the same address for both invocations?  If yes,
then I assume I could get invocation 1 interrupted with sb == to say "aa",
then invocation 2 could start, repoint sb to a new StringBuffer, execute up
to the return, then invocation 1 resumes with sb now == to "bbbb";
invocation1 finishes up the 2nd append and returns with "bbbbaa."



Is this scenario possible? I'm having difficulty with understanding the
system interaction of JSPs and beans with static methods.  That is, unless
the above is true, in which case I guess I'm not having difficulty
understanding.  Obviously, judicious use of synchronization could completely
avert this situation if it is indeed true, but I am just wondering if such
is needed.



Note that the above silly example is just for explanation purposes.



Thanks much.

===========================================================================
To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff JSP-INTEREST".
For digest: mailto [EMAIL PROTECTED] with body: "set JSP-INTEREST DIGEST".

Some relevant archives, FAQs and Forums on JSPs can be found at:

http://java.sun.com/products/jsp
http://archives.java.sun.com/jsp-interest.html
http://forums.java.sun.com
http://www.jspinsider.com


===========================================================================
To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff JSP-INTEREST".
For digest: mailto [EMAIL PROTECTED] with body: "set JSP-INTEREST DIGEST".

Some relevant archives, FAQs and Forums on JSPs can be found at:

http://java.sun.com/products/jsp
http://archives.java.sun.com/jsp-interest.html
http://forums.java.sun.com
http://www.jspinsider.com

Reply via email to