hi, johan Maybe i misunderstood this sentence << so just the parent page with the report link >>
that why i moved the report modal component to the child page. Can ask one thing here? about the report thread, i need to implement the Runnable for the ReportPage or ReportForm ? is that any different ? Johan Compagner wrote: > > Please reread my previous email. The ajax report link only starts the > thread and shows the the modal window on the parent page, the report > page is only set whe the report thread is done > > On 2/5/08, kenixwong <[EMAIL PROTECTED]> wrote: >> >> thanks johan , >> >> i make a summary here.... >> >> >> 1. report link an ajax link. >> ==> add a reportAjaxLink to the parentPage >> >> ajaxLink = new AjaxLink("cancelReportLink"){ >> public void onClick(AjaxRequestTarget target) { >> if (stopThread == null) { >> stopThread = new Thread (ReportPage); >> stopThread.setName("ReportPageThread"); >> stopThread.setDaemon( true ); >> stopThread.start(); >> isLoad = true; >> } >> setResponsePage(ReportPage.class); >> } >> }; >> >> 2. ajax link gets a thread from a thread pool and let that thread >> generate >> the report >> ==> once the link is click, it will start the report page thread >> and >> setResponsePage to the report page >> >> ==> So, my reportPage will be implements Runnable ( in order put in >> thread ) , eg : >> >> public ReportPage() extends ParentPage implements Runnble{ >> add(feedback); >> >> // add the modal window here ?? how it auto call and pop >> it >> ? >> // as i know it need the ajaxLink to fire it >> ModalWindow cancelModal = new ModalWindow("cancelModal"); >> CancelPanel cancelPanel = new >> CancelPanel("content",cancelModal); >> add(cancelModal); >> cancelModal.setContent(cancelPanel); >> cancelModal.setPageMapName("cancelModal"); >> >> add(new ChildPageForm("ChildPageForm")); >> } >> >> private class ChildPageForm extends Form { >> // execute query >> // generate the result as Chart ( JFreeChart tool ) >> } >> >> >> >> 3. modal dialog you have a cancel button and a ajax timer that checks if >> the >> report is done every x second. >> ==> the ajaxTimer u mean is... i tried as below >> >> cancelReportModal.add(new >> AbstractAjaxTimerBehavior(Duration.seconds(1)) { >> @Override >> protected void onTimer(AjaxRequestTarget target) { >> // if the report page is still loading >> if(isLoad){ >> cancelReportModal.show(target); >> target.addComponent(cancelReportModal); >> }else{ >> cancelReportModal.close(target); >> stopThread = null; >> } >> } >> }); >> >> >> ==> But this part is only run the else part. Is that i did something >> wrong there? >> >> >> Btw, i am the newbia to wicket and i was using the wisket 1.2.4. So, hope >> can share and do any discusion here .... >> >> >> thanks in advance >> -kenix >> >> >> Johan Compagner wrote: >> > >> > this is again a extremly fuzzy examle >> > Because the parent page has the link and the modal dialog >> > But hte report page extends the parent page so that one also has the >> link >> > and the modal dialog... >> > >> > So what do you want to show on what page?? >> > >> > If the report page takes a long time then ofcourse you can;t show the >> > modal >> > dialog on that page >> > because the report page isn't there yet.. >> > >> > >> > What you should do if you want a modal dialog to happen is >> > >> > Make the report link an ajax link. >> > That ajax link gets a thread from a thread pool and let that thread >> > generate >> > the report >> > Then it displays the modal dialog on the page it is coming from (so >> just >> > the >> > parent page with the report link) >> > >> > On that modal dialog you have a cancel button and a ajax timer that >> checks >> > if the report is done every x seconds. >> > >> > the cancel button sets a flag on the server so that the report thread >> > checks >> > as often as he can and when he sees that he just stops with what he is >> > doing. >> > >> > If the ajax timer sees the report beind done it closed the dialog and >> then >> > shows the report page. >> > >> > johan >> > >> > >> > >> > On Feb 4, 2008 3:58 PM, kenixwong <[EMAIL PROTECTED]> wrote: >> > >> >> >> >> hi, johan... >> >> >> >> what i mean is.. based on the example below: - >> >> >> >> a) Parent Page >> >> =========== >> >> >> >> public ParentPage() extends WebPage{ >> >> >> >> >> >> Link reportLink = new Link("link", new Model()){ >> >> @Override >> >> public void onClick() { >> >> setResponsePage(ReportPage.class); >> >> } >> >> }; >> >> >> >> Label label = new Label("linkLabel", text); >> >> reportLink .add(label); >> >> add(reportLink ); >> >> >> >> >> >> ModalWindow cancelModal = new ModalWindow("cancelModal"); >> >> CancelPanel cancelPanel = new CancelPanel("content",cancelModal); >> >> add(cancelModal); >> >> cancelModal.setContent(cancelPanel); >> >> cancelModal.setPageMapName("cancelModal"); >> >> >> >> >> >> // to auto pop up the modal window. >> >> ajaxLink = new AjaxLink("cancelModalLink"){ >> >> @Override >> >> public void onClick(AjaxRequestTarget target) { >> >> cancelModal.show(target); >> >> } >> >> }; >> >> add(ajaxLink); >> >> >> >> // Fire the ajaxLink onclick function >> >> getBodyContainer().addOnLoadModifier(new ClickOnceOnLoadModel( >> >> ajaxLink >> >> ), null ); >> >> >> >> add(feedback); >> >> >> >> } >> >> >> >> >> >> >> >> b) Child page ( My report Page ) >> >> ======================== >> >> public ReportPage() extends ParentPage{ >> >> >> >> add(feedback); >> >> add(new ChildPageForm("ChildPageForm")); >> >> } >> >> >> >> >> >> private class ChildPageForm extends Form { >> >> // execute query >> >> // generate the result as Chart ( JFreeChart tool ) >> >> // NOTES: taken a long time to load because it generates >> >> things >> >> } >> >> >> >> >> >> Explanation: >> >> ========= >> >> Once i click on the reportLink , it will setResponsePage to the >> >> ReportPage.class. So, once it load, for what i expected result is pop >> up >> >> the >> >> modal window and then the reportPage is loading at the backgroup. >> >> >> >> BUT then it was NOT. The actual result that i get is once the report >> page >> >> is >> >> finish loaded then only turn to pop up the modal window. >> >> >> >> >> >> yes...you r right, my reportPage will taken a long time to load, >> because >> >> it >> >> generates the chart. That why i need to pop up a modal window at the >> same >> >> time in order to let the user cancel the reportPage if the user don't >> >> wait >> >> for the page finish load. >> >> >> >> >> >> thanks for your reply... >> >> >> >> >> >> -kenix >> >> >> >> >> >> Johan Compagner wrote: >> >> > >> >> > What is that ReportPage is that the page that also loads the modal >> >> dialog? >> >> > And that page is taken a long time to load? Because it generates >> >> things? >> >> > >> >> > But for the modal dialog to work, the report page (if that is the >> modal >> >> > dialogs parent) >> >> > must first be fully loaded there is no other way. >> >> > >> >> > I stil dont get exactly what you suspect to happen, you think that >> the >> >> > parent page >> >> > that generates the report or something and that one doesn't load >> >> > completely >> >> > because it has to wait for the report >> >> > can display the modal dialog already but itself isn't done yet? >> >> > >> >> > johan >> >> > >> >> > >> >> > >> >> > On Feb 4, 2008 2:18 PM, kenixwong <[EMAIL PROTECTED]> wrote: >> >> > >> >> >> >> >> >> thx for reply, johan >> >> >> >> >> >> yes..you r right, when i click a link, I want redirect to a load a >> >> page >> >> >> and >> >> >> then at the same time, a modal dialog is show immediately... >> >> >> >> >> >> my current testing here is... the modal window component is call at >> >> the >> >> >> parent class and then the report form is call at child class. >> Common >> >> >> sense, >> >> >> all the component at the parent class will call first before the >> child >> >> >> class' component , right... >> >> >> >> >> >> yes... right now my page can load the modal window, but it is shown >> >> after >> >> >> the report page is finish load. The main reason i use the >> modalwindow >> >> is >> >> >> feasible the user to make decision whether want terminate the >> report >> >> page >> >> >> loading or not ( if the user don't want to wait until the page is >> >> finish >> >> >> load) >> >> >> >> >> >> as what you suggested on Jan 31, 2008.. yes.. i did. Add ajaxlink >> to >> >> call >> >> >> the modal window and then onload it. The code that i auto fire the >> >> >> ajaxlink >> >> >> is >> >> >> >> >> >> getBodyContainer().addOnLoadModifier(new ClickOnceOnLoadModel( >> >> ajaxLink >> >> >> ), >> >> >> null ); >> >> >> >> >> >> which i get the sample resource from this forum >> >> >> >> >> >> >> >> >> http://www.nabble.com/modal-window-question---opening-a-modal-window-on-page-load-to12586008.html#a12598786 >> >> >> >> >> >> yes..it worked. but it is loaded after the page is finish load. :( >> >> >> >> >> >> >> >> >> thanks in advance >> >> >> - kenix >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Johan Compagner wrote: >> >> >> > >> >> >> > what do you exactly want? >> >> >> > you want a modal dialog to show immedianlty when another page is >> >> >> loaded? >> >> >> > I think you have to dig into the javascript portion of modal >> window >> >> >> then >> >> >> > (or >> >> >> > matej can tell you a bit more) >> >> >> > >> >> >> > first of all the page below it has to load first completely >> because >> >> >> that >> >> >> > does contain the div. >> >> >> > >> >> >> > I do think you should think about your gui a bit more and if >> there >> >> >> isn't >> >> >> a >> >> >> > better way of doing stuff >> >> >> > because showing a modal dialog immediantly on a new page doesn't >> >> make >> >> >> much >> >> >> > sense to me in 99.9% of the cases i can think of >> >> >> > >> >> >> > johan >> >> >> > >> >> >> > On Feb 4, 2008 12:24 PM, kenixwong <[EMAIL PROTECTED]> wrote: >> >> >> > >> >> >> >> >> >> >> >> hi, >> >> >> >> >> >> >> >> can anybody share the solution with me ? >> >> >> >> >> >> >> >> is that the javaScript is take time to load for the modal window >> >> even >> >> >> >> this >> >> >> >> component is called before the form component is call? >> >> >> >> >> >> >> >> >> >> >> >> anyone can help ? until now i still can't get any solution and >> >> >> resource >> >> >> >> yet... >> >> >> >> >> >> >> >> >> >> >> >> thanks in advance,... >> >> >> >> - kenix >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> kenixwong wrote: >> >> >> >> > >> >> >> >> > 2 process cant together in a same time - modal window and form >> in >> >> >> the >> >> >> >> same >> >> >> >> > page constructor? Is because the process haven't done, so the >> >> >> request >> >> >> >> > wont send to wicket there? >> >> >> >> > >> >> >> >> > The main reason i want to implement this features, caused >> modal >> >> >> window >> >> >> >> > can prevent the user navigate to other page or feasible the >> user >> >> to >> >> >> >> cancel >> >> >> >> > the form process if the loading time is longer. Another point >> is, >> >> >> >> because >> >> >> >> > my report page is loading with JFreeChart to generate the >> chart >> >> >> report. >> >> >> >> If >> >> >> >> > the user press right click to Open Link in new tab, the chart >> at >> >> the >> >> >> >> > previous tab will have the broken link issue means the chart >> is >> >> cant >> >> >> >> > display. So, modal window can play an important role here... >> >> >> >> > >> >> >> >> > >> >> >> >> > I was using the wicket 1.2.4. Is it the version cant support >> it >> >> and >> >> >> i >> >> >> >> need >> >> >> >> > to upgrade ? i read from >> >> >> >> > http://cwiki.apache.org/WICKET/wicket-130-rc1.html .. >> Migration >> >> from >> >> >> >> 1.2 >> >> >> >> > to 1.3, there is not much different for the modal window in >> both >> >> >> >> version.. >> >> >> >> > can anyone give some solution to me? >> >> >> >> > >> >> >> >> > >> >> >> >> > Thanks in advance >> >> >> >> > - kenix >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > kenixwong wrote: >> >> >> >> >> >> >> >> >> >> thanks for reply, johan >> >> >> >> >> >> >> >> >> >> i want to show the modal window once the report page is load. >> >> Mean >> >> >> >> >> background is continue loading the report and the modal >> window >> >> is >> >> >> just >> >> >> >> as >> >> >> >> >> a control (its features is invisible the background and only >> >> close >> >> >> >> once >> >> >> >> >> action performed is click in the modal window ) to prevent >> user >> >> >> >> navigate >> >> >> >> >> to other page. For the modal window it only define one cancel >> >> >> button, >> >> >> >> >> mean if user click the cancel button, the background ( report >> >> page >> >> >> ) >> >> >> >> is >> >> >> >> >> stop. >> >> >> >> >> >> >> >> >> >> Yes... the modal window is only shown by an ajax link. I get >> the >> >> >> >> source >> >> >> >> >> from this forum ..where it can fire the ajaxlink whitout >> click >> >> the >> >> >> >> link. >> >> >> >> >> Here is the code >> >> >> >> >> >> >> >> >> >> < getBodyContainer().addOnLoadModifier(new >> >> >> ClickOnceOnLoadModel( >> >> >> >> >> ajaxLink ), null ); > >> >> >> >> >> >> >> >> >> >> Even i tried to create a modal window with ajaxlink ( add >> auto >> >> fire >> >> >> >> event >> >> >> >> >> as above code ) and put at the parent class and the report >> page >> >> is >> >> >> the >> >> >> >> >> child class. But the result is same, the report page is >> finish >> >> >> loaded >> >> >> >> >> then only pop up the modal window. >> >> >> >> >> >> >> >> >> >> my report page constructor : >> >> >> >> >> >> >> >> >> >> public LineChart() { >> >> >> >> >> /// modal window use panel..declare the modal window >> setting >> >> >> here >> >> >> >> >> then add >> >> >> >> >> add(modalWindow); >> >> >> >> >> >> >> >> >> >> // to auto pop up the modal window. >> >> >> >> >> ajaxLink = new AjaxLink("cancelReportModalLink"){ >> >> >> >> >> @Override >> >> >> >> >> public void onClick(AjaxRequestTarget target) >> { >> >> >> >> >> cancelReportModal.show(target); >> >> >> >> >> } >> >> >> >> >> }; >> >> >> >> >> add(ajaxLink); >> >> >> >> >> >> >> >> >> >> // Fire the ajaxLink onclick function >> >> >> >> >> getBodyContainer().addOnLoadModifier(new >> >> ClickOnceOnLoadModel( >> >> >> >> >> ajaxLink ), null ); >> >> >> >> >> >> >> >> >> >> add(feedback); >> >> >> >> >> add(new LineChartForm("LineChartForm")); >> >> >> >> >> } >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> private class LineChartForm extends Form { >> >> >> >> >> // execute query >> >> >> >> >> // result as in JFreeChart >> >> >> >> >> } >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> i add the component for modal window then only come to form. >> >> >> >> supposedly >> >> >> >> >> it will show the modal window then load the form, am i right >> . >> >> Why >> >> >> ? >> >> >> 2 >> >> >> >> >> process in a same time cant together? Is because the process >> >> >> haven't >> >> >> >> >> done, so the request wont send to wicket there, >> >> >> >> >> >> >> >> >> >> 2 way i tried. Call the modal window at Parent class and also >> >> child >> >> >> >> >> class. But it still given me the same result. >> >> >> >> >> >> >> >> >> >> between, can you explain more or give example for the onload >> >> event >> >> >> >> that >> >> >> >> >> you mentioned ? onLoad event for the modal window ? I was >> using >> >> the >> >> >> >> >> wicket 1.2.4. Is it the version cant support it and i need to >> >> >> upgrade >> >> >> >> ? >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Thanks in advance >> >> >> >> >> >> >> >> >> >> - kenix >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> Johan Compagner wrote: >> >> >> >> >>> >> >> >> >> >>> how do you show the modal dialog?? >> >> >> >> >>> Normally the modal dialog is only shown by an ajax link. >> >> >> >> >>> I guess you show it on onload event. Then yes the page will >> >> first >> >> >> >> load >> >> >> >> >>> itself >> >> >> >> >>> then call onload and then the modal window will show itself >> >> >> >> >>> >> >> >> >> >>> johan >> >> >> >> >>> >> >> >> >> >>> >> >> >> >> >>> >> >> >> >> >>> On Jan 31, 2008 6:16 AM, kenixwong <[EMAIL PROTECTED]> >> >> wrote: >> >> >> >> >>> >> >> >> >> >>>> >> >> >> >> >>>> hi, >> >> >> >> >>>> >> >> >> >> >>>> for the above case, for example... my page constructor: i >> add >> >> the >> >> >> >> >>>> component >> >> >> >> >>>> ( modal window, feedBackPanel, form ) . Once i load the >> page, >> >> why >> >> >> >> the >> >> >> >> >>>> modal >> >> >> >> >>>> window will only display when the page is finish loaded. Is >> >> that >> >> >> the >> >> >> >> >>>> wicket >> >> >> >> >>>> had default set the main thread for the form component? >> >> >> >> >>>> >> >> >> >> >>>> Thanks in advance >> >> >> >> >>>> -- >> >> >> >> >>>> View this message in context: >> >> >> >> >>>> >> >> >> >> >> >> >> >> >> >> http://www.nabble.com/is-there-wicket-had-per-defined-the-Thread-for-the-form-component-tp15198385p15198385.html >> >> >> >> >>>> Sent from the Wicket - User mailing list archive at >> >> >> >> >>>> Nabble.com <http://nabble.com/> <http://nabble.com/> < >> >> http://nabble.com/>< >> >> >> http://nabble.com/> >> >> >> >> >>>> . >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> >> >> >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >> >> >> >> >>>> For additional commands, e-mail: >> [EMAIL PROTECTED] >> >> >> >> >>>> >> >> >> >> >>>> >> >> >> >> >>> >> >> >> >> >>> >> >> >> >> >> >> >> >> >> >> >> >> >> >> > >> >> >> >> > >> >> >> >> >> >> >> >> -- >> >> >> >> View this message in context: >> >> >> >> >> >> >> >> >> >> http://www.nabble.com/is-there-wicket-had-per-defined-the-Thread-for-the-form-component-tp15198385p15266151.html >> >> >> >> Sent from the Wicket - User mailing list archive at >> >> >> >> Nabble.com <http://nabble.com/> <http://nabble.com/>< >> >> http://nabble.com/> >> >> >> >> . >> >> >> >> >> >> >> >> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> >> >> >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> >> >> >> >> >> >> >> >> > >> >> >> > >> >> >> >> >> >> -- >> >> >> View this message in context: >> >> >> >> >> >> http://www.nabble.com/is-there-wicket-had-per-defined-the-Thread-for-the-form-component-tp15198385p15267910.html >> >> >> Sent from the Wicket - User mailing list archive at >> >> >> Nabble.com <http://nabble.com/><http://nabble.com/> >> >> >> . >> >> >> >> >> >> >> >> >> >> --------------------------------------------------------------------- >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> >> >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> >> >> >> >> >> > >> >> > >> >> >> >> -- >> >> View this message in context: >> >> >> http://www.nabble.com/is-there-wicket-had-per-defined-the-Thread-for-the-form-component-tp15198385p15268878.html >> >> Sent from the Wicket - User mailing list archive at >> >> Nabble.com<http://nabble.com/> >> >> . >> >> >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> >> >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/is-there-wicket-had-per-defined-the-Thread-for-the-form-component-tp15198385p15283841.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] >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- View this message in context: http://www.nabble.com/is-there-wicket-had-per-defined-the-Thread-for-the-form-component-tp15198385p15286920.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]