You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by bu...@apache.org on 2003/08/14 11:40:28 UTC

DO NOT REPLY [Bug 22411] New: - Client session objects are shared by a multiple call object

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22411>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22411

Client session objects are shared by a multiple call object

           Summary: Client session objects are shared by a multiple call
                    object
           Product: Axis
           Version: current (nightly)
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Major
          Priority: Other
         Component: Basic Architecture
        AssignedTo: axis-dev@ws.apache.org
        ReportedBy: kimuratsy@nttdata.co.jp


If a user application creates two call objects from one service
object with setMaintainSession(true), all of session info (including
ids, objects) are shared among the two client unintentionally.

Expected combination:

  [         JVM : Service ojb ] = one-to-many
  [ Service obj : Call obj    ] = one-to-many
  [    User app : Call obj    ] = one-to-many

.........*.........*.........*.........*.........*.........*.........*
          +------------+                +------------+  +------------+ 
4th Layer | User app-1 |                | User app-2 |  | User app-3 |
          +------+-----+                +------+-----+  +-----+------+ 
                 +-------------+               |              |
                 |             |               |              |
          +------+-----+ +-----+------+ +------+-----+ +------+-----+
3rd Layer |Call obj.A-1| |Call obj.A-2| |Call obj.B-1| |Call obj.B-2|
          +------+-----+ +-----+------+ +------+-----+ +------+-----+
                 |             |               |              |
          +------+-------------+------+ +------+-------------------+
2nd Layer |       Service obj. A      | |      Service obj. B      |
          +---------------------------+ +--------------------------+
          +--------------------------------------------------------+
1st Layer |                    JVM (Java Virtual Machine)          |
          +--------------------------------------------------------+
.........*.........*.........*.........*.........*.........*.........*

 - The 1st Layer will be coverd by
   System.setProperty("javax.xml.rpc.session.maintain","true/false").
 - The 2nd Layer will be coverd by
   service.setMaintainSession(true/false).
 - The 3nd Layer will be coverd by
   call.setMaintainSession(true/false).

 Finally, the order of priority would be better off processing
"3rd layer" -> "2nd layer" -> "1st layer".

Thanks,

  Toshi (Toshiyuki Kimura) <ki...@nttdata.co.jp>
  R&D Headquarters
  NTT DATA Corporation