Title: FW: [ND] Urgent: Forms got populated with other user's data

-----Original Message-----
From:   Mckinnon, Troy [SKY:1P64:EXCH]
Sent:   Monday, November 29, 1999 10:46 AM
To:     'Ivy Wang'; [EMAIL PROTECTED]
Subject:        RE: [ND] Urgent: Forms got populated with other user's data

I would like to add my $0.02 to this thread...

We initially had the same type of problem. So I will try to describe it to you, hopefully it will help.

1) check to ensure that you are not using class variables between events...

i.e. PAGE level variables and passing them between events... such as from display events to web events.

look up the documentation on project graphs... this is basically why #1 may behave strangely when in a multi user envirionment.

How can I put this simply...

   if user 1 logs into ND system... ND sets up a 'copy' or graph of the project (or relevant portions) in the memory (PE).  When user 2 comes in if user 1 has finished with copy 1,

   nd will most likely point user 2 to this same copy instead of creating another from the ser files...
   Sometime this may not be a problem... for example if the user is displaying a page, the class variables mentioned in #1 will probably all be reinitialized anyway so the page display as required.

   But let's say that the scenario was like the following:

   1 - user 1 loads page , project graph is created (pgrph1)
   2 - user 2 loads page , project graph is created (pgrph2)
   3 - user 1 sets some class variables.. or whatever... (pgrph1)
   4 - user 2 clicks the submit button... but this time user 1 isn't using (pgrph1) anymore, so user 2 is assigned to it.

   5 - user 2 gets back strange results because of using the class variables setup by user 1.

- Now this may not be exactly correct... it is just my take on it.  If anyone has any comments or I have errored in my understanding, please let me know.

2) check to see how you are handling list and combo boxes.
The ND server caches the values of these types of objects in a sort of GLOBAL way.
I find this implementation quite annoying actually.

When you have a list box on a page that dynamically changes its values based on user input, or user id, or whatever...
you have to make sure to do a number of EXTRA steps to ensure that the users don't share this data.

i ) always do removeAllChildren (true) on a l/cb box to get rid of the last values
ii) execute a doAutoFill to put new values in...

I usually do this on the onBeforeDisplayEvent of a particular box, but you can be creative.

hope this helps.. and I hope that I wasn't too far off the mark with these comments..

Troy


Troy McKinnon
Technical Team Leader
Integrated Quality Management System
Software Solutions Group
Nortel Networks - (Dept. 1P64)
(613) 765-7685  or  ESN (395) 7685

    -----Original Message-----
    From:   Ivy Wang [SMTP:[EMAIL PROTECTED]]
    Sent:   Monday, November 29, 1999 10:21 AM
    To:     [EMAIL PROTECTED]
    Subject:        Re: [ND] Urgent: Forms got populated with other user's data


    Joel,

    Thanks a lot for your help.  I would like to bring the following to your attention:
    We don't use frameset in our project at all.  However, I see a lot of SER files has
    CSpHtmlFrameSet in them.  Does ND4 plug in CSpHtmlFrameSet when it generates
    SER files?
     
    Thanks in advance,
    Ivy Wang

    Joel Parker Henderson <[EMAIL PROTECTED]> wrote:
    >
    >Ivy wrote:
    >> In one of our user offices, two users signed on with different user ids
    >> and both were entering forms for submitting.  And one user saw the
    >> information entered by the other on her form. 
    >
    >Hi Ivy,
    >
    >You found the correct technote about this. Your user problem is the result
    >of HTML caching, which can be caused by a variety of caches within web
    >browsers, web servers, firewalls, and intranet LANs.
    >
    >To fix it, the easiest way is also the best way: eliminate frames.
    >Frames are typically used to provide things like left-hand-side
    >navigation menus, and these menus can usually be built just as
    >well by replacing the frames with tables. In fact, most major
    >web sites that I know of have made this conversion; examples
    >include IBM, Symantec, CNET, Wired, Microsoft, and so on.
    >
    >If your project cannot be switched from frames to tables,
    >then another alternative is to turn on cookies. Your ND
    >project can simply send a unique cookie to each browser,
    >and when requests come in, you correlate the cookie with
    >the session ID; if they mismatch, then you know you have
    >hit a caching problem and you can send back fixed data.
    >
    >You may want to try a few other fast things for a short-term workaround
    >while you consider using tables or cookies. Turn off page caching in your
    >webserver, turn off page caching in your intranet firewall, turn off page
    >caching in your LAN cache if you have one, and so on.  You can also ask
    >your users to turn off browser caching.
    >
    >I hope this information helps you;
    >please let me know how it works.
    >
    >
    >Cheers,
    >
    >Joel
    >
    >____________________________________________________________________________
    >
    >Joel Parker Henderson
    >[EMAIL PROTECTED] 1-800-558-2197
    >Sun-Netscape-AOL Alliance
    >NetDynamics Web Manager
    >www.sun.com/netdynamics
    >
    >

    _________________________________________________________________________

    For help in using, subscribing, and unsubscribing to the discussion
    forums, please go to: http://www.netdynamics.com/support/visitdevfor.html

    For dire need help, email: [EMAIL PROTECTED]

Reply via email to