Lifecycle Design

From: Joe Baldwin (jfbaldwi..arthlink.net)
Date: Wed Apr 08 2009 - 17:45:04 EDT

  • Next message: Malcolm Edgar: "Re: Lifecycle Design"

    I *think* this is a life-cycle question, but there may be more to it.

    Proposed Design:

    1. Standard Web page JSP using Tomcat server.
    2. One of the JSP's accesses a singleton.
    3. The singleton accesses and stores a database field via Cayenne
    (presumably when the class is initially loaded) and should never need
    to access the field again.
    4. I would prefer it if the database field change would be propagated
    to the singleton upon the next new client-Session.

    Problem
    1. Here is the odd bit: the database field can be modified via direct
    access to the database (SQL, etc).
    2. Cayenne appears not to see this change even when a new client-
    Session is initialized.
    3. I can *force* the singleton to recognize the change by restarting
    Tomcat (but that is totally lame :) )
    4. Unless I have made a mistake (which is possible), the singleton
    should be only associated with JSP session scope. But if I am wrong,
    this could be the problem.

    Obviously, I have a misunderstanding about either Cayenne or Tomcat
    caching or perhaps its a combo of the two. It appears from my tests
    that the singleton class may be constructed the first time after
    Tomcat is restarted and then remains persistent even across different
    sessions.

    Are there any suggestions as to a simple design in which my singleton
    forces re-initialized (i.e. refresh the Cayenne object from the DBMS
    data) upon each new session?

    Thanks,
    Joe



    This archive was generated by hypermail 2.0.0 : Wed Apr 08 2009 - 17:45:40 EDT