Make sure what you are storing on the session is Serializable.



> -----Original Message-----
> From: Nicklas Andersson [mailto:[EMAIL PROTECTED]]
> Sent: Friday, October 20, 2000 11:06 AM
> To: Orion-Interest
> Subject: Cluster and session-attributes
>
>
> Hi,
>
> we have configured a cluster with the web-part over two machines.
> They are placed on the same net with a load balancer which listens
> to 172.23.20.58:100 and selects between
> 172.23.20.29:8090/172.23.20.58:8090.
>
> They are in a so called cluster-island and everything goes just fine
> with easy JSP- and HTML-pages. BUT... when it comes to
> sharing session and
> their attributes something goes wrong when we do a
> "session.removeAttribute("X");"
>
> Does anyone know why? Here are some fileconfigurations for you:
> 1) Start of the load balancer:
> C:\cm\orion>java -jar loadbalancer.jar -host 172.23.20.58 -port 100
> Balancer initialized...
> Added island number 1 to the cluster...
> Discovered server LKPS031/172.23.20.29:8090...
> Discovered server LKPS031/172.23.20.29:8090...
>
> 2) start of Orion:
> C:\cm\orion>java -jar orion.jar
> Orion/1.3.8 initialized
>
> 3) Our config-files:
> orion-web.xml
> <?xml version="1.0"?>
> <!DOCTYPE orion-web-app PUBLIC "-//Evermind//DTD Orion Web Application
> 2.3//EN" "http://www.orionserver.com/dtds/orion-web.dtd">
> <orion-web-app
>       deployment-version="1.3.8"
>       jsp-cache-directory="./persistence"
>       temporary-directory="./temp"
>       servlet-webdir="/servlet/">
>       <cluster-config host="230.0.0.1" id="1" port="9127" />
> </orion-web-app>
>
> cm-web-site.xml
> <?xml version="1.0"?>
> <!DOCTYPE web-site PUBLIC "Orion Web-site"
> "http://www.orionserver.com/dtds/web-site.dtd">
> <web-site host="172.23.20.58" port="8090"
> display-name="Framfab CM WebSite"
> cluster-island="1">
>       <!-- The default web-app for this site, bound to the root -->
>       <default-web-app application="cmweb" name="webfiles" />
>       <access-log path="../log/default-web-access.log" />
>       <frontend host="172.23.20.58" port="100" />
> </web-site>
>
> web.xml
> <?xml version="1.0"?>
> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web
> Application
> 2.3//EN" "http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">
> <web-app>
>       <display-name>Framfab Content Management</display-name>
>       <description>Webfiles for FFCM application</description>
>       <distributable />
>       <login-config>
>               <auth-method>BASIC</auth-method>
>       </login-config>
> </web-app>
>
> Our easy examples comes here:
> 1) A JSP-page to set/get and remove attributes:
> <pre>
> <%
>       try {
>               session.setAttribute("cmCluster", "Hello World!");
>               out.println("1");
>               out.println(session.getAttribute("cmCluster"));
>               out.println("2");
>               out.println(":" +
> session.getAttribute("cmChrister") + ":");
>               out.println("3");
>               session.removeAttribute("cmCluster");
>               out.println("4");
>               session.removeAttribute("cmChrister");
>               out.println("5");
> } catch (Throwable t) { out.println(t); }
> %>
> </pre>
> 2) Result:
> 1
> Hello World!
> 2
> :null:
> 3
> ----------->>> java.lang.StackOverflowError
>
> The same error appears when we uses another page but orion
> types all the
> error to the page like this:
> 500 Internal Server Error
> java.lang.StackOverflowError
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
>       at
> com.evermind.server.http.ClusteredHttpSession.removeAttribute(JAX)
>       at com.evermind.server.http.EvermindHttpSession.removeValue(JAX)
> ... Continues ...
>
> Can anyone help us with this problem? What can it be? Doesn't it seem
> strange
> that no attributes, wheater they are set or not, can be removed?
>
> Any comments are appreciated!
>
> /Nicklas & Christer
>
> ________________________________
> [EMAIL PROTECTED]
> Systems Developer
> FramFab
> Box 629, 581 07 Linköping, Sweden
> Direct +46 (0)13 465 00 05, Cellular +46 (0)709 41 10 05
> http://www.framfab.se
> "World without fences - who needs Gates?"
>

Reply via email to