OK, here's what I can surmise thus far:

   - Only 'wicket:interface' JS requests - from 'onchange' Ajax validator or
   from a SubmitLink-initiated form submission trigger the exception
   - the form being submitted or validated is in a couple of pages but *never
   *in *StateProgramDetailsPage*
   - the exceptions thrown only cites *StateProgramDetailsPage*
   - pages are mounted using HybridURLCodingStrategy and have a common
   (concrete) super class
   - in all wicket:interface requests resulting in the exception: pageId =
   0; 'version' is always empty (thus wicket defaults to 0)

So, in summary, *sometimes* form component Ajax validation or non-Ajax form
submission wicket:interface POST requests results in retrieval of the
incorrect page - StateProgramDetailsPage - from PageMap. Consequently, the
exceptions are thrown. I would appreciate any general thoughts, but also
answers to these questions (to help us understand what goes on under the
hood):

   - What logs should we enable to see why an ajax wicket:interface from one
   page resolves to another page?
   - Does Wicket Ever manually write out JSESSIONID? In 'wicket:interface'
   requests specifically? or is that left up to the servlet container?
   - What is PageMap's scope - one per HttpSession?
   - What's 'urlDepth'?
   - What's the lifecycle of a IRequestCycleProcessor
   and IRequestCodingStrategy? Is newXXX called only once per app?
   - If we wanted to rule out DiskPageStore by installing an in-memory page
   store instead how can we do so? Implement own IPageStore?

*


*

*Request 1*
*

10.242.46.21 - - [20/Mar/2010:17:41:09 -0400] "POST
/?wicket:interface=:0:EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:submitLink::IActivePageBehaviorListener:0:10&wicket:ignoreIfNotActive=true&random=0.04114457813227995
HTTP/1.1" 200 161
"http://rebatefinder.ecorebates.com/embedded/form/category/style/vertical/siteId/sears/adCell/W4/layout/vertical.0;jsessionid=9F0B9124A90DB552A38D2F8E6476F814";
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0;
GTB6.4; .NET CLR 1.1.4322)"

Exception 1

Caused by: org.apache.wicket.WicketRuntimeException: component
EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:submitLink
not found on page
com.castanealabs.gui.interactivemap.StateProgramDetailsPage[id = 0],
listener interface = [RequestListenerInterface
name=IActivePageBehaviorListener, method=public abstract void
org.apache.wicket.behavior.IBehaviorListener.onRequest()]
        at 
org.apache.wicket.request.AbstractRequestCycleProcessor.resolveListenerInterfaceTarget(AbstractRequestCycleProcessor.java:426)
        at 
org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:471)

Request 2

10.242.46.21 - - [20/Mar/2010:17:39:07 -0400] "POST
/?wicket:interface=:0:EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:zipCodeComponent:zipCode::IBehaviorListener:1:10&random=0.46530282930252486
HTTP/1.1" 200 161
"http://rebatefinder.ecorebates.com/embedded/form/category/style/vertical/siteId/sears/adCell/W4/layout/vertical.0;jsessionid=C767AD19F2AD165C8F4F7F00C337D385";
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0;
SLCC1; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; msn
OptimizedIE8;ENUS)"

Exception 2

*

Caused by: org.apache.wicket.WicketRuntimeException: component
EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:zipCodeComponent:zipCode
not found on page
com.castanealabs.gui.interactivemap.StateProgramDetailsPage[id = 0],
listener interface = [RequestListenerInterface name=IBehaviorListener,
method=public abstract void
org.apache.wicket.behavior.IBehaviorListener.onRequest()]
        at 
org.apache.wicket.request.AbstractRequestCycleProcessor.resolveListenerInterfaceTarget(AbstractRequestCycleProcessor.java:426)
        at 
org.apache.wicket.request.AbstractRequestCycleProcessor.resolveRenderedPage(AbstractRequestCycleProcessor.java:471)
        at 
org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:144)
        ... 21 more

On Sat, Mar 20, 2010 at 1:30 PM, Igor Vaynberg <igor.vaynb...@gmail.com>wrote:

> i doubt its the diskstore since you are the only one seeing this problem.
>
> is this happening on multiple pages or just a particular one?
>
> -igor
>
> On Sat, Mar 20, 2010 at 10:34 AM, Nikita Tovstoles
> <nikita.tovsto...@gmail.com> wrote:
> > I wonder if this is a serialization problem:
> >
> > the following request:
> >
> > 10.242.46.21 - - [20/Mar/2010:13:04:19 -0400] "POST
> >
> /?wicket:interface=:0:EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:zipCodeComponent:zipCode::IBehaviorListener:1:10&random=0.014624584217842351
> > HTTP/1.1" 200 161
> >
> >
> > results in this exception:
> >
> > Caused by: org.apache.wicket.WicketRuntimeException: component
> >
> EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:zipCodeComponent:zipCode
> > not found on page
> > com.castanealabs.gui.interactivemap.*StateProgramDetailsPage*[id = 0],
> > listener interface = [RequestListenerInterface name=IBehaviorListener,
> > method=public abstract void
> > org.apache.wicket.behavior.IBehaviorListener.onRequest()]
> >        at
> org.apache.wicket.request.AbstractRequestCycleProcessor.resolveListenerInterfaceTarget(AbstractRequestCycleProcessor.java:426)
> >
> >
> > The problem is, *StateProgramDetailsPage indeed does not contain a
> > EmbeddedCategoryCriteriaPanel in its' hierarchy. So why did wicket decide
> > that it does? The is another page class that does contain a
> > EmbeddedCategoryCriteriaPanel.
> > That class shares a concrete superclass with StateProgramDetailsPage
> class.
> > That superclass defines a serialVersionUID. *
> > *
> > *
> > *It appears that DiskPageStore is loading instance of the wrong page
> class.
> > Not sure why... could the fact that the classes share a common superclass
> > with a serialVersionUID  be the reason? Doubt it but have no other ideas
> at
> > the moment.*
> > *
> > *
> > *
> > *
> > Aside: Is there such a thing as an in-memory IPageStore impl (as a
> band-aid
> > at least...)
> >
> > On Sat, Mar 20, 2010 at 10:11 AM, Nikita Tovstoles <
> > nikita.tovsto...@gmail.com> wrote:
> >
> >> We're suddenly seeing a fair number of exceptions like one below.
> Thought
> >> the root cause is failing session affinity in our clusters, but the
> >> exceptions persist even after we shut down all but one host behind
> HAProxy.
> >> I realize the question is somewhat ambiguous, but what - besides lack of
> >> session affinity - can be some other causes of these exceptions?
> >>
> >> thanks
> >> -nikita
> >>
> >> 12:56:37,612 ERROR RequestCycle:1521 - submitted http post value
> [check3] for CheckGroup component
> [0:EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:brandsComponent:brands]
> contains an illegal relative path element [check3] which does not point to a
> Check component. Due to this the CheckGroup component cannot resolve the
> selected Check component pointed to by the illegal value. A possible reason
> is that componment hierarchy changed between rendering and form submission.
> >> org.apache.wicket.WicketRuntimeException: submitted http post value
> [check3] for CheckGroup component
> [0:EmbeddedCategoryCriteriaPanel:inputPanel:categorySearchForm:brandsComponent:brands]
> contains an illegal relative path element [check3] which does not point to a
> Check component. Due to this the CheckGroup component cannot resolve the
> selected Check component pointed to by the illegal value. A possible reason
> is that componment hierarchy changed between rendering and form submission.
> >>       at
> org.apache.wicket.markup.html.form.CheckGroup.convertValue(CheckGroup.java:136)
> >>       at
> org.apache.wicket.markup.html.form.CheckGroup.convertValue(CheckGroup.java:58)
> >>       at
> org.apache.wicket.markup.html.form.FormComponent.convertInput(FormComponent.java:1301)
> >>       at
> org.apache.wicket.markup.html.form.FormComponent.validate(FormComponent.java:1192)
> >>       at
> org.apache.wicket.markup.html.form.Form$22.validate(Form.java:2132)
> >>       at
> org.apache.wicket.markup.html.form.Form$ValidationVisitor.formComponent(Form.java:171)
> >>       at
> org.apache.wicket.markup.html.form.FormComponent.visitFormComponentsPostOrderHelper(FormComponent.java:441)
> >>
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>

Reply via email to