Re: Cannot serialize session attribute ...

2009-03-22 Thread Kengkaj Sathianpantarit
You may consider to use EJB 3 Stateful Session Bean, if you want to achieve
high availability.

I think it's strange to serialize Manager.

Kengkaj

On Fri, Mar 20, 2009 at 6:53 PM, Leffingwell, Jonathan R CTR FRCSE, JAX
7.2.2 jonathan.leffingwell@navy.mil wrote:

 Here's my concern:

 Let's say that I am running two instances of Tomcat in a cluster: Server A
 and Server B.  While a user is in the web application on Server A, Server A
 goes down.  I need for Server B to have all of the session information for
 the user that Server A had, so the user will not notice anything while
 he/she is using the web app.  That's why we're using clustering.

 If the web application is properly exited, then I don't care if the session
 information is saved upon exiting the app.  It's probably better if the
 session info is NOT saved upon properly exiting the app.  But what I want
 to
 know is this:  If I use any of the previously mentioned solutions (i.e. the
 Manager pathname=/ or the Manager
 className=org.apache.catalina.session.PersistentManager
 saveOnRestart=false / approaches), will my clustering still work as I
 need it to?

 Thank you for your help, everyone!

 Jonathan


 -Original Message-
 From: charlie bird [mailto:zebthe...@yahoo.co.uk]
 Sent: Friday, March 20, 2009 7:46 AM
 To: user-java@ibatis.apache.org
 Subject: Re: Cannot serialize session attribute ...


 Alternatively you could disable session serialization completely by adding
 the following line to your tomcat application xml:

 Manager pathname=/

 Only if you're not bothered about retrieving the sessions on restart of
 course


 --- On Fri, 20/3/09, Kengkaj Sathianpantarit kengka...@gmail.com wrote:

  From: Kengkaj Sathianpantarit kengka...@gmail.com
  Subject: Re: Cannot serialize session attribute ...
  To: user-java@ibatis.apache.org
  Date: Friday, 20 March, 2009, 11:18 AM Mark transient in declaration -
  transient StandardDaoManager standardDaoManager;
 
  Kengkaj
 
  On Fri, Mar 20, 2009 at 6:13 PM,
  Leffingwell, Jonathan R CTR FRCSE, JAX 7.2.2
  jonathan.leffingwell@navy.mil
  wrote:
 
  What does that mean, set
  reference to it transient?
 
 
 
 
 
  -Original Message-
 
  From: Nicholoz Koka Kiknadze [mailto:kikna...@gmail.com]
 
  Sent: Thursday, March 19, 2009 3:30 PM
 
  To: user-java@ibatis.apache.org
 
  Subject: Re: Cannot serialize session attribute ...
 
 
 
  My first thought is that maybe StandardDaoManager can not be
  serializable as
 
  it deals with database connections. Maybe makes sense to set reference
  to it
 
  transient?
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  On Thu, Mar 19, 2009 at 2:55 PM, Leffingwell, Jonathan R CTR FRCSE,
  JAX
 
  7.2.2 jonathan.leffingwell@navy.mil
  wrote:
 
 
 
 
 
  I am running a web app in IBM RAD 7 with a Tomcat 5.5.26
  server,
 
  with
 
  clustering (two Tomcat instances).  When shutting down the
  Tomcat
 
  server(s),
 
  I get the following warning:
 
 
 
  Mar 19, 2009 2:52:43 PM
  org.apache.catalina.session.StandardSession
 
  writeObject
 
  WARNING: Cannot serialize session attribute createXXXManager
  for
 
  session
 
  8B1876E5C5C54B242E4256674843600B
 
  java.io.NotSerializableException:
 
  com.ibatis.dao.engine.impl.StandardDaoManager
 
 at
 
 
 
  java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
 
 at
 
 
 
  java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
  1375)
 
 at
 
 
 
  java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:134
  7)
 
 at
 
 
 
  java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java
  :1290)
 
 at
 
 
 
  java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
 
 at
 
 
   java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
 
 at
 
 
 
  org.apache.catalina.session.StandardSession.writeObject(StandardSessio
  n.java
 
  :1478)
 
 at
 
 
 
 

 org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.
 
  java:948)
 
 at
 
 
 
  org.apache.catalina.session.StandardManager.doUnload(StandardManager.j
  ava:51
 
  7)
 
 at
 
 
 
  org.apache.catalina.session.StandardManager.unload(StandardManager.jav
  a:463)
 
 at
 
 
 
  org.apache.catalina.session.StandardManager.stop(StandardManager.java:
  667)
 
 at
 
 
 
  org.apache.catalina.core.StandardContext.stop(StandardContext.java:436
  0)
 
 at
 
 
   org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
 
 at
 
 
   org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
 
 at
 
 
 
  org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448

RE: Cannot serialize session attribute ...

2009-03-20 Thread Leffingwell, Jonathan R CTR FRCSE, JAX 7.2.2
What does that mean, set reference to it transient?


-Original Message-
From: Nicholoz Koka Kiknadze [mailto:kikna...@gmail.com] 
Sent: Thursday, March 19, 2009 3:30 PM
To: user-java@ibatis.apache.org
Subject: Re: Cannot serialize session attribute ...

My first thought is that maybe StandardDaoManager can not be serializable as
it deals with database connections. Maybe makes sense to set reference to it
transient?







On Thu, Mar 19, 2009 at 2:55 PM, Leffingwell, Jonathan R CTR FRCSE, JAX
7.2.2 jonathan.leffingwell@navy.mil wrote:


I am running a web app in IBM RAD 7 with a Tomcat 5.5.26 server,
with
clustering (two Tomcat instances).  When shutting down the Tomcat
server(s),
I get the following warning:

Mar 19, 2009 2:52:43 PM org.apache.catalina.session.StandardSession
writeObject
WARNING: Cannot serialize session attribute createXXXManager for
session
8B1876E5C5C54B242E4256674843600B
java.io.NotSerializableException:
com.ibatis.dao.engine.impl.StandardDaoManager
   at

java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
   at

java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
   at

java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
   at

java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
   at

java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
   at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
   at

org.apache.catalina.session.StandardSession.writeObject(StandardSession.java
:1478)
   at

org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.
java:948)
   at

org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:51
7)
   at

org.apache.catalina.session.StandardManager.unload(StandardManager.java:463)
   at

org.apache.catalina.session.StandardManager.stop(StandardManager.java:667)
   at

org.apache.catalina.core.StandardContext.stop(StandardContext.java:4360)
   at
org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
   at
org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
   at

org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)
   at

org.apache.catalina.core.StandardService.stop(StandardService.java:510)
   at

org.apache.catalina.core.StandardServer.stop(StandardServer.java:734)
   at
org.apache.catalina.startup.Catalina.stop(Catalina.java:602)
   at
org.apache.catalina.startup.Catalina.start(Catalina.java:577)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
   at

sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
   at

sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at
org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
   at
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)


All of my managers, including createXXXManager, inherit from a
serializable
class BaseManager, but if I'm reading this correctly, it looks like
the
iBatis class StandardDaoManager is not serializable.  I can't edit
that
class, of course.

Here's what I want to know:

1.  If I put the following code in my context.xml file, will it
prevent
clustering from working properly?

Manager className=org.apache.catalina.session.PersistentManager
saveOnRestart=false /


2.  If the aforementioned context.xml snippet keeps clustering from
working,
what options do I have to stop the warnings but keep clustering
working
properly?


Thanks for any insight!

Jonathan





smime.p7s
Description: S/MIME cryptographic signature


Re: Cannot serialize session attribute ...

2009-03-20 Thread charlie bird

Alternatively you could disable session serialization completely by adding the 
following line to your tomcat application xml:

Manager pathname=/

Only if you're not bothered about retrieving the sessions on restart of course


--- On Fri, 20/3/09, Kengkaj Sathianpantarit kengka...@gmail.com wrote:

 From: Kengkaj Sathianpantarit kengka...@gmail.com
 Subject: Re: Cannot serialize session attribute ...
 To: user-java@ibatis.apache.org
 Date: Friday, 20 March, 2009, 11:18 AM
 Mark transient in declaration -
 transient StandardDaoManager standardDaoManager;
 
 Kengkaj
 
 On Fri, Mar 20, 2009 at 6:13 PM,
 Leffingwell, Jonathan R CTR FRCSE, JAX 7.2.2 
 jonathan.leffingwell@navy.mil
 wrote:
 
 What does that mean, set
 reference to it transient?
 
 
 
 
 
 -Original Message-
 
 From: Nicholoz Koka Kiknadze [mailto:kikna...@gmail.com]
 
 Sent: Thursday, March 19, 2009 3:30 PM
 
 To: user-java@ibatis.apache.org
 
 Subject: Re: Cannot serialize session attribute
 ...
 
 
 
 My first thought is that maybe StandardDaoManager can not
 be serializable as
 
 it deals with database connections. Maybe makes sense to
 set reference to it
 
 transient?
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 On Thu, Mar 19, 2009 at 2:55 PM, Leffingwell, Jonathan R
 CTR FRCSE, JAX
 
 7.2.2 jonathan.leffingwell@navy.mil
 wrote:
 
 
 
 
 
 I am running a web app in IBM RAD 7 with a
 Tomcat 5.5.26 server,
 
 with
 
 clustering (two Tomcat instances).  When
 shutting down the Tomcat
 
 server(s),
 
 I get the following warning:
 
 
 
 Mar 19, 2009 2:52:43 PM
 org.apache.catalina.session.StandardSession
 
 writeObject
 
 WARNING: Cannot serialize session attribute
 createXXXManager for
 
 session
 
 8B1876E5C5C54B242E4256674843600B
 
 java.io.NotSerializableException:
 
 com.ibatis.dao.engine.impl.StandardDaoManager
 
at
 
 
 
 java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
 
at
 
 
 
 java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
 
at
 
 
 
 java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
 
at
 
 
 
 java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
 
at
 
 
 
 java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
 
at
 
   
  java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
 
at
 
 
 
 org.apache.catalina.session.StandardSession.writeObject(StandardSession.java
 
 :1478)
 
at
 
 
 
 org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.
 
 java:948)
 
at
 
 
 
 org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:51
 
 7)
 
at
 
 
 
 org.apache.catalina.session.StandardManager.unload(StandardManager.java:463)
 
at
 
 
 
 org.apache.catalina.session.StandardManager.stop(StandardManager.java:667)
 
at
 
 
 
 org.apache.catalina.core.StandardContext.stop(StandardContext.java:4360)
 
at
 
   
  org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
 
at
 
   
  org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
 
at
 
 
 
 org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)
 
at
 
 
 
 org.apache.catalina.core.StandardService.stop(StandardService.java:510)
 
at
 
 
 
 org.apache.catalina.core.StandardServer.stop(StandardServer.java:734)
 
at
 
 org.apache.catalina.startup.Catalina.stop(Catalina.java:602)
 
at
 
 org.apache.catalina.startup.Catalina.start(Catalina.java:577)
 
at
 sun.reflect.NativeMethodAccessorImpl.invoke0(Native
 
 Method)
 
at
 
 
 
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
 
 )
 
at
 
 
 
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
 
 .java:25)
 
at
 java.lang.reflect.Method.invoke(Method.java:585)
 
at
 
 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
 
at
 
 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
 
 
 
 
 
 All of my managers, including createXXXManager,
 inherit from a
 
 serializable
 
 class BaseManager, but if I'm reading this
 correctly, it looks like
 
 the
 
 iBatis class StandardDaoManager is not
 serializable.  I can't edit
 
 that
 
 class, of course.
 
 
 
 Here's what I want to know:
 
 
 
 1.  If I put the following code in my
 context.xml file, will it
 
 prevent
 
 clustering from working properly?
 
 
 
 Manager
 className=org.apache.catalina.session.PersistentManager

RE: Cannot serialize session attribute ...

2009-03-20 Thread Leffingwell, Jonathan R CTR FRCSE, JAX 7.2.2
Here's my concern:

Let's say that I am running two instances of Tomcat in a cluster: Server A
and Server B.  While a user is in the web application on Server A, Server A
goes down.  I need for Server B to have all of the session information for
the user that Server A had, so the user will not notice anything while
he/she is using the web app.  That's why we're using clustering.

If the web application is properly exited, then I don't care if the session
information is saved upon exiting the app.  It's probably better if the
session info is NOT saved upon properly exiting the app.  But what I want to
know is this:  If I use any of the previously mentioned solutions (i.e. the
Manager pathname=/ or the Manager
className=org.apache.catalina.session.PersistentManager
saveOnRestart=false / approaches), will my clustering still work as I
need it to?

Thank you for your help, everyone!

Jonathan


-Original Message-
From: charlie bird [mailto:zebthe...@yahoo.co.uk] 
Sent: Friday, March 20, 2009 7:46 AM
To: user-java@ibatis.apache.org
Subject: Re: Cannot serialize session attribute ...


Alternatively you could disable session serialization completely by adding
the following line to your tomcat application xml:

Manager pathname=/

Only if you're not bothered about retrieving the sessions on restart of
course


--- On Fri, 20/3/09, Kengkaj Sathianpantarit kengka...@gmail.com wrote:

 From: Kengkaj Sathianpantarit kengka...@gmail.com
 Subject: Re: Cannot serialize session attribute ...
 To: user-java@ibatis.apache.org
 Date: Friday, 20 March, 2009, 11:18 AM Mark transient in declaration - 
 transient StandardDaoManager standardDaoManager;
 
 Kengkaj
 
 On Fri, Mar 20, 2009 at 6:13 PM,
 Leffingwell, Jonathan R CTR FRCSE, JAX 7.2.2 
 jonathan.leffingwell@navy.mil
 wrote:
 
 What does that mean, set
 reference to it transient?
 
 
 
 
 
 -Original Message-
 
 From: Nicholoz Koka Kiknadze [mailto:kikna...@gmail.com]
 
 Sent: Thursday, March 19, 2009 3:30 PM
 
 To: user-java@ibatis.apache.org
 
 Subject: Re: Cannot serialize session attribute ...
 
 
 
 My first thought is that maybe StandardDaoManager can not be 
 serializable as
 
 it deals with database connections. Maybe makes sense to set reference 
 to it
 
 transient?
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 On Thu, Mar 19, 2009 at 2:55 PM, Leffingwell, Jonathan R CTR FRCSE, 
 JAX
 
 7.2.2 jonathan.leffingwell@navy.mil
 wrote:
 
 
 
 
 
 I am running a web app in IBM RAD 7 with a Tomcat 5.5.26 
 server,
 
 with
 
 clustering (two Tomcat instances).  When shutting down the 
 Tomcat
 
 server(s),
 
 I get the following warning:
 
 
 
 Mar 19, 2009 2:52:43 PM
 org.apache.catalina.session.StandardSession
 
 writeObject
 
 WARNING: Cannot serialize session attribute createXXXManager 
 for
 
 session
 
 8B1876E5C5C54B242E4256674843600B
 
 java.io.NotSerializableException:
 
 com.ibatis.dao.engine.impl.StandardDaoManager
 
at
 
 
 
 java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
 
at
 
 
 
 java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
 1375)
 
at
 
 
 
 java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:134
 7)
 
at
 
 
 
 java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java
 :1290)
 
at
 
 
 
 java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
 
at
 
   
  java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
 
at
 
 
 
 org.apache.catalina.session.StandardSession.writeObject(StandardSessio
 n.java
 
 :1478)
 
at
 
 
 

org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.
 
 java:948)
 
at
 
 
 
 org.apache.catalina.session.StandardManager.doUnload(StandardManager.j
 ava:51
 
 7)
 
at
 
 
 
 org.apache.catalina.session.StandardManager.unload(StandardManager.jav
 a:463)
 
at
 
 
 
 org.apache.catalina.session.StandardManager.stop(StandardManager.java:
 667)
 
at
 
 
 
 org.apache.catalina.core.StandardContext.stop(StandardContext.java:436
 0)
 
at
 
   
  org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
 
at
 
   
  org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
 
at
 
 
 
 org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)
 
at
 
 
 
 org.apache.catalina.core.StandardService.stop(StandardService.java:510
 )
 
at
 
 
 
 org.apache.catalina.core.StandardServer.stop(StandardServer.java:734)
 
at
 
 org.apache.catalina.startup.Catalina.stop(Catalina.java:602)
 
at
 
 org.apache.catalina.startup.Catalina.start(Catalina.java:577

Re: Cannot serialize session attribute ...

2009-03-20 Thread Kengkaj Sathianpantarit
Mark transient in declaration -
transient StandardDaoManager standardDaoManager;

Kengkaj

On Fri, Mar 20, 2009 at 6:13 PM, Leffingwell, Jonathan R CTR FRCSE, JAX
7.2.2 jonathan.leffingwell@navy.mil wrote:

 What does that mean, set reference to it transient?


 -Original Message-
 From: Nicholoz Koka Kiknadze [mailto:kikna...@gmail.com]
 Sent: Thursday, March 19, 2009 3:30 PM
 To: user-java@ibatis.apache.org
 Subject: Re: Cannot serialize session attribute ...

 My first thought is that maybe StandardDaoManager can not be serializable
 as
 it deals with database connections. Maybe makes sense to set reference to
 it
 transient?







 On Thu, Mar 19, 2009 at 2:55 PM, Leffingwell, Jonathan R CTR FRCSE, JAX
 7.2.2 jonathan.leffingwell@navy.mil wrote:


I am running a web app in IBM RAD 7 with a Tomcat 5.5.26 server,
 with
clustering (two Tomcat instances).  When shutting down the Tomcat
 server(s),
I get the following warning:

Mar 19, 2009 2:52:43 PM org.apache.catalina.session.StandardSession
writeObject
WARNING: Cannot serialize session attribute createXXXManager for
 session
8B1876E5C5C54B242E4256674843600B
java.io.NotSerializableException:
com.ibatis.dao.engine.impl.StandardDaoManager
   at

 java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
   at

 java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
   at

 java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
   at


 java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
   at

 java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
   at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
   at


 org.apache.catalina.session.StandardSession.writeObject(StandardSession.java
:1478)
   at


 org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.
java:948)
   at


 org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:51
7)
   at


 org.apache.catalina.session.StandardManager.unload(StandardManager.java:463)
   at

 org.apache.catalina.session.StandardManager.stop(StandardManager.java:667)
   at

 org.apache.catalina.core.StandardContext.stop(StandardContext.java:4360)
   at
org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
   at
org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
   at

 org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)
   at

 org.apache.catalina.core.StandardService.stop(StandardService.java:510)
   at

 org.apache.catalina.core.StandardServer.stop(StandardServer.java:734)
   at
 org.apache.catalina.startup.Catalina.stop(Catalina.java:602)
   at
 org.apache.catalina.startup.Catalina.start(Catalina.java:577)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
 Method)
   at


 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
   at


 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at
 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
   at
 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)


All of my managers, including createXXXManager, inherit from a
 serializable
class BaseManager, but if I'm reading this correctly, it looks like
 the
iBatis class StandardDaoManager is not serializable.  I can't edit
 that
class, of course.

Here's what I want to know:

1.  If I put the following code in my context.xml file, will it
 prevent
clustering from working properly?

Manager className=org.apache.catalina.session.PersistentManager
saveOnRestart=false /


2.  If the aforementioned context.xml snippet keeps clustering from
 working,
what options do I have to stop the warnings but keep clustering
 working
properly?


Thanks for any insight!

Jonathan






Re: Cannot serialize session attribute ...

2009-03-20 Thread Nicholoz Koka Kiknadze
I have never used tomcat clustering, but it sounds to me reasonable that
disabling persisting sessions upon tomcat exit has nothing to do with
clustering. However, in order to replicate session object in clustered
environment the session object *has to be* serializable. So, imho, any
reference to singleton objects in your session can be and must be marked
with 'transient'.


On Fri, Mar 20, 2009 at 7:53 AM, Leffingwell, Jonathan R CTR FRCSE, JAX
7.2.2 jonathan.leffingwell@navy.mil wrote:

 Here's my concern:

 Let's say that I am running two instances of Tomcat in a cluster: Server A
 and Server B.  While a user is in the web application on Server A, Server A
 goes down.  I need for Server B to have all of the session information for
 the user that Server A had, so the user will not notice anything while
 he/she is using the web app.  That's why we're using clustering.

 If the web application is properly exited, then I don't care if the session
 information is saved upon exiting the app.  It's probably better if the
 session info is NOT saved upon properly exiting the app.  But what I want
 to
 know is this:  If I use any of the previously mentioned solutions (i.e. the
 Manager pathname=/ or the Manager
 className=org.apache.catalina.session.PersistentManager
 saveOnRestart=false / approaches), will my clustering still work as I
 need it to?

 Thank you for your help, everyone!

 Jonathan


 -Original Message-
 From: charlie bird [mailto:zebthe...@yahoo.co.uk]
 Sent: Friday, March 20, 2009 7:46 AM
 To: user-java@ibatis.apache.org
 Subject: Re: Cannot serialize session attribute ...


 Alternatively you could disable session serialization completely by adding
 the following line to your tomcat application xml:

 Manager pathname=/

 Only if you're not bothered about retrieving the sessions on restart of
 course


 --- On Fri, 20/3/09, Kengkaj Sathianpantarit kengka...@gmail.com wrote:

  From: Kengkaj Sathianpantarit kengka...@gmail.com
  Subject: Re: Cannot serialize session attribute ...
  To: user-java@ibatis.apache.org
  Date: Friday, 20 March, 2009, 11:18 AM Mark transient in declaration -
  transient StandardDaoManager standardDaoManager;
 
  Kengkaj
 
  On Fri, Mar 20, 2009 at 6:13 PM,
  Leffingwell, Jonathan R CTR FRCSE, JAX 7.2.2
  jonathan.leffingwell@navy.mil
  wrote:
 
  What does that mean, set
  reference to it transient?
 
 
 
 
 
  -Original Message-
 
  From: Nicholoz Koka Kiknadze [mailto:kikna...@gmail.com]
 
  Sent: Thursday, March 19, 2009 3:30 PM
 
  To: user-java@ibatis.apache.org
 
  Subject: Re: Cannot serialize session attribute ...
 
 
 
  My first thought is that maybe StandardDaoManager can not be
  serializable as
 
  it deals with database connections. Maybe makes sense to set reference
  to it
 
  transient?
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  On Thu, Mar 19, 2009 at 2:55 PM, Leffingwell, Jonathan R CTR FRCSE,
  JAX
 
  7.2.2 jonathan.leffingwell@navy.mil
  wrote:
 
 
 
 
 
  I am running a web app in IBM RAD 7 with a Tomcat 5.5.26
  server,
 
  with
 
  clustering (two Tomcat instances).  When shutting down the
  Tomcat
 
  server(s),
 
  I get the following warning:
 
 
 
  Mar 19, 2009 2:52:43 PM
  org.apache.catalina.session.StandardSession
 
  writeObject
 
  WARNING: Cannot serialize session attribute createXXXManager
  for
 
  session
 
  8B1876E5C5C54B242E4256674843600B
 
  java.io.NotSerializableException:
 
  com.ibatis.dao.engine.impl.StandardDaoManager
 
 at
 
 
 
  java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
 
 at
 
 
 
  java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
  1375)
 
 at
 
 
 
  java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:134
  7)
 
 at
 
 
 
  java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java
  :1290)
 
 at
 
 
 
  java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
 
 at
 
 
   java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
 
 at
 
 
 
  org.apache.catalina.session.StandardSession.writeObject(StandardSessio
  n.java
 
  :1478)
 
 at
 
 
 
 

 org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.
 
  java:948)
 
 at
 
 
 
  org.apache.catalina.session.StandardManager.doUnload(StandardManager.j
  ava:51
 
  7)
 
 at
 
 
 
  org.apache.catalina.session.StandardManager.unload(StandardManager.jav
  a:463)
 
 at
 
 
 
  org.apache.catalina.session.StandardManager.stop(StandardManager.java:
  667)
 
 at
 
 
 
  org.apache.catalina.core.StandardContext.stop(StandardContext.java:436
  0)
 
 at
 
 
   org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067

RE: Cannot serialize session attribute

2006-08-24 Thread Mkhitaryan, Aram
It may be Eclipse problem.
Send this message also in Eclipse mailing lists.

Why do you use 3.0.0.
Now already 3.2.0 is released. It works great! Try it!

Do you use clustered Tomcat?
For normal cases Tomcat's session manager doesn't serialize its content, it 
happens only when Tomcat is clustered and it have to serialize the data to send 
to other servers in cluster.

If your Tomcat is clustered, the only solution I can suggest is to copy data 
from PaginatedList to one of the standard List implementations.

Best,
Aram


Aram Mkhitaryan
  Developer

Lycos Armenia CJSC
9 Alex Manukyan str,
Yerevan 375070, Armenia
 
Tel: +374 10 512411
Mobile: +374 91 518456
 
E-mail:  [EMAIL PROTECTED]
Web: www.lycos-europe.com 


-Original Message-
From: Ramon Misho [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 23, 2006 8:58 PM
To: user-java@ibatis.apache.org
Subject: Cannot serialize session attribute

Hello iBatis people:

I am using Eclipse Version: 3.0.0 and Tomcat 5.0.19.

I edit a java file (in the Eclipse), and click on the 'Save' button. The 
'Reloading starts as expected.   However, very often (but not all the time), I 
get the following error messages although they have no impact on the compiling 
process.  

Cannot serialize session attribute myfileBean for session 
some_id_with_letters_and_number
..etc

The 'myfileBean' is the name of one of my JAVA files.   The strange thing is 
that when this error is generated, I am usually working with another JAVA file.

Any ideas?

Thanks.
Ramon


Re: Cannot serialize session attribute

2006-08-23 Thread Gareth Moorst
Hi Ramon,I'd suggest you ask this question on the Eclipse mailing lists.Just once should do it ;)Gareth.- Original Message From: Ramon Misho [EMAIL PROTECTED]To: user-java@ibatis.apache.orgSent: Wednesday, 23 August, 2006 4:58:00 PMSubject: Cannot serialize session attributeHello iBatis people:I am using Eclipse Version: 3.0.0 and Tomcat 5.0.19.I edit a java file (in the Eclipse), and click on the 'Save' button. The 'Reloading" starts as expected. However, very often (but not all the time), I get the following error messages although they have no
 impact on the compiling process.Cannot serialize session attribute myfileBean for session some_id_with_letters_and_number..etcThe 'myfileBean' is the name of one of my JAVA files. The strange thing is that when this error is generated, I am usually working with another JAVA file.Any ideas?Thanks.Ramon

Re: Cannot serialize session attribute

2006-08-23 Thread Socheat KHAUV
Did your class implement to the serialiable interface as well ?and did you generate the serialID ?- Original Message From: Ramon Misho [EMAIL PROTECTED]To: user-java@ibatis.apache.orgSent: Wednesday, August 23, 2006 10:40:04 PMSubject: Cannot serialize session attributeHello iBatis people:I am using Eclipse Version: 3.0.0 (Build id: 200406251208) and Tomcat 5.0.19.I edit a java file (in the Eclipse), and click on the 'Save' button. The 'Reloading" starts as expected. However, very often (but not all the time), I get the following error messages although these errors
 don't seem to have any impact on the compiling process.I have highlighted (in red) what I thought are key messages.here are some sections of the error messageAug 23, 2006 10:11:32 AM org.apache.catalina.core.StandardContext reloadINFO: Reloading this Context has startedAug 23, 2006 10:11:32 AM org.apache.catalina.session.ManagerBase logINFO: Cannot serialize session attribute myfileBean for session A2F0ED8D3C199E076B84EB3CF792C6FDjava.io.NotSerializableException: com.ibatis.sqlmap.engine.mapping.statement.PaginatedDataListat
 java.io.ObjectOutputStream.writeObject0(Unknown Source)at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)at java.io.ObjectOutputStream.writeSerialData(Unknown Source)at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)at java.io.ObjectOutputStream.writeObject0(Unknown Source)at java.io.ObjectOutputStream.writeObject(Unknown Source)at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1446)at
 org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:937)at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:586)at org.apache.catalina.session.StandardManager.unload(StandardManager.java:532)at org.apache.catalina.session.StandardManager.stop(StandardManager.java:734)at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4436)at org.apache.catalina.core.StandardContext.reload(StandardContext.java:2984)at
 org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4584)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1662)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1671)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1671)at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1651)at java.lang.Thread.run(Unknown
 Source)Aug 23, 2006 10:11:41 AM org.apache.catalina.session.StandardManager doLoadSEVERE: IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: com.ibatis.sqlmap.engine.mapping.statement.PaginatedDataListjava.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: com.ibatis.sqlmap.engine.mapping.statement.PaginatedDataListat java.io.ObjectInputStream.readObject0(Unknown Source)at java.io.ObjectInputStream.defaultReadFields(Unknown Source)at java.io.ObjectInputStream.readSerialData(Unknown
 Source)at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)at java.io.ObjectInputStream.readObject0(Unknown Source)at java.io.ObjectInputStream.readObject(Unknown Source)at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1376)at org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:920)at org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:463)at
 org.apache.catalina.session.StandardManager.load(StandardManager.java:390)at org.apache.catalina.session.StandardManager.start(StandardManager.java:704).. etcThe 'myfileBean' is the name of one of my JAVA files. The strange thing is that when this error is generated, I am usually working with another JAVA file.Any ideas?Thanks.Ramon