0 Replies Latest reply on Nov 4, 2008 3:11 PM by titou09

    Concurrent requests allowed by seam for same user-page-conversation?

    titou09

      In relation with JIRA JIRA-3652 , we have many page scoped components.


      It is possible with seam v2.1.0.SP1 to have the same user to execute code concurrently in the same method at the same time in two different threads  if the user clicks quickly on two different links in a page that displays a list of items, before the result fo the first clic is displayed


      In summary: one user, one page scope component managing the page, one long running conversation active, two clics


      Of course, this causes major corruption of data as two threads modify concurrently the same data in the component (At best a NPE, at worst wrong decisions taken and wrong data stored in the database)


      It seems that annotating ours page scope components with @Serialized solve the problem


      Questions :



      • Is this normal?

      • I thought that seam was serializing such requests and so protecting use from such kind of double posts, which is obviously not the case in v2.1.0.SP1

      • Do we have to annotate all our page scope components with @Synchronized as a workaround?




      (This with seam v2.1.0.SP1 in POJOs mode)