clustering failover error

2008-03-24 Thread Scott Swank
We are trying to get clustering working with Wicket 1.3.2 (on JBoss
4.3.0) and we get the following exception when one node fails over to
another node.  Has anyone seen anything like this before?  Any
suggestions/guesses?

Thank you,
Scott

15:02:17,320 ERROR [RequestCycle] Could not deserialize object using `org.apache
.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
java.lang.RuntimeException: Could not deserialize object using `org.apache.wicke
t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
at org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
6)
at org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
zePage(AbstractPageStore.java:228)
at org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
ageStore.java:706)
at org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
(DiskPageStore.java:1218)
at org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
at org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
at org.apache.wicket.Session.getPage(Session.java:751)
at org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
edPage(AbstractRequestCycleProcessor.java:448)
at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
equestCycleProcessor.java:139)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
358)
at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
a:124)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
erFacingClientContextFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
lter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
yAssociationValve.java:179)
at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
steredSessionValve.java:87)
at org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteVal
ve.java:84)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
e.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
onnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:241)
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpPro
tocol.java:381)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.StreamCorruptedException: invalid type code: B8
at 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(Unknow

Re: clustering failover error

2008-03-24 Thread Johan Compagner
Stream corrupt exceptio, invalid type code?
It seems that the byte array on that side isnt correct. Do you have a
setup/testcase for this? Do you get it on other app servers?

On 3/24/08, Scott Swank <[EMAIL PROTECTED]> wrote:
> We are trying to get clustering working with Wicket 1.3.2 (on JBoss
> 4.3.0) and we get the following exception when one node fails over to
> another node.  Has anyone seen anything like this before?  Any
> suggestions/guesses?
>
> Thank you,
> Scott
>
> 15:02:17,320 ERROR [RequestCycle] Could not deserialize object using
> `org.apache
> .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object
> factory
> java.lang.RuntimeException: Could not deserialize object using
> `org.apache.wicke
> t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
> at
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
> 6)
> at
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
> zePage(AbstractPageStore.java:228)
> at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
> ageStore.java:706)
> at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
> (DiskPageStore.java:1218)
> at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
> at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
> at org.apache.wicket.Session.getPage(Session.java:751)
> at
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
> edPage(AbstractRequestCycleProcessor.java:448)
> at
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
> equestCycleProcessor.java:139)
> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
> at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
> at
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
> 358)
> at
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
> a:124)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:290)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:206)
> at
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
> erFacingClientContextFilter.java:42)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:235)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:206)
> at
> com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:235)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:206)
> at
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
> lter.java:96)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:235)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:206)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
> alve.java:230)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
> alve.java:175)
> at
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
> yAssociationValve.java:179)
> at
> org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
> steredSessionValve.java:87)
> at
> org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteVal
> ve.java:84)
> at
> org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
> e.java:84)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
> ava:128)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
> ava:104)
> at
> org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
> onnectionValve.java:157)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
> ve.java:109)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
> a:241)
> at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
> at
> org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpPro
> tocol.java:381)
> at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run

Re: clustering failover error

2008-03-24 Thread Scott Swank
We run JBoss and haven't tried this on other app servers.  Could the
fact that we're running Java 6 be relevant?  The specific type code in
the exception varies each time, and this occurs every time we fail
over from one node to another.

We don't a test case, but if you have a JBoss cluster we could maybe
send you a war.  :)

Thank you,
Scott


On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
> Stream corrupt exceptio, invalid type code?
>  It seems that the byte array on that side isnt correct. Do you have a
>  setup/testcase for this? Do you get it on other app servers?
>
>
>
>  On 3/24/08, Scott Swank <[EMAIL PROTECTED]> wrote:
>  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  > 4.3.0) and we get the following exception when one node fails over to
>  > another node.  Has anyone seen anything like this before?  Any
>  > suggestions/guesses?
>  >
>  > Thank you,
>  > Scott
>  >
>  > 15:02:17,320 ERROR [RequestCycle] Could not deserialize object using
>  > `org.apache
>  > .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object
>  > factory
>  > java.lang.RuntimeException: Could not deserialize object using
>  > `org.apache.wicke
>  > t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
>  > at
>  > org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  > 6)
>  > at
>  > org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  > zePage(AbstractPageStore.java:228)
>  > at
>  > org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  > ageStore.java:706)
>  > at
>  > org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  > (DiskPageStore.java:1218)
>  > at
>  > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  > velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
>  > at
>  > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  > velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  > at org.apache.wicket.Session.getPage(Session.java:751)
>  > at
>  > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  > edPage(AbstractRequestCycleProcessor.java:448)
>  > at
>  > org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  > equestCycleProcessor.java:139)
>  > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
>  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
>  > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
>  > at
>  > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  > 358)
>  > at
>  > org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  > a:124)
>  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  > icationFilterChain.java:290)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  > ilterChain.java:206)
>  > at
>  > com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  > erFacingClientContextFilter.java:42)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  > icationFilterChain.java:235)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  > ilterChain.java:206)
>  > at
>  > com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>  >
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  > icationFilterChain.java:235)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  > ilterChain.java:206)
>  > at
>  > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  > lter.java:96)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  > icationFilterChain.java:235)
>  > at
>  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  > ilterChain.java:206)
>  > at
>  > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  > alve.java:230)
>  > at
>  > org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
>  > alve.java:175)
>  > at
>  > org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
>  > yAssociationValve.java:179)
>  > at
>  > org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
>  > steredSessionValve.java:87)
>  > at
>  > org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteVal
>  > ve.java:84)
>  > at
>  > org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
>  > e.java:84

Re: clustering failover error

2008-03-24 Thread Scott Swank
Using the HttpSessionStore pushes this exception to JBoss.  It seems
that something in the session just can't be deserialized by a separate
jvm.

On Mon, Mar 24, 2008 at 3:54 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> We run JBoss and haven't tried this on other app servers.  Could the
>  fact that we're running Java 6 be relevant?  The specific type code in
>  the exception varies each time, and this occurs every time we fail
>  over from one node to another.
>
>  We don't a test case, but if you have a JBoss cluster we could maybe
>  send you a war.  :)
>
>  Thank you,
>  Scott
>
>
>
>
>  On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>  > Stream corrupt exceptio, invalid type code?
>  >  It seems that the byte array on that side isnt correct. Do you have a
>  >  setup/testcase for this? Do you get it on other app servers?
>  >
>  >
>  >
>  >  On 3/24/08, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  >  > 4.3.0) and we get the following exception when one node fails over to
>  >  > another node.  Has anyone seen anything like this before?  Any
>  >  > suggestions/guesses?
>  >  >
>  >  > Thank you,
>  >  > Scott
>  >  >
>  >  > 15:02:17,320 ERROR [RequestCycle] Could not deserialize object using
>  >  > `org.apache
>  >  > .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object
>  >  > factory
>  >  > java.lang.RuntimeException: Could not deserialize object using
>  >  > `org.apache.wicke
>  >  > t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  >  > at
>  >  > org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  >  > 6)
>  >  > at
>  >  > org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  >  > zePage(AbstractPageStore.java:228)
>  >  > at
>  >  > org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  >  > ageStore.java:706)
>  >  > at
>  >  > org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  >  > (DiskPageStore.java:1218)
>  >  > at
>  >  > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  > velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
>  >  > at
>  >  > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  > velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  >  > at org.apache.wicket.Session.getPage(Session.java:751)
>  >  > at
>  >  > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  >  > edPage(AbstractRequestCycleProcessor.java:448)
>  >  > at
>  >  > org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  >  > equestCycleProcessor.java:139)
>  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
>  >  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
>  >  > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
>  >  > at
>  >  > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  >  > 358)
>  >  > at
>  >  > org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  >  > a:124)
>  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  > icationFilterChain.java:290)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  > ilterChain.java:206)
>  >  > at
>  >  > com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  >  > erFacingClientContextFilter.java:42)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  > icationFilterChain.java:235)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  > ilterChain.java:206)
>  >  > at
>  >  > com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>  >  >
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  > icationFilterChain.java:235)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  > ilterChain.java:206)
>  >  > at
>  >  > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  >  > lter.java:96)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  > icationFilterChain.java:235)
>  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  > ilterChain.java:206)
>  >  > at
>  >  > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  >  > alve.java:230)
>  >  > at
>  >  > org.apac

Re: clustering failover error

2008-03-24 Thread Scott Swank
If we use ObjectOutputStream to write the session to disk we can read
it back on the same jvm.  However, a separate jvm cannot read the file
-- we get the same StreamCorruptedException.  What could be
jvm-specific?

Thank you,
Scott


On Mon, Mar 24, 2008 at 4:35 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> Using the HttpSessionStore pushes this exception to JBoss.  It seems
>  that something in the session just can't be deserialized by a separate
>  jvm.
>
>
>
>  On Mon, Mar 24, 2008 at 3:54 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  > We run JBoss and haven't tried this on other app servers.  Could the
>  >  fact that we're running Java 6 be relevant?  The specific type code in
>  >  the exception varies each time, and this occurs every time we fail
>  >  over from one node to another.
>  >
>  >  We have don't a test case, but if you have a JBoss cluster we could
>  >  maybe send you a war.  :)
>  >
>  >  Thank you,
>  >  Scott
>  >
>  >
>  >
>  >
>  >  On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner <[EMAIL PROTECTED]> 
> wrote:
>  >  > Stream corrupt exceptio, invalid type code?
>  >  >  It seems that the byte array on that side isnt correct. Do you have a
>  >  >  setup/testcase for this? Do you get it on other app servers?

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: clustering failover error

2008-03-24 Thread Igor Vaynberg
are all the nodes running identical software?

-igor


On Mon, Mar 24, 2008 at 4:52 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> If we use ObjectOutputStream to write the session to disk we can read
>  it back on the same jvm.  However, a separate jvm cannot read the file
>  -- we get the same StreamCorruptedException.  What could be
>  jvm-specific?
>
>  Thank you,
>  Scott
>
>
>
>  On Mon, Mar 24, 2008 at 4:35 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  > Using the HttpSessionStore pushes this exception to JBoss.  It seems
>  >  that something in the session just can't be deserialized by a separate
>  >  jvm.
>  >
>  >
>  >
>  >  On Mon, Mar 24, 2008 at 3:54 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  > We run JBoss and haven't tried this on other app servers.  Could the
>  >  >  fact that we're running Java 6 be relevant?  The specific type code in
>  >  >  the exception varies each time, and this occurs every time we fail
>  >  >  over from one node to another.
>  >  >
>  >  >  We have don't a test case, but if you have a JBoss cluster we could
>
> >  >  maybe send you a war.  :)
>  >  >
>  >  >  Thank you,
>  >  >  Scott
>  >  >
>  >  >
>  >  >
>  >  >
>  >  >  On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner <[EMAIL PROTECTED]> 
> wrote:
>  >  >  > Stream corrupt exceptio, invalid type code?
>  >  >  >  It seems that the byte array on that side isnt correct. Do you have 
> a
>  >  >  >  setup/testcase for this? Do you get it on other app servers?
>
>
>
> -
>  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]



Re: clustering failover error

2008-03-24 Thread Scott Swank
Seemingly yes.  If we write the session to disk, stop the jvm, restart
the jvm, and then read the session from disk  on the same server we
get this exception.

- Scott


On Mon, Mar 24, 2008 at 5:10 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> are all the nodes running identical software?
>
>  -igor
>
>
>
>
>  On Mon, Mar 24, 2008 at 4:52 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  > If we use ObjectOutputStream to write the session to disk we can read
>  >  it back on the same jvm.  However, a separate jvm cannot read the file
>  >  -- we get the same StreamCorruptedException.  What could be
>  >  jvm-specific?
>  >
>  >  Thank you,
>  >  Scott
>  >
>  >
>  >
>  >  On Mon, Mar 24, 2008 at 4:35 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  > Using the HttpSessionStore pushes this exception to JBoss.  It seems
>  >  >  that something in the session just can't be deserialized by a separate
>  >  >  jvm.
>  >  >
>  >  >
>  >  >
>  >  >  On Mon, Mar 24, 2008 at 3:54 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  >  > We run JBoss and haven't tried this on other app servers.  Could the
>  >  >  >  fact that we're running Java 6 be relevant?  The specific type code 
> in
>  >  >  >  the exception varies each time, and this occurs every time we fail
>  >  >  >  over from one node to another.
>  >  >  >
>  >  >  >  We have don't a test case, but if you have a JBoss cluster we could
>  >
>  > >  >  maybe send you a war.  :)
>  >  >  >
>  >  >  >  Thank you,
>  >  >  >  Scott
>  >  >  >
>  >  >  >
>  >  >  >
>  >  >  >
>  >  >  >  On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner <[EMAIL 
> PROTECTED]> wrote:
>  >  >  >  > Stream corrupt exceptio, invalid type code?
>  >  >  >  >  It seems that the byte array on that side isnt correct. Do you 
> have a
>  >  >  >  >  setup/testcase for this? Do you get it on other app servers?
>  >
>  >
>  >
>
>
> > -
>  >  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]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: clustering failover error

2008-03-24 Thread Matej Knopp
Couldn't missing SerialVersionUUID cause this? Doesn't seem likely
though, I'd expect much saner exception in that case.

-Matej

On Tue, Mar 25, 2008 at 3:24 AM, Scott Swank <[EMAIL PROTECTED]> wrote:
> Seemingly yes.  If we write the session to disk, stop the jvm, restart
>  the jvm, and then read the session from disk  on the same server we
>  get this exception.
>
>  - Scott
>
>
>
>
>  On Mon, Mar 24, 2008 at 5:10 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>  > are all the nodes running identical software?
>  >
>  >  -igor
>  >
>  >
>  >
>  >
>  >  On Mon, Mar 24, 2008 at 4:52 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  > If we use ObjectOutputStream to write the session to disk we can read
>  >  >  it back on the same jvm.  However, a separate jvm cannot read the file
>  >  >  -- we get the same StreamCorruptedException.  What could be
>  >  >  jvm-specific?
>  >  >
>  >  >  Thank you,
>  >  >  Scott
>  >  >
>  >  >
>  >  >
>  >  >  On Mon, Mar 24, 2008 at 4:35 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  >  > Using the HttpSessionStore pushes this exception to JBoss.  It seems
>  >  >  >  that something in the session just can't be deserialized by a 
> separate
>  >  >  >  jvm.
>  >  >  >
>  >  >  >
>  >  >  >
>  >  >  >  On Mon, Mar 24, 2008 at 3:54 PM, Scott Swank <[EMAIL PROTECTED]> 
> wrote:
>  >  >  >  > We run JBoss and haven't tried this on other app servers.  Could 
> the
>  >  >  >  >  fact that we're running Java 6 be relevant?  The specific type 
> code in
>  >  >  >  >  the exception varies each time, and this occurs every time we 
> fail
>  >  >  >  >  over from one node to another.
>  >  >  >  >
>  >  >  >  >  We have don't a test case, but if you have a JBoss cluster we 
> could
>  >  >
>  >  > >  >  maybe send you a war.  :)
>  >  >  >  >
>  >  >  >  >  Thank you,
>  >  >  >  >  Scott
>  >  >  >  >
>  >  >  >  >
>  >  >  >  >
>  >  >  >  >
>  >  >  >  >  On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner <[EMAIL 
> PROTECTED]> wrote:
>  >  >  >  >  > Stream corrupt exceptio, invalid type code?
>  >  >  >  >  >  It seems that the byte array on that side isnt correct. Do 
> you have a
>  >  >  >  >  >  setup/testcase for this? Do you get it on other app servers?
>  >  >
>  >  >
>  >  >
>  >
>  >
>  > > -
>  >  >  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]
>  >
>  >
>
>  -
>  To unsubscribe, e-mail: [EMAIL PROTECTED]
>  For additional commands, e-mail: [EMAIL PROTECTED]
>
>



-- 
Resizable and reorderable grid components.
http://www.inmethod.com

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: clustering failover error

2008-03-24 Thread James Carman
Are these nodes on the same machine or are you running different machines?

On Mon, Mar 24, 2008 at 6:15 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  4.3.0) and we get the following exception when one node fails over to
>  another node.  Has anyone seen anything like this before?  Any
>  suggestions/guesses?
>
>  Thank you,
>  Scott
>
>  15:02:17,320 ERROR [RequestCycle] Could not deserialize object using 
> `org.apache
>  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicke
>  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
> at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  6)
> at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  zePage(AbstractPageStore.java:228)
> at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  ageStore.java:706)
> at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  (DiskPageStore.java:1218)
> at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
> at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
> at org.apache.wicket.Session.getPage(Session.java:751)
> at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  edPage(AbstractRequestCycleProcessor.java:448)
> at 
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  equestCycleProcessor.java:139)
> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
> at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
> at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  358)
> at 
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  a:124)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:290)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  erFacingClientContextFilter.java:42)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:235)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:235)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  lter.java:96)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:235)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  alve.java:230)
> at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
>  alve.java:175)
> at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
>  yAssociationValve.java:179)
> at 
> org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
>  steredSessionValve.java:87)
> at 
> org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteVal
>  ve.java:84)
> at 
> org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
>  e.java:84)
> at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
>  ava:128)
> at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
>  ava:104)
> at 
> org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
>  onnectionValve.java:157)
> at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
>  ve.java:109)
> at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
>  a:241)
> at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
> at 
> org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpPro
>  tocol.java:381)
> at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(

Re: clustering failover error

2008-03-24 Thread Patrick Angeles

What kind of objects are in the session? Maybe something that's bytecode
instrumented?


Scott Swank wrote:
> 
> Seemingly yes.  If we write the session to disk, stop the jvm, restart
> the jvm, and then read the session from disk  on the same server we
> get this exception.
> 
> - Scott
> 
> 
> On Mon, Mar 24, 2008 at 5:10 PM, Igor Vaynberg <[EMAIL PROTECTED]>
> wrote:
>> are all the nodes running identical software?
>>
>>  -igor
>>
>>
>>
>>
>>  On Mon, Mar 24, 2008 at 4:52 PM, Scott Swank <[EMAIL PROTECTED]>
>> wrote:
>>  > If we use ObjectOutputStream to write the session to disk we can read
>>  >  it back on the same jvm.  However, a separate jvm cannot read the
>> file
>>  >  -- we get the same StreamCorruptedException.  What could be
>>  >  jvm-specific?
>>  >
>>  >  Thank you,
>>  >  Scott
>>  >
>>  >
>>  >
>>  >  On Mon, Mar 24, 2008 at 4:35 PM, Scott Swank <[EMAIL PROTECTED]>
>> wrote:
>>  >  > Using the HttpSessionStore pushes this exception to JBoss.  It
>> seems
>>  >  >  that something in the session just can't be deserialized by a
>> separate
>>  >  >  jvm.
>>  >  >
>>  >  >
>>  >  >
>>  >  >  On Mon, Mar 24, 2008 at 3:54 PM, Scott Swank
>> <[EMAIL PROTECTED]> wrote:
>>  >  >  > We run JBoss and haven't tried this on other app servers.  Could
>> the
>>  >  >  >  fact that we're running Java 6 be relevant?  The specific type
>> code in
>>  >  >  >  the exception varies each time, and this occurs every time we
>> fail
>>  >  >  >  over from one node to another.
>>  >  >  >
>>  >  >  >  We have don't a test case, but if you have a JBoss cluster we
>> could
>>  >
>>  > >  >  maybe send you a war.  :)
>>  >  >  >
>>  >  >  >  Thank you,
>>  >  >  >  Scott
>>  >  >  >
>>  >  >  >
>>  >  >  >
>>  >  >  >
>>  >  >  >  On Mon, Mar 24, 2008 at 3:25 PM, Johan Compagner
>> <[EMAIL PROTECTED]> wrote:
>>  >  >  >  > Stream corrupt exceptio, invalid type code?
>>  >  >  >  >  It seems that the byte array on that side isnt correct. Do
>> you have a
>>  >  >  >  >  setup/testcase for this? Do you get it on other app servers?
>>  >
>>  >
>>  >
>>
>>
>> > -
>>  >  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]
>>
>>
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/clustering-failover-error-tp16263418p16268689.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: clustering failover error

2008-03-24 Thread Igor Vaynberg
see WICKET-1445. upgrade wicket to trunk and try again.

-igor


On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  4.3.0) and we get the following exception when one node fails over to
>  another node.  Has anyone seen anything like this before?  Any
>  suggestions/guesses?
>
>  Thank you,
>  Scott
>
>  15:02:17,320 ERROR [RequestCycle] Could not deserialize object using 
> `org.apache
>  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicke
>  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
> at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  6)
> at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  zePage(AbstractPageStore.java:228)
> at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  ageStore.java:706)
> at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  (DiskPageStore.java:1218)
> at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
> at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
> at org.apache.wicket.Session.getPage(Session.java:751)
> at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  edPage(AbstractRequestCycleProcessor.java:448)
> at 
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  equestCycleProcessor.java:139)
> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
> at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
> at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  358)
> at 
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  a:124)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:290)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  erFacingClientContextFilter.java:42)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:235)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:235)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  lter.java:96)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  icationFilterChain.java:235)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  ilterChain.java:206)
> at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  alve.java:230)
> at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
>  alve.java:175)
> at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
>  yAssociationValve.java:179)
> at 
> org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
>  steredSessionValve.java:87)
> at 
> org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteVal
>  ve.java:84)
> at 
> org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
>  e.java:84)
> at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
>  ava:128)
> at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
>  ava:104)
> at 
> org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
>  onnectionValve.java:157)
> at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
>  ve.java:109)
> at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
>  a:241)
> at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
> at 
> org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpPro
>  tocol.java:381)
> at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint

Re: clustering failover error

2008-03-25 Thread Scott Swank
Thank you.  We'll give that a try and let you know the results.

On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> see WICKET-1445. upgrade wicket to trunk and try again.
>
>  -igor
>
>
>
>
>  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  >  4.3.0) and we get the following exception when one node fails over to
>  >  another node.  Has anyone seen anything like this before?  Any
>  >  suggestions/guesses?
>  >
>  >  Thank you,
>  >  Scott
>  >
>  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object using 
> `org.apache
>  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  >  java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicke
>  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object factory
>  > at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  >  6)
>  > at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  >  zePage(AbstractPageStore.java:228)
>  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  >  ageStore.java:706)
>  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  >  (DiskPageStore.java:1218)
>  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
>  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  > at org.apache.wicket.Session.getPage(Session.java:751)
>  > at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  >  edPage(AbstractRequestCycleProcessor.java:448)
>  > at 
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  >  equestCycleProcessor.java:139)
>  > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
>  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
>  > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
>  > at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  >  358)
>  > at 
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  >  a:124)
>  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  icationFilterChain.java:290)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  ilterChain.java:206)
>  > at 
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  >  erFacingClientContextFilter.java:42)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  icationFilterChain.java:235)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  ilterChain.java:206)
>  > at 
> com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>  >
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  icationFilterChain.java:235)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  ilterChain.java:206)
>  > at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  >  lter.java:96)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  icationFilterChain.java:235)
>  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  ilterChain.java:206)
>  > at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  >  alve.java:230)
>  > at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
>  >  alve.java:175)
>  > at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
>  >  yAssociationValve.java:179)
>  > at 
> org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
>  >  steredSessionValve.java:87)
>  > at 
> org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteVal
>  >  ve.java:84)
>  > at 
> org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
>  >  e.java:84)
>  > at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
>  >  ava:128)
>  > at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
>  >  ava:104)
>  > at 
> org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
>  >  onnectionValve.java:157)
>  > at 
> org.apache.catalina.core.StandardEngineValve.invoke

Re: clustering failover error

2008-03-26 Thread Scott Swank
That did not take care of our problem.  We are examining our session
to see whether it mistakenly contains some sort of cglib proxy -- our
typesafe model, or maybe something from Hibernate.

Thank you again for the help.

Scott

On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]> wrote:
> Thank you.  We'll give that a try and let you know the results.
>
>
>
>  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>  > see WICKET-1445. upgrade wicket to trunk and try again.
>  >
>  >  -igor
>  >
>  >
>  >
>  >
>  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  >  >  4.3.0) and we get the following exception when one node fails over to
>  >  >  another node.  Has anyone seen anything like this before?  Any
>  >  >  suggestions/guesses?
>  >  >
>  >  >  Thank you,
>  >  >  Scott
>  >  >
>  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object using 
> `org.apache
>  >  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> object factory
>  >  >  java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicke
>  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  >  > at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  >  >  6)
>  >  > at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  >  >  zePage(AbstractPageStore.java:228)
>  >  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  >  >  ageStore.java:706)
>  >  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  >  >  (DiskPageStore.java:1218)
>  >  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
>  >  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  >  > at org.apache.wicket.Session.getPage(Session.java:751)
>  >  > at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  >  >  edPage(AbstractRequestCycleProcessor.java:448)
>  >  > at 
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  >  >  equestCycleProcessor.java:139)
>  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
>  >  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
>  >  > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
>  >  > at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  >  >  358)
>  >  > at 
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  >  >  a:124)
>  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:290)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  >  >  erFacingClientContextFilter.java:42)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:235)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>  >  >
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:235)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  >  >  lter.java:96)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:235)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  >  >  alve.java:230)
>  >  > at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
>  >  >  alve.java:175)
>  >  > at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
>  >  >  yAssociationValve.java:179)
>  >  > at 
> org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
>  >  >  steredSessionValve.java:87)
>  >  > at 
> org.jboss.web.tomcat.service.session.JvmRouteVa

Re: clustering failover error

2008-03-27 Thread lars vonk
Hi,

Assuming you use CGLib:

CGLib classes could cause this problem, it makes sense since:

- It does not occur in a single jvm, the enhanced classes are available
there.
- It does occur when read from a different jvm *or* restarted jvm: The
enhanced classes are no longer available there.

According to the CGLib site there is a way around this. See
http://cglib.sourceforge.net/howto.html

 CGLIB and JAVA Serialization
>
> JAVA objects can be serialized to binary streams, it is used to implement
> RMI too. Serialization needs to load class before to deserialize object
> data. It is possible there is no generated class on client or server for
> unmarshaled object, but serialization lets to replace objects in stream
> (writeReplace/readResolve contract). To add "writeReplace" method to proxy
> class declare this method in interface with exact signature specified by
> JAVA serialization. Implement writeReplace in interceptor. Proxy object can
> be replaced by handle, object stream invokes "readResolve" before to
> deserialize hanle. Generate or find proxy class in "readResolve" method
> before to deserialize hanle and return proxy instance.
>

The description is a bit cryptic though But my understanding is that
when you implement the writeReplace and readResolve methods in your enhanced
class it should work.

Hopes this helps.

Lars


On Wed, Mar 26, 2008 at 5:36 PM, Scott Swank <[EMAIL PROTECTED]> wrote:

> That did not take care of our problem.  We are examining our session
> to see whether it mistakenly contains some sort of cglib proxy -- our
> typesafe model, or maybe something from Hibernate.
>
> Thank you again for the help.
>
> Scott
>
> On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]>
> wrote:
> > Thank you.  We'll give that a try and let you know the results.
> >
> >
> >
> >  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <
> [EMAIL PROTECTED]> wrote:
> >  > see WICKET-1445. upgrade wicket to trunk and try again.
> >  >
> >  >  -igor
> >  >
> >  >
> >  >
> >  >
> >  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]>
> wrote:
> >  >  > We are trying to get clustering working with Wicket 1.3.2 (on
> JBoss
> >  >  >  4.3.0) and we get the following exception when one node fails
> over to
> >  >  >  another node.  Has anyone seen anything like this before?  Any
> >  >  >  suggestions/guesses?
> >  >  >
> >  >  >  Thank you,
> >  >  >  Scott
> >  >  >
> >  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object
> using `org.apache
> >  >  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory`
> object factory
> >  >  >  java.lang.RuntimeException: Could not deserialize object using
> `org.apache.wicke
> >  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object
> factory
> >  >  > at org.apache.wicket.util.lang.Objects.byteArrayToObject(
> Objects.java:40
> >  >  >  6)
> >  >  > at
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
> >  >  >  zePage(AbstractPageStore.java:228)
> >  >  > at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
> >  >  >  ageStore.java:706)
> >  >  > at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
> >  >  >  (DiskPageStore.java:1218)
> >  >  > at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java
> :228)
> >  >  > at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
> >  >  > at org.apache.wicket.Session.getPage(Session.java:751)
> >  >  > at
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
> >  >  >  edPage(AbstractRequestCycleProcessor.java:448)
> >  >  > at
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
> >  >  >  equestCycleProcessor.java:139)
> >  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java
> :1224)
> >  >  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java
> :1330)
> >  >  > at org.apache.wicket.RequestCycle.request(
> RequestCycle.java:493)
> >  >  > at org.apache.wicket.protocol.http.WicketFilter.doGet(
> WicketFilter.java:
> >  >  >  358)
> >  >  > at org.apache.wicket.protocol.http.WicketServlet.doGet(
> WicketServlet.jav
> >  >  >  a:124)
> >  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java
> :690)
> >  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java
> :803)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:290)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
> >

Re: clustering failover error

2008-03-27 Thread lars vonk
Hi,

I did some more research (since I am intrigued by the subject) with the
following results:

- If you have enhanced cglib classes in your session and they are serialized
and later deserialized by a different jvm (for instance after restart)
you'll get a ClassNotFoundException. Since it can't find the enhanced class.
- Like the explanation on the cglib site you'll need to override the
writeReplace method in the object containing the cglib enhanced classes to
replace them with non enhanced counterparts.

Here is testcode to proof it:
==
Dummy Session object containing the cglib enhanced class
==

public class Session implements Serializable {
private static final long serialVersionUID = 7348708008236878630L;
private TestObject testObject;

public void setTestObject(TestObject testObject) {
this.testObject = testObject;
}
}
==
TestObject that will be enhanced by cglib
==
public class TestObject implements Serializable {
private static final long serialVersionUID = -5780038574171745351L;
private String text = "hallo";

public String getText() {
return text;
}
}


==
The serializer
==

import java.io.File;
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;

import net.sf.cglib.proxy.Enhancer;
import net.sf.cglib.proxy.MethodInterceptor;

public class Serializer {

static final File TEST_FILE = new File("/tmp/Session.obj");

public static void main(String[] args) throws Exception {
Enhancer enhancer = new Enhancer();
enhancer.setSuperclass(TestObject.class);
enhancer.setCallbackType(MethodInterceptor.class);
Object object = enhancer.createClass().newInstance();
TestObject testObject = TestObject.class.cast(object);

System.out.println("Text: " + testObject.getText());
if(TEST_FILE.exists()) {
System.out.println("Deleting existing file");
TEST_FILE.delete();
}
Session session = new Session();
session.setTestObject(testObject);

FileOutputStream fileOutputStream = new FileOutputStream(TEST_FILE);
ObjectOutputStream outputStream = new
ObjectOutputStream(fileOutputStream);
outputStream.writeObject(session);
outputStream.close();


if(TEST_FILE.exists()) {
System.out.println("File created!");
} else {
System.out.println("File NOT created!");

}
}

}

==
The deserializer
==
public class DeSerializer {

public static void main(String[] args) throws Exception {
if(!Serializer.TEST_FILE.exists()) {
System.out.println("Test file does not exist.");
return;
}

FileInputStream fileInputStream = new FileInputStream(
Serializer.TEST_FILE);
ObjectInputStream inputStream = new
ObjectInputStream(fileInputStream);
Object object = inputStream.readObject();
System.out.println("Object: "+ object.getClass() + " read from
disk");

}

}


If you'll first run the Serializer and then the DeSerializer you'll see the
ClassNotFoundException with a mesage something like:
TestObject$$EnhancerByCGLIB$$

If you add the following method in the Session:

private Object writeReplace() throws ObjectStreamException {
System.out.println("in write replace");
this.testObject = new TestObject();
return this;
}

And run it again it will work smoothly. The object returned by writeReplace
will actually be stored in the stream.

This does not exactly solve your problem I guess (no
StreamCorruptedException here...), but it does mean you can't have cglib
enhanced classes in your session. Or was this already a known issues?

Lars

On Thu, Mar 27, 2008 at 12:19 PM, lars vonk <[EMAIL PROTECTED]> wrote:

> Hi,
>
> Assuming you use CGLib:
>
> CGLib classes could cause this problem, it makes sense since:
>
> - It does not occur in a single jvm, the enhanced classes are available
> there.
> - It does occur when read from a different jvm *or* restarted jvm: The
> enhanced classes are no longer available there.
>
> According to the CGLib site there is a way around this. See
> http://cglib.sourceforge.net/howto.html
>
>  CGLIB and JAVA Serialization
> >
> > JAVA objects can be serialized to binary streams, it is used to
> > implement RMI too. Serialization needs to load class before to deserialize
> > object data. It is possible there is no generated class on client or server
> > for unmarshaled object, but serialization lets to replace objects in stream
> > (writeReplace/readResolve contract). To add "writeReplace" method to proxy
> > class declare this method in interface with exact signature specified by
> > JAVA s

Re: clustering failover error

2008-03-27 Thread Scott Swank
Thank you Lars, unfortunately we still haven't found any actual cglib
proxies in our session.  So it goes.

- Scott

On Thu, Mar 27, 2008 at 7:41 AM, lars vonk <[EMAIL PROTECTED]> wrote:
> Hi,
>
>  I did some more research (since I am intrigued by the subject) with the
>  following results:
>
>  - If you have enhanced cglib classes in your session and they are serialized
>  and later deserialized by a different jvm (for instance after restart)
>  you'll get a ClassNotFoundException. Since it can't find the enhanced class.
>  - Like the explanation on the cglib site you'll need to override the
>  writeReplace method in the object containing the cglib enhanced classes to
>  replace them with non enhanced counterparts.
>
>  Here is testcode to proof it:
>  ==
>  Dummy Session object containing the cglib enhanced class
>  ==
>
>  public class Session implements Serializable {
> private static final long serialVersionUID = 7348708008236878630L;
> private TestObject testObject;
>
> public void setTestObject(TestObject testObject) {
> this.testObject = testObject;
> }
>  }
>  ==
>  TestObject that will be enhanced by cglib
>  ==
>  public class TestObject implements Serializable {
> private static final long serialVersionUID = -5780038574171745351L;
> private String text = "hallo";
>
> public String getText() {
> return text;
> }
>  }
>
>
>  ==
>  The serializer
>  ==
>
>  import java.io.File;
>  import java.io.FileOutputStream;
>  import java.io.ObjectOutputStream;
>
>  import net.sf.cglib.proxy.Enhancer;
>  import net.sf.cglib.proxy.MethodInterceptor;
>
>  public class Serializer {
>
> static final File TEST_FILE = new File("/tmp/Session.obj");
>
> public static void main(String[] args) throws Exception {
> Enhancer enhancer = new Enhancer();
> enhancer.setSuperclass(TestObject.class);
> enhancer.setCallbackType(MethodInterceptor.class);
> Object object = enhancer.createClass().newInstance();
> TestObject testObject = TestObject.class.cast(object);
>
> System.out.println("Text: " + testObject.getText());
> if(TEST_FILE.exists()) {
> System.out.println("Deleting existing file");
> TEST_FILE.delete();
> }
> Session session = new Session();
> session.setTestObject(testObject);
>
> FileOutputStream fileOutputStream = new FileOutputStream(TEST_FILE);
> ObjectOutputStream outputStream = new
>  ObjectOutputStream(fileOutputStream);
> outputStream.writeObject(session);
> outputStream.close();
>
>
> if(TEST_FILE.exists()) {
> System.out.println("File created!");
> } else {
> System.out.println("File NOT created!");
>
> }
> }
>
>  }
>
>  ==
>  The deserializer
>  ==
>  public class DeSerializer {
>
> public static void main(String[] args) throws Exception {
> if(!Serializer.TEST_FILE.exists()) {
> System.out.println("Test file does not exist.");
> return;
> }
>
> FileInputStream fileInputStream = new FileInputStream(
>  Serializer.TEST_FILE);
> ObjectInputStream inputStream = new
>  ObjectInputStream(fileInputStream);
> Object object = inputStream.readObject();
> System.out.println("Object: "+ object.getClass() + " read from
>  disk");
>
> }
>
>  }
>
>
>  If you'll first run the Serializer and then the DeSerializer you'll see the
>  ClassNotFoundException with a mesage something like:
>  TestObject$$EnhancerByCGLIB$$
>
>  If you add the following method in the Session:
>
> private Object writeReplace() throws ObjectStreamException {
> System.out.println("in write replace");
> this.testObject = new TestObject();
> return this;
> }
>
>  And run it again it will work smoothly. The object returned by writeReplace
>  will actually be stored in the stream.
>
>  This does not exactly solve your problem I guess (no
>  StreamCorruptedException here...), but it does mean you can't have cglib
>  enhanced classes in your session. Or was this already a known issues?
>
>  Lars
>
>
>
>  On Thu, Mar 27, 2008 at 12:19 PM, lars vonk <[EMAIL PROTECTED]> wrote:
>
>  > Hi,
>  >
>  > Assuming you use CGLib:
>  >
>  > CGLib classes could cause this problem, it makes sense since:
>  >
>  > - It does not occur in a single jvm, the enhanced classes are available
>  > there.
>  > - It does occur when read from a different jvm *or* restarted jvm: The
>  > enhanced classes are no longer available there.
>  >
>  > According to the CGLib site there is a way around this. See
>  > http://cglib.sourceforge.net/howto.html
>

Re: clustering failover error

2008-03-27 Thread Scott Swank
We just discovered that if we use SecondLevelCacheSessionStore the
problem goes away.  From there we determined that the setting

Application.get().getPageSettings().setAutomaticMultiWindowSupport(false);

is the lynch pin.  We still don't know why this resolves the problem.

- Scott


On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]> wrote:
> Thank you.  We'll give that a try and let you know the results.
>
>
>
>  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>  > see WICKET-1445. upgrade wicket to trunk and try again.
>  >
>  >  -igor
>  >
>  >
>  >
>  >
>  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  >  >  4.3.0) and we get the following exception when one node fails over to
>  >  >  another node.  Has anyone seen anything like this before?  Any
>  >  >  suggestions/guesses?
>  >  >
>  >  >  Thank you,
>  >  >  Scott
>  >  >
>  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object using 
> `org.apache
>  >  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> object factory
>  >  >  java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicke
>  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  >  > at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  >  >  6)
>  >  > at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  >  >  zePage(AbstractPageStore.java:228)
>  >  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  >  >  ageStore.java:706)
>  >  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  >  >  (DiskPageStore.java:1218)
>  >  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
>  >  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  >  > at org.apache.wicket.Session.getPage(Session.java:751)
>  >  > at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  >  >  edPage(AbstractRequestCycleProcessor.java:448)
>  >  > at 
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  >  >  equestCycleProcessor.java:139)
>  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
>  >  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
>  >  > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
>  >  > at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
>  >  >  358)
>  >  > at 
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
>  >  >  a:124)
>  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:290)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  >  >  erFacingClientContextFilter.java:42)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:235)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
>  >  >
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:235)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
>  >  >  lter.java:96)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  >  icationFilterChain.java:235)
>  >  > at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  >  ilterChain.java:206)
>  >  > at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
>  >  >  alve.java:230)
>  >  > at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
>  >  >  alve.java:175)
>  >  > at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
>  >  >  yAssociationValve.java:179)
>  >  > at 
> org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
>  >  >  steredSessionValve.java:87)
>  >  >

Re: clustering failover error

2008-03-27 Thread Johan Compagner
what else did you use if you didnt use SLCS?
Because if you use the HttpSessionStore then we dont do anything with
serialization..
Thats all tomcat or app container itself

johan

On Thu, Mar 27, 2008 at 6:01 PM, Scott Swank <[EMAIL PROTECTED]> wrote:

> We just discovered that if we use SecondLevelCacheSessionStore the
> problem goes away.  From there we determined that the setting
>
> Application.get().getPageSettings().setAutomaticMultiWindowSupport(false);
>
> is the lynch pin.  We still don't know why this resolves the problem.
>
> - Scott
>
>
> On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]>
> wrote:
> > Thank you.  We'll give that a try and let you know the results.
> >
> >
> >
> >  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <
> [EMAIL PROTECTED]> wrote:
> >  > see WICKET-1445. upgrade wicket to trunk and try again.
> >  >
> >  >  -igor
> >  >
> >  >
> >  >
> >  >
> >  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]>
> wrote:
> >  >  > We are trying to get clustering working with Wicket 1.3.2 (on
> JBoss
> >  >  >  4.3.0) and we get the following exception when one node fails
> over to
> >  >  >  another node.  Has anyone seen anything like this before?  Any
> >  >  >  suggestions/guesses?
> >  >  >
> >  >  >  Thank you,
> >  >  >  Scott
> >  >  >
> >  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object
> using `org.apache
> >  >  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory`
> object factory
> >  >  >  java.lang.RuntimeException: Could not deserialize object using
> `org.apache.wicke
> >  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object
> factory
> >  >  > at org.apache.wicket.util.lang.Objects.byteArrayToObject(
> Objects.java:40
> >  >  >  6)
> >  >  > at
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
> >  >  >  zePage(AbstractPageStore.java:228)
> >  >  > at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
> >  >  >  ageStore.java:706)
> >  >  > at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
> >  >  >  (DiskPageStore.java:1218)
> >  >  > at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java
> :228)
> >  >  > at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
> >  >  > at org.apache.wicket.Session.getPage(Session.java:751)
> >  >  > at
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
> >  >  >  edPage(AbstractRequestCycleProcessor.java:448)
> >  >  > at
> org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
> >  >  >  equestCycleProcessor.java:139)
> >  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java
> :1224)
> >  >  > at org.apache.wicket.RequestCycle.steps(RequestCycle.java
> :1330)
> >  >  > at org.apache.wicket.RequestCycle.request(
> RequestCycle.java:493)
> >  >  > at org.apache.wicket.protocol.http.WicketFilter.doGet(
> WicketFilter.java:
> >  >  >  358)
> >  >  > at org.apache.wicket.protocol.http.WicketServlet.doGet(
> WicketServlet.jav
> >  >  >  a:124)
> >  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java
> :690)
> >  >  > at javax.servlet.http.HttpServlet.service(HttpServlet.java
> :803)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:290)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at
> com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
> >  >  >  erFacingClientContextFilter.java:42)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:235)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at com.vegas.ui.filter.HibernateFilter.doFilter(
> HibernateFilter.java:37)
> >  >  >
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:235)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter
> (ReplyHeaderFi
> >  >  >  lter.java:96)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:235)
> >  >  > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at org.apache.catalina.core.StandardWrapperValve.invoke
> 

Re: clustering failover error

2008-03-27 Thread Scott Swank
So that at least eliminates the possibility that cglib is somehow involved.

On Thu, Mar 27, 2008 at 5:33 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> Here's a simple example that reproduces the problem on fail-over, also
>  for 1.2.  All we really need is to have something in the session and
>  we get the error.
>
>
>
>  On Thu, Mar 27, 2008 at 12:18 PM, Johan Compagner <[EMAIL PROTECTED]> wrote:
>  > what else did you use if you didnt use SLCS?
>  >  Because if you use the HttpSessionStore then we dont do anything with
>  >  serialization..
>  >  Thats all tomcat or app container itself
>  >
>  >  johan
>  >
>  >
>  >
>  >  On Thu, Mar 27, 2008 at 6:01 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  >
>  >  > We just discovered that if we use SecondLevelCacheSessionStore the
>  >  > problem goes away.  From there we determined that the setting
>  >  >
>  >  > 
> Application.get().getPageSettings().setAutomaticMultiWindowSupport(false);
>  >  >
>  >  > is the lynch pin.  We still don't know why this resolves the problem.
>  >  >
>  >  > - Scott
>  >  >
>  >  >
>  >  > On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]>
>  >  > wrote:
>  >  > > Thank you.  We'll give that a try and let you know the results.
>  >  > >
>  >  > >
>  >  > >
>  >  > >  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <
>  >  > [EMAIL PROTECTED]> wrote:
>  >  > >  > see WICKET-1445. upgrade wicket to trunk and try again.
>  >  > >  >
>  >  > >  >  -igor
>  >  > >  >
>  >  > >  >
>  >  > >  >
>  >  > >  >
>  >  > >  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]>
>  >  > wrote:
>  >  > >  >  > We are trying to get clustering working with Wicket 1.3.2 (on
>  >  > JBoss
>  >  > >  >  >  4.3.0) and we get the following exception when one node fails
>  >  > over to
>  >  > >  >  >  another node.  Has anyone seen anything like this before?  Any
>  >  > >  >  >  suggestions/guesses?
>  >  > >  >  >
>  >  > >  >  >  Thank you,
>  >  > >  >  >  Scott
>  >  > >  >  >
>  >  > >  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object
>  >  > using `org.apache
>  >  > >  >  >  
> .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory`
>  >  > object factory
>  >  > >  >  >  java.lang.RuntimeException: Could not deserialize object using
>  >  > `org.apache.wicke
>  >  > >  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> object
>  >  > factory
>  >  > >  >  > at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(
>  >  > Objects.java:40
>  >  > >  >  >  6)
>  >  > >  >  > at
>  >  > org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  >  > >  >  >  zePage(AbstractPageStore.java:228)
>  >  > >  >  > at
>  >  > org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  >  > >  >  >  ageStore.java:706)
>  >  > >  >  > at
>  >  > org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  >  > >  >  >  (DiskPageStore.java:1218)
>  >  > >  >  > at
>  >  > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  > >  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java
>  >  > :228)
>  >  > >  >  > at
>  >  > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  >  > >  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  >  > >  >  > at org.apache.wicket.Session.getPage(Session.java:751)
>  >  > >  >  > at
>  >  > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  >  > >  >  >  edPage(AbstractRequestCycleProcessor.java:448)
>  >  > >  >  > at
>  >  > org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
>  >  > >  >  >  equestCycleProcessor.java:139)
>  >  > >  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java
>  >  > :1224)
>  >  > >  >  > at 
> org.apache.wicket.RequestCycle.steps(RequestCycle.java
>  >  > :1330)
>  >  > >  >  > at org.apache.wicket.RequestCycle.request(
>  >  > RequestCycle.java:493)
>  >  > >  >  > at org.apache.wicket.protocol.http.WicketFilter.doGet(
>  >  > WicketFilter.java:
>  >  > >  >  >  358)
>  >  > >  >  > at org.apache.wicket.protocol.http.WicketServlet.doGet(
>  >  > WicketServlet.jav
>  >  > >  >  >  a:124)
>  >  > >  >  > at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java
>  >  > :690)
>  >  > >  >  > at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java
>  >  > :803)
>  >  > >  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
>  >  > >  >  >  icationFilterChain.java:290)
>  >  > >  >  > at
>  >  > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
>  >  > >  >  >  ilterChain.java:206)
>  >  > >  >  > at
>  >  > com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
>  >  > >  >  >  erFacingClientContextFilter.java:42)
>  >  > >  >  >   

Re: clustering failover error

2008-03-27 Thread David Leangen

Glad it works for you.

Tried what you said below, but doesn't solve my problem.


http://www.nabble.com/Finding-the-cause-of-an-Exception-td16088387.html#a16112402



On Thu, 2008-03-27 at 10:01 -0700, Scott Swank wrote:
> We just discovered that if we use SecondLevelCacheSessionStore the
> problem goes away.  From there we determined that the setting
> 
> Application.get().getPageSettings().setAutomaticMultiWindowSupport(false);
> 
> is the lynch pin.  We still don't know why this resolves the problem.
> 
> - Scott
> 
> 
> On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]> wrote:
> > Thank you.  We'll give that a try and let you know the results.
> >
> >
> >
> >  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> >  > see WICKET-1445. upgrade wicket to trunk and try again.
> >  >
> >  >  -igor
> >  >
> >  >
> >  >
> >  >
> >  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]> wrote:
> >  >  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
> >  >  >  4.3.0) and we get the following exception when one node fails over to
> >  >  >  another node.  Has anyone seen anything like this before?  Any
> >  >  >  suggestions/guesses?
> >  >  >
> >  >  >  Thank you,
> >  >  >  Scott
> >  >  >
> >  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object using 
> > `org.apache
> >  >  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> > object factory
> >  >  >  java.lang.RuntimeException: Could not deserialize object using 
> > `org.apache.wicke
> >  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> > factory
> >  >  > at 
> > org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
> >  >  >  6)
> >  >  > at 
> > org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
> >  >  >  zePage(AbstractPageStore.java:228)
> >  >  > at 
> > org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
> >  >  >  ageStore.java:706)
> >  >  > at 
> > org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
> >  >  >  (DiskPageStore.java:1218)
> >  >  > at 
> > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
> >  >  > at 
> > org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
> >  >  > at org.apache.wicket.Session.getPage(Session.java:751)
> >  >  > at 
> > org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
> >  >  >  edPage(AbstractRequestCycleProcessor.java:448)
> >  >  > at 
> > org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebR
> >  >  >  equestCycleProcessor.java:139)
> >  >  > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1224)
> >  >  > at 
> > org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
> >  >  > at 
> > org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
> >  >  > at 
> > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:
> >  >  >  358)
> >  >  > at 
> > org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.jav
> >  >  >  a:124)
> >  >  > at 
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> >  >  > at 
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:290)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at 
> > com.vegas.ui.filter.CustomerFacingClientContextFilter.doFilter(Custom
> >  >  >  erFacingClientContextFilter.java:42)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:235)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at 
> > com.vegas.ui.filter.HibernateFilter.doFilter(HibernateFilter.java:37)
> >  >  >
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:235)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at 
> > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
> >  >  >  lter.java:96)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >  >  >  icationFilterChain.java:235)
> >  >  > at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >  >  >  ilterChain.java:206)
> >  >  > at 
> > org.apache.cat

Re: clustering failover error

2008-03-27 Thread Scott Swank
My e-mail with attached an attached test case jar didn't go through.
With the following simple application & page we get the exception on
failover.


WicketTestApplication.java
---
package com.vegas.wicket_test;

import org.apache.wicket.protocol.http.HttpSessionStore;
import org.apache.wicket.protocol.http.WebApplication;
import org.apache.wicket.session.ISessionStore;

public class WicketTestApplication extends WebApplication
{
public WicketTestApplication()
{
super();
}

@Override
public Class getHomePage()
{
return TestPage.class;
}

@Override
protected ISessionStore newSessionStore()
{
return new HttpSessionStore(this);
}

@Override
protected void init()
{
super.init();
}
}


TestPage.java
---
package com.vegas.wicket_test;

import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.model.PropertyModel;

public class TestPage extends WebPage
{
private static final long serialVersionUID = 1L;

private String stuff = "";

public TestPage()
{
System.err.println("HERE");

add(new Link("testLink")
{
private static final long serialVersionUID = 1L;

@Override
public void onClick()
{
stuff = "saved stuff";
}

});
add(new Label("stuffTxt", new PropertyModel(this, "stuff")));
}

public String getStuff()
{
return stuff;
}
}



TestPage.html
---



Click this




On Thu, Mar 27, 2008 at 6:10 PM, David Leangen <[EMAIL PROTECTED]> wrote:
>
>  Glad it works for you.
>
>  Tried what you said below, but doesn't solve my problem.
>
>
>  
> http://www.nabble.com/Finding-the-cause-of-an-Exception-td16088387.html#a16112402
>
>
>
>
>
>  On Thu, 2008-03-27 at 10:01 -0700, Scott Swank wrote:
>  > We just discovered that if we use SecondLevelCacheSessionStore the
>  > problem goes away.  From there we determined that the setting
>  >
>  > Application.get().getPageSettings().setAutomaticMultiWindowSupport(false);
>  >
>  > is the lynch pin.  We still don't know why this resolves the problem.
>  >
>  > - Scott
>  >
>  >
>  > On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]> wrote:
>  > > Thank you.  We'll give that a try and let you know the results.
>  > >
>  > >
>  > >
>  > >  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg <[EMAIL PROTECTED]> 
> wrote:
>  > >  > see WICKET-1445. upgrade wicket to trunk and try again.
>  > >  >
>  > >  >  -igor
>  > >  >
>  > >  >
>  > >  >
>  > >  >
>  > >  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank <[EMAIL PROTECTED]> 
> wrote:
>  > >  >  > We are trying to get clustering working with Wicket 1.3.2 (on JBoss
>  > >  >  >  4.3.0) and we get the following exception when one node fails 
> over to
>  > >  >  >  another node.  Has anyone seen anything like this before?  Any
>  > >  >  >  suggestions/guesses?
>  > >  >  >
>  > >  >  >  Thank you,
>  > >  >  >  Scott
>  > >  >  >
>  > >  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object 
> using `org.apache
>  > >  >  >  .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` 
> object factory
>  > >  >  >  java.lang.RuntimeException: Could not deserialize object using 
> `org.apache.wicke
>  > >  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object 
> factory
>  > >  >  > at 
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
>  > >  >  >  6)
>  > >  >  > at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
>  > >  >  >  zePage(AbstractPageStore.java:228)
>  > >  >  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
>  > >  >  >  ageStore.java:706)
>  > >  >  > at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
>  > >  >  >  (DiskPageStore.java:1218)
>  > >  >  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  > >  >  >  velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
>  > >  >  > at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
>  > >  >  >  velCachePageMap.get(SecondLevelCacheSessionStore.java:296)
>  > >  >  > at org.apache.wicket.Session.getPage(Session.java:751)
>  > >  >  > at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRender
>  > >  >  >  edPage(AbstractRequestCycleProcessor.java:448)
>  > >  >  > at 
> org.apache.wicket.protocol.http.WebRequestCycleProc

Re: clustering failover error

2008-03-28 Thread Johan Compagner
Thats really odd. Because what is so special abot that??
Maybe our special page handling is something that upsets the normal or
app server serialization. Can you add a quickstart then with this code
in jira?

On 3/28/08, Scott Swank <[EMAIL PROTECTED]> wrote:
> My e-mail with attached an attached test case jar didn't go through.
> With the following simple application & page we get the exception on
> failover.
>
>
> WicketTestApplication.java
> ---
> package com.vegas.wicket_test;
>
> import org.apache.wicket.protocol.http.HttpSessionStore;
> import org.apache.wicket.protocol.http.WebApplication;
> import org.apache.wicket.session.ISessionStore;
>
> public class WicketTestApplication extends WebApplication
> {
>   public WicketTestApplication()
>   {
>   super();
>   }
>
>   @Override
>   public Class getHomePage()
>   {
>   return TestPage.class;
>   }
>
>   @Override
>   protected ISessionStore newSessionStore()
>   {
>   return new HttpSessionStore(this);
>   }
>
>   @Override
>   protected void init()
>   {
>   super.init();
>   }
> }
>
>
> TestPage.java
> ---
> package com.vegas.wicket_test;
>
> import org.apache.wicket.markup.html.WebPage;
> import org.apache.wicket.markup.html.basic.Label;
> import org.apache.wicket.markup.html.link.Link;
> import org.apache.wicket.model.PropertyModel;
>
> public class TestPage extends WebPage
> {
>   private static final long serialVersionUID = 1L;
>
>   private String stuff = "";
>
>   public TestPage()
>   {
>   System.err.println("HERE");
>   
>   add(new Link("testLink")
>   {
>   private static final long serialVersionUID = 1L;
>
>   @Override
>   public void onClick()
>   {
>   stuff = "saved stuff";
>   }
>
>   });
>   add(new Label("stuffTxt", new PropertyModel(this, "stuff")));
>   }
>
>   public String getStuff()
>   {
>   return stuff;
>   }
> }
>
>
>
> TestPage.html
> ---
> 
>   
>   
>   Click this
>   
> 
>
>
> On Thu, Mar 27, 2008 at 6:10 PM, David Leangen <[EMAIL PROTECTED]> wrote:
> >
> >  Glad it works for you.
> >
> >  Tried what you said below, but doesn't solve my problem.
> >
> >
> >
> http://www.nabble.com/Finding-the-cause-of-an-Exception-td16088387.html#a16112402
> >
> >
> >
> >
> >
> >  On Thu, 2008-03-27 at 10:01 -0700, Scott Swank wrote:
> >  > We just discovered that if we use SecondLevelCacheSessionStore the
> >  > problem goes away.  From there we determined that the setting
> >  >
> >  >
> Application.get().getPageSettings().setAutomaticMultiWindowSupport(false);
> >  >
> >  > is the lynch pin.  We still don't know why this resolves the problem.
> >  >
> >  > - Scott
> >  >
> >  >
> >  > On Tue, Mar 25, 2008 at 9:55 AM, Scott Swank <[EMAIL PROTECTED]>
> wrote:
> >  > > Thank you.  We'll give that a try and let you know the results.
> >  > >
> >  > >
> >  > >
> >  > >  On Mon, Mar 24, 2008 at 11:43 PM, Igor Vaynberg
> <[EMAIL PROTECTED]> wrote:
> >  > >  > see WICKET-1445. upgrade wicket to trunk and try again.
> >  > >  >
> >  > >  >  -igor
> >  > >  >
> >  > >  >
> >  > >  >
> >  > >  >
> >  > >  >  On Mon, Mar 24, 2008 at 3:15 PM, Scott Swank
> <[EMAIL PROTECTED]> wrote:
> >  > >  >  > We are trying to get clustering working with Wicket 1.3.2 (on
> JBoss
> >  > >  >  >  4.3.0) and we get the following exception when one node fails
> over to
> >  > >  >  >  another node.  Has anyone seen anything like this before?  Any
> >  > >  >  >  suggestions/guesses?
> >  > >  >  >
> >  > >  >  >  Thank you,
> >  > >  >  >  Scott
> >  > >  >  >
> >  > >  >  >  15:02:17,320 ERROR [RequestCycle] Could not deserialize object
> using `org.apache
> >  > >  >  >
> .wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory` object
> factory
> >  > >  >  >  java.lang.RuntimeException: Could not deserialize object using
> `org.apache.wicke
> >  > >  >  >  t.util.io.IObjectStreamFactory$DefaultObjectStreamFactory`
> object factory
> >  > >  >  > at
> org.apache.wicket.util.lang.Objects.byteArrayToObject(Objects.java:40
> >  > >  >  >  6)
> >  > >  >  > at
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.deseriali
> >  > >  >  >  zePage(AbstractPageStore.java:228)
> >  > >  >  > at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.getPage(DiskP
> >  > >  >  >  ageStore.java:706)
> >  > >  >  > at
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.convertToPage
> >  > >  >  >  (DiskPageStore.java:1218)
> >  > >  >  > at
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLe
> >  > >  >  >
> velCachePageMap.getLastPage(SecondLevelCacheSessionStore.java:228)
> >  > >  >  > at
> org.apa