Re: [Wicket-user] form.class - findSubmittingButton() - runtime e xception - any su ggestions?

2007-06-20 Thread Seldon, Richard
Thanks for response igor.  In answer to your question,  yes we've overridden
isVisible to be of form :-
 
public boolean isVisible() {

return getXXX() != null;

}

where getXXX() might be getModelObject() or some other instance variable etc
whose presence would mean data values successfully returned (from a
synchronous service locate method call etc). we use this idiom quite a bit
in the codebase for switching visibility between composite page components.

Just to be more specific regarding my ambiguous description below (this
would tally with our code that does call isVisible() as part of the
submission process)...
: we do NOT call the isVisible() method directly but let the wicket
framework handle that - we just override the method itself as outlined
above.

Appreciate there isn't much info to work with on this - i can't reproduce in
my development environment. this appears when using load runner scripts.

Rich.

 

 

 

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Igor Vaynberg
Sent: 19 June 2007 18:34
To: wicket-user@lists.sourceforge.net
Subject: Re: [Wicket-user] form.class - findSubmittingButton() - runtime
exception - any su ggestions?


did you override isvisible(), if so what does that look like?

-igor



On 6/19/07, Seldon, Richard   mailto:[EMAIL PROTECTED]
[EMAIL PROTECTED] wrote: 


Have been using Wicket as part of large SOA project for some time - version 
1.2.4. Running our code during development phase using Wepshere application
developer (WID) environments had no probs, wicket has performed v.well.

We are in model office stages of dev for release 1. We're using load runner 
for load testing and getting a frequent WicketRuntimeException (please see
snippet below where xxx refers to specific wicket impl. component ids) :-

008a RequestCycle  E wicket.RequestCycle step Submit Button xxx 
(path=theForm:xxx) is not visible
 wicket.WicketRuntimeException: Submit
Button xxx (path=theForm:xxx) is not visible
at wicket.markup.html.form.Form$5.component(Form.java (Compiled
Code))
at
wicket.MarkupContainer.visitChildren(MarkupContainer.java(Compiled Code))
at wicket.markup.html.form.Form.findSubmittingButton(Form.java:583)


Think this problem ultimately surfaces because somehow the visibility of 
the submitting button has been toggled from visible to invisible before the
form child visitor has had a chance to actually find the submitting button
to perform required subsequent invocation... this would tally with our code 
that does call isVisible() as part of the submission process but...

This same symptom appears in several parts of our app using similar code
(different wicket components)
How would the visibility call manage to be invoked before the 
findSubmittingButton() method has been invoked?
Is it more likely somewhere we've got an error in our load scripts?

Any ideas much appreciated.
Cheers, Rich.



FYI only - code where runtime exception actually raised in 
findSubmittingButton() given below...

if (!button.isVisible())
{
throw new WicketRuntimeException(Submit Button  +
button.getInputName()
+  (path= + button.getPageRelativePath () + ) is not
visible);
}


This e-mail (and any attachments) may contain privileged and/or confidential
information. If you are not the intended recipient please do not disclose,
copy, distribute, disseminate or take any action in reliance on it. If you
have received this message in error please reply and tell us and then delete
it. Should you wish to communicate with us by e-mail we cannot guarantee the
security of any data outside our own computer systems. For the protection of
Legal  General's systems and staff, incoming emails will be automatically
scanned. 

Any information contained in this message may be subject to applicable terms
and conditions and must not be construed as giving investment advice within
or outside the United Kingdom.

The following companies are subsidiary companies of the Legal  General
Group Plc which are authorised and regulated by the Financial Services
Authority for advising and arranging the products shown: Legal  General
Partnership Services Limited (insurance and mortgages), Legal  General
Insurance Limited (insurance), Legal  General Assurance Society Limited 
(life assurance, pensions and investments), Legal  General Unit Trust
Managers Limited and Legal  General Portfolio Management Services Limited
(investments).

They are registered in England under numbers shown. 
The registered office is Temple Court, 11 Queen Victoria Street, London EC4N
4TP.

Legal  General Partnership Services Limited: 5045000 Legal  General
Assurance Society Limited: 166055 Legal  General (Unit Trust Managers)
Limited: 1009418 Legal  General (Portfolio Management Services) Limited:
2457525 Legal  General Insurance Limited: 423930 

They are registered with the Financial Services Authority under numbers
shown. 

Re: [Wicket-user] form.class - findSubmittingButton() - runtime e xception - any su ggestions?

2007-06-20 Thread Timo Rantalaiho
On Wed, 20 Jun 2007, Seldon, Richard wrote:
 Thanks for response igor.  In answer to your question,  yes we've overridden
 isVisible to be of form :-
  
 public boolean isVisible() {
 
 return getXXX() != null;
 
 }

isVisible() can be called several times during the request 
cycle. One optimization (?) that you could try would be to 
leave isVisible without overriding and do

@Override
public void onBeforeRender() {
setVisible(getXXX() != null);
super.onBeforeRender();
}

instead.

It's hard to say if this would affect your case, it would be 
interesting to understand better why your issue only occurs 
in load testing. Could it be an issue of state being 
shared incorrectly between concurrent requests? Do your 
load test users have separate HTTP sessions?

- Timo

-- 
Timo Rantalaiho   
Reaktor Innovations OyURL: http://www.ri.fi/ 

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] form.class - findSubmittingButton() - runtime e xception - any su ggestions?

2007-06-20 Thread Igor Vaynberg

yes, that is what i was going to suggest as well.

from the stack trace in the orig email it looks like your submit button's
isvisible() doesnt work quiet right.

it returns true when the form renders, but returns false _while_ the form is
being processed, so wicket thinks that you somehow pressed a button that
wasnt rendererd - since it expects that value to be consistent between
rendering and submitting.

-igor


On 6/20/07, Timo Rantalaiho [EMAIL PROTECTED] wrote:


On Wed, 20 Jun 2007, Seldon, Richard wrote:
 Thanks for response igor.  In answer to your question,  yes we've
overridden
 isVisible to be of form :-

 public boolean isVisible() {

 return getXXX() != null;

 }

isVisible() can be called several times during the request
cycle. One optimization (?) that you could try would be to
leave isVisible without overriding and do

@Override
public void onBeforeRender() {
setVisible(getXXX() != null);
super.onBeforeRender();
}

instead.

It's hard to say if this would affect your case, it would be
interesting to understand better why your issue only occurs
in load testing. Could it be an issue of state being
shared incorrectly between concurrent requests? Do your
load test users have separate HTTP sessions?

- Timo

--
Timo Rantalaiho
Reaktor Innovations OyURL: http://www.ri.fi/ 

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user