alrighty

the problem is in page.renderpage()

       // First, give priority to IFeedback instances, as they have to
       // collect their messages before components like ListViews
       // remove any child components
       visitChildren(IFeedback.class, new IVisitor()  {...
               ((IFeedback)component).updateFeedback();
               component.internalAttach();
               return IVisitor.CONTINUE_TRAVERSAL;
       ...});

       if (this instanceof IFeedback) { ((IFeedback)this).updateFeedback();
}

       // Now, do the initialization for the other components
       internalAttach();

i dont really understand the usecase that is described by the comment above,
but i guess there is a reason why messages are collected before components
are attached.

also seems to me we might be attaching components that implement IFeedback
twice a request, which is another problem.

thoughts?

-igor



On 11/16/06, Erik Brakkee <[EMAIL PROTECTED]> wrote:



On 11/15/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
>
> could you attach the proper index.java or the quickstart?


Oops, you're right. I attached the wrong file.

Here is the complete zip again.

-igor
>
>
> On 11/15/06, Erik Brakkee < [EMAIL PROTECTED] > wrote:
> >
> > On 11/14/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> > >
> > > just rename the .zip into .iamzip :)
> >
> >
> > Ok, didn't think of that.
> >
> > Anyway, what do you think of the example. Is it a valid example or am
> > I solving the problem in the wrong way?
> >
> >  -igor
> > >
> > >
> > > On 11/14/06, Erik Brakkee < [EMAIL PROTECTED]> wrote:
> > > >
> > > > On 11/13/06, Igor Vaynberg < [EMAIL PROTECTED] > wrote:
> > > > > why dont you create a quickstart so one of the devs can walk the
> > > > code and
> > > > > see what is going on
> > > >
> > > > (second try, the mailing list does not like zip files)
> > > >
> > > > And,  I have... .
> > > >
> > > > Take the wicket 1.2.2 quickstart application and unzip the archive
> > > > into that directory. The main page  (Index) contains a feedback
> > > > panel,
> > > > a link to the Other page and an info message showing a counter.
> > > > The
> > > > counter is incremented every time the Index page is rendered and
> > > > info() is used to display the counter on the page.
> > > >
> > > > Now, try this:
> > > > * start the application: -> Info message is shown with counter is
> > > > 0
> > > > * click on the link, now click on 'Return to previous page'-> No
> > > > info
> > > > message is hown
> > > > * refresh the page by clicking the browser's refresh button ->
> > > > info
> > > > message is shown with counter is 2
> > > >
> > > > This shows that the info message which is generated in the
> > > > onAttach()
> > > > method somehow disappears. It is only rendered when the page is
> > > > refreshed but not when you return to the page by an explicit
> > > > setResponsePage() call.
> > > >
> > > > Cheers
> > > >   Erik
> > > >
> > > > Since sourceforge does not allow zip extensions in a fruitless
> > > > attempt
> > > > to protect Microsoft windows users, here are the files: Index.java
> > > > ,
> > > > Index.html, Other.java, and Other.html.
> > > >
> > > > Index.java:
> > > > package wicket.quickstart;
> > > >
> > > >
> > > > import wicket.Page;
> > > > import wicket.markup.html.WebPage;
> > > > import wicket.markup.html.link.Link;
> > > >
> > > > public class Other extends WebPage {
> > > >
> > > >         public Other(final Page aReturnPage) {
> > > >                 add(new Link("link") {
> > > >                         @Override
> > > >                         public void onClick() {
> > > >                                 setResponsePage(aReturnPage);
> > > >                         }
> > > >                 });
> > > >         }
> > > >
> > > > }
> > > >
> > > >
> > > > Index.html:
> > > > <html>
> > > >     <head>
> > > >         <title>QuickStart</title>
> > > >     </head>
> > > >     <body>
> > > >         <h1>QuickStart</h1>
> > > >         <p>This is your first Wicket application.</p>
> > > >
> > > >                 <span wicket:id="feedback">Feedback goes here
> > > > </span>
> > > >                 <a href="#" wicket:id="link">Click me!</a>
> > > >     </body>
> > > > </html>
> > > >
> > > >
> > > >
> > > > Other.java:
> > > > package wicket.quickstart;
> > > >
> > > >
> > > > import wicket.Page;
> > > > import wicket.markup.html.WebPage;
> > > > import wicket.markup.html.link.Link;
> > > >
> > > > public class Other extends WebPage {
> > > >
> > > >         public Other(final Page aReturnPage) {
> > > >                 add(new Link("link") {
> > > >                         @Override
> > > >                         public void onClick() {
> > > >                                 setResponsePage(aReturnPage);
> > > >                         }
> > > >                 });
> > > >         }
> > > >
> > > > }
> > > >
> > > >
> > > > Other.html:
> > > > <html>
> > > >     <head>
> > > >         <title>QuickStart</title>
> > > >     </head>
> > > >     <body>
> > > >
> > > >                 <a href="#" wicket:id="link">Return to previous
> > > > page</a>
> > > >     </body>
> > > > </html>
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > >
> > > > > -igor
> > > > >
> > > > > On 11/13/06, Erik Brakkee < [EMAIL PROTECTED]> wrote:
> > > > > >
> > > > > > If I understand correctly, this explains the problem but does
> > > > not
> > > > > > solve it. Anyway, I have a simple workaround to display the
> > > > message as
> > > > > > a Label or some other component, overriding getModel() to
> > > > return the
> > > > > > appropriate information. That way I am certain that I am
> > > > seeing the
> > > > > > correct results.
> > > > > >
> > > > > > All it needs to do is display the total number of errors and
> > > > warnings
> > > > > > with detailed information being on the page. The page offers
> > > > links to
> > > > > > the user to correct problems and upon returning to the page
> > > > the total
> > > > > > number of errors and warnings should be updated. In this case
> > > > I really
> > > > > > want to return to the same page instance because I want the
> > > > user to
> > > > > > see exactly the same information that he saw before he started
> > > > > > correcting a problem.
> > > > > >
> > > > > > Nevertheless, it would be nice if it would be allowed to use
> > > > info(),
> > > > > > warn(), and error() also in other parts of the lifecycle such
> > > > as
> > > > > > onAttach() or onBeforeRender(). Without this, it is impossible
> > > > to
> > > > > > ensure that the correct messages are shown when a user returns
> > > > to the
> > > > > > same page instance. Requiring a new page instance to show the
> > > > correct
> > > > > > messages  is a bit restrictive.
> > > > > >
> > > > > > On 11/9/06, Eelco Hillenius < [EMAIL PROTECTED]>
> > > > wrote:
> > > > > > > These methods were introduce specially for situations where
> > > > you have
> > > > > > > to render messages at some other page than the current. The
> > > > messages
> > > > > > > are deleted right after they are rendered. Try it, I think
> > > > it solves
> > > > > > > your problem.
> > > > > > >
> > > > > > > Eelco
> > > > > > >
> > > > > > >
> > > > > > > On 11/9/06, Erik Brakkee < [EMAIL PROTECTED] > wrote:
> > > > > > > > No I didn't because the scope of the messages is of the
> > > > page only.
> > > > > > What
> > > > > > > > would be the correct point in the lifecycle of the page to
> > > > use warn(),
> > > > > > > > info(), or error()? Apparently I am too early in invoking
> > > > these
> > > > > > methods.
> > > > > > > >
> > > > > > > >
> > > > > > > > On 11/8/06, Eelco Hillenius < [EMAIL PROTECTED]>
> > > > wrote:
> > > > > > > > >
> > > > > > > > > Did you try info/warn/error on Session?
> > > > > > > > >
> > > > > > > > > Eelco
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > On 11/8/06, Erik Brakkee < [EMAIL PROTECTED]>
> > > > wrote:
> > > > > > > > > > Hi,
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > I am still stuck with this problem. What I try to do
> > > > is to use
> > > > > > info(),
> > > > > > > > > > error(), and warn() to add messages to the page, and I
> > > > want to do
> > > > > > this
> > > > > > > > > > as soon as another page returns to my page using
> > > > > > > > > > setResponsePage(pageObject). Somehow, the messages I
> > > > set in
> > > > > > onAttach()
> > > > > > > > > > or
> > > > > > > > > > onBeforeRender are lost.
> > > > > > > > > >
> > > > > > > > > > Anyone have any ideas on how I should be solving this
> > > > problem?
> > > > > > > > > >
> > > > > > > > > > Cheers
> > > > > > > > > >   Erik
> > > > > > > > > >
> > > > > > > > > > On 11/1/06, Erik Brakkee < [EMAIL PROTECTED]>
> > > > wrote:
> > > > > > > > > > > Hi,
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > I have a form from displaying a number of items. The
> > > > form also
> > > > > > > > displays some
> > > > > > > > > > > validation problems. The user can correct these
> > > > problems by
> > > > > > editing
> > > > > > > > items by
> > > > > > > > > > > clicking on a link and is then forwarded to another
> > > > page using
> > > > > > > > > > > setResponsePage(...). After editing, the eidt page
> > > > forwards back
> > > > > > to
> > > > > > > > the same
> > > > > > > > > > > instance of the form page.
> > > > > > > > > > >
> > > > > > > > > > > Now I want to do validation as soon as this happens
> > > > and add
> > > > > > messages
> > > > > > > > to the
> > > > > > > > > > > page using info(), warn(), and error().
> > > > Nevertheless, I cannot
> > > > > > get
> > > > > > > > this to
> > > > > > > > > > > work. I tried overriding onAttach() and
> > > > onBeforeRender() but
> > > > > > > > apparently my
> > > > > > > > > > > messages are getting lost. What would be the correct
> > > > way to
> > > > > > trigger
> > > > > > > > this
> > > > > > > > > > > validation?  Apparently I am too early in the
> > > > lifecycle and the
> > > > > > > > messages are
> > > > > > > > > > > being reset after I set them.
> > > > > > > > > > >
> > > > > > > > > > > Cheers
> > > > > > > > > > >   Erik
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > >
> > > > > >
> > > > 
-------------------------------------------------------------------------
> > > > > > > > > > Using Tomcat but need to do more? Need to support web
> > > > services,
> > > > > > > > security?
> > > > > > > > > > Get stuff done quickly with pre-integrated technology
> > > > to make your
> > > > > > job
> > > > > > > > easier
> > > > > > > > > > Download IBM WebSphere Application Server v.1.0.1based on 
Apache
> > > > > > > > Geronimo
> > > > > > > > > >
> > > > > > > >
> > > > > > 
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > >
> > > > > > > > > > _______________________________________________
> > > > > > > > > > Wicket-user mailing list
> > > > > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > > > >
> > > > > > > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > >
> > > > 
-------------------------------------------------------------------------
> > > > > > > > > Using Tomcat but need to do more? Need to support web
> > > > services,
> > > > > > > security?
> > > > > > > > > Get stuff done quickly with pre-integrated technology to
> > > > make your
> > > > > > job
> > > > > > > > easier
> > > > > > > > > Download IBM WebSphere Application Server v.1.0.1 based
> > > > on Apache
> > > > > > > Geronimo
> > > > > > > > >
> > > > > > > >
> > > > > > 
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > >
> > > > > > > > > _______________________________________________
> > > > > > > > > Wicket-user mailing list
> > > > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > >
> > > > 
-------------------------------------------------------------------------
> > > > > > > > Using Tomcat but need to do more? Need to support web
> > > > services,
> > > > > > security?
> > > > > > > > Get stuff done quickly with pre-integrated technology to
> > > > make your job
> > > > > > > > easier
> > > > > > > > Download IBM WebSphere Application Server v.1.0.1 based on
> > > > Apache
> > > > > > Geronimo
> > > > > > > >
> > > > > >
> > > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > > > > > >
> > > > > > > > _______________________________________________
> > > > > > > > Wicket-user mailing list
> > > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > 
-------------------------------------------------------------------------
> > > > > > > Using Tomcat but need to do more? Need to support web
> > > > services,
> > > > > > security?
> > > > > > > Get stuff done quickly with pre-integrated technology to
> > > > make your job
> > > > > > > easier
> > > > > > > Download IBM WebSphere Application Server v.1.0.1 based on
> > > > Apache
> > > > > > Geronimo
> > > > > > > 
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > >
> > > > > > > _______________________________________________
> > > > > > > Wicket-user mailing list
> > > > > > > Wicket-user@lists.sourceforge.net
> > > > > > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > > >
> > > > > >
> > > > > >
> > > > 
-------------------------------------------------------------------------
> > > > > > Using Tomcat but need to do more? Need to support web
> > > > services, security?
> > > > > > Get stuff done quickly with pre-integrated technology to make
> > > > your job
> > > > > > easier
> > > > > > Download IBM WebSphere Application Server v.1.0.1 based on
> > > > Apache Geronimo
> > > > > > 
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > >
> > > > > > _______________________________________________
> > > > > > Wicket-user mailing list
> > > > > > Wicket-user@lists.sourceforge.net
> > > > > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > > 
-------------------------------------------------------------------------
> > > > Using Tomcat but need to do more? Need to support web services,
> > > > security?
> > > > Get stuff done quickly with pre-integrated technology to make your
> > > > job easier
> > > > Download IBM WebSphere Application Server v.1.0.1 based on Apache
> > > > Geronimo
> > > >
> > > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> > > > _______________________________________________
> > > > Wicket-user mailing list
> > > > Wicket-user@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > > >
> > >
> > >
> > >
> > > -------------------------------------------------------------------------
> > > Take Surveys. Earn Cash. Influence the Future of IT
> > > Join SourceForge.net's Techsay panel and you'll get the chance to
> > > share your
> > > opinions on IT & business topics through brief surveys - and earn
> > > cash
> > >
> > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > >
> > > _______________________________________________
> > > Wicket-user mailing list
> > > Wicket-user@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> > >
> > >
> > >
> >
> >
> > -------------------------------------------------------------------------
> > Take Surveys. Earn Cash. Influence the Future of IT
> > Join SourceForge.net's Techsay panel and you'll get the chance to
> > share your
> > opinions on IT & business topics through brief surveys - and earn cash
> >
> > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> >
> >
> > _______________________________________________
> > Wicket-user mailing list
> > Wicket-user@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wicket-user
> >
> >
> >
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> opinions on IT & business topics through brief surveys - and earn cash
>
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>
> _______________________________________________
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wicket-user
>
>
>

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share
your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user




-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to