I'm referring to this document on : 
http://www.onjava.com/pub/a/onjava/2004/04/14/clustering.html?page=2
 The words "Serializable" here would mean for session replication, right ? 
CMIIW.
 On 8/17/05, Christoph Kutzinski <[EMAIL PROTECTED]> wrote: 
> 
> Hi Nishant,
> 
> where did you read that <distributable> will *enforce* serializability?
> AFAIK <distributable> "only" means that your sessions can be distributed
> to different tomcat nodes (i.e. a cluster). It doesn't enforce anything,
> you have to make sure that your session attributes are serializable by
> yourself.
> 
> I've done this for my testing environment with a SessionListener:
> 
> public class SessionListener implements HttpSessionListener,
> HttpSessionAttributeListener {
> 
> private ObjectOutputStream stream = new ObjectOutputStream(new
> OutputStream() {
> public void write(int b) {}
> });
> 
> public void attributeAdded(HttpSessionBindingEvent evt) {
> 
> if (LOCAL_DEBUG) {
> // try to serialize attribute
> Object o = evt.getValue();
> synchronized (stream) {
> try {
> stream.writeObject(o);
> } catch (IOException e) {
> System.err.println(evt.getName() + " is not serializable: " +
> e.getMessage());
> e.printStackTrace();
> }
> }
> }
> }
> 
> ...
> }
> 
> I disable LOCAL_DEBUG in the production environment, because trying to
> serialize every attribute is probably to expensive under heavy load.
> 
> 
> @Lintang:
> 
> That wouldn't help any. If you put your attributes (which are not
> serializable) into a HashMap (which CAN (!) be serializable) the
> resulting object (map + attribute) still wouldn't be serializable.
> Serializable is more than just implementing the java.io.Serializable
> interface.
> 
> 
> greetings,
> 
> Christoph
> 
> 
> 
> 
> Lintang JP wrote:
> > hi Nishant,
> > You might want to put all your session variable inside HashMap or other
> > datatypes that implements Serializable, rather than put it just in a 
> single
> > variable. Refer to the javadocs, what are those Serializable data types 
> are.
> > Or maybe you can build your own class with something like this :
> > public class StoredSessionValue implements Serializable {
> > // your session variable goes here
> > // your setter and getter method for those variables goes here
> > }
> >
> > You did right on your <distributable/> tags.
> > On 8/17/05, Nishant Deshpande <[EMAIL PROTECTED]> wrote:
> >
> >>Hoping for some help from the tomcat experts on this list.
> >>
> >>I want to ensure all objects stored in sessions are serializable.
> >>
> >>I read that I can put the <distributable/> tag in my web.xml file to
> >>'enforce' this.
> >>
> >>But I don't see any enforcing happening. I assumed it would throw
> >>exceptions at runtime when I did 'setAttribute("xxx",
> >>SomeNonSerializableObject)'.
> >>
> >>I have put 'distributable' in
> >>
> >>web.xml: <web-app> ... <distributable/> ... </web-app>
> >>
> >>I also have the following in server.xml:
> >>
> >><DefaultContext reloadable="true" allowLinking="true">
> >>
> >><Loader className="org.apache.catalina.loader.DevLoader"
> >>reloadable="true" debug="1"/>
> >><Manager className="org.apache.catalina.session.PersistentManager"
> >>pathname="/cv/data/tmp" debug="5" saveOnRestart="true"
> >>distributable="true">
> >><Store className="org.apache.catalina.session.FileStore"
> >>directory="/cv/data/tmp"
> >>debug="5"/>
> >></Manager>
> >>
> >></DefaultContext>
> >>
> >>
> >>Am I missing something? How is the serializability enforced?
> >>
> >>Also another question: the serialization does not happen in the
> >>directory i specify for Store above, rather it happens in the
> >>$CATALINA_HOME/work/Catalina/* directories. Any ideas about this one?
> >>
> >>Thanks,
> >>
> >>Nishant
> >>
> >>---------------------------------------------------------------------
> >>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> >
> >
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
-------------------------------------------------------------------
http://www.psychotazkia.or.id

Reply via email to