Re: [OT] Wicket in Action Woes
Obviously you have developed a somewhat magntic tummy while writing the book. :-) Martijn Dashorst wrote: Just be patient: getting the first printed copies first is a writer's prerogative. In the mean time, my Wicket in Action unboxing pictures whos that the book is not a mirage: http://martijndashorst.com/blog/2008/09/01/unboxing-wicket-in-action/ Martijn On Mon, Sep 1, 2008 at 5:46 PM, Jonathan Locke [EMAIL PROTECTED] wrote: huh. have not received my copy they promised me yet... Eelco Hillenius wrote: I have no idea. Martijn and I (or rather, my parents in Holland) received a bunch of paper copies, so the actual book *is* out. Eelco On Sun, Aug 31, 2008 at 9:56 PM, Stefan Lindner [EMAIL PROTECTED] wrote: Amazon says that it ist to be published on Sept. 28. It's the seond time that the publishing date moved towards the end oft he year. Stefan -Ursprüngliche Nachricht- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von James Carman Gesendet: Montag, 1. September 2008 00:24 An: users@wicket.apache.org Betreff: [OT] Wicket in Action Woes I called my local Barnes Noble today asking if they had a copy of WIA and the lady said that book is out of print; perhaps you can get one used through BN.com. The Waldenbooks in our mall said it was on back order (I'm assuming this is because of my two talks I gave to the Cincinnati Java Users Group). Is anyone else having issues getting a copy at brick and mortar stores? - 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/-OT--Wicket-in-Action-Woes-tp19246776p19256831.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]
calculate the request-only-process time
we want to calculate the time to process the request , excluding the response stream time e.g. 1) request received at tomcat - 2) wicket filter - 3) business + wicket rendering logic - 4) response streaming we want the time of steps 2+3, we try to count the time use the method onBeginRequest, onEndRequest at our custom WebRequestCycle but it is found that the onEndRequest should be called after the response is completed to send to the client (i.e. similar to the tomcat request time counting) so any suggestion to count the request-only-process time? -- View this message in context: http://www.nabble.com/calculate-the-request-only-process-time-tp19264621p19264621.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: Discussion on Wicket Interface Speed-Up
wicketstuff-merged-resources is now available in JIRA: http://wicketstuff.org/jira/browse/WMR and from wicketstuff maven repo: repositories repository idwicket-snaps/id urlhttp://wicketstuff.org/maven/repository/url snapshots enabledtrue/enabled /snapshots releases enabledtrue/enabled /releases /repository /repositories dependency groupIdorg.wicketstuff/groupId artifactIdwicketstuff-merged-resources/artifactId version1.3.4-SNAPSHOT/version /dependency i am also going to add a short wiki page at wicketstuff.org regards, Stefan Jörn Zaefferer-2 wrote: Good point, I forgot that wicketstuff has its own JIRA installation. Though the entry for the project is missing. Let me know once its there, and I'll create the report. Jörn On Fri, Aug 29, 2008 at 12:26 PM, Peter Ertl [EMAIL PROTECTED] wrote: why don't you open up an issue in JIRA? Am 29.08.2008 um 12:22 schrieb Jörn Zaefferer: Here is a first patch for the RevisionVersionProvider: Index: src/main/java/org/wicketstuff/mergedresources/versioning/RevisionVersionProvider.java === --- src/main/java/org/wicketstuff/mergedresources/versioning/RevisionVersionProvider.java (revision 4147) +++ src/main/java/org/wicketstuff/mergedresources/versioning/RevisionVersionProvider.java (working copy) @@ -15,7 +15,7 @@ public int getVersion(final Class? scope, final String fileName) throws VersionException { final String file = getResourcePath(scope, fileName); - final InputStream in = ClassLoader.getSystemResourceAsStream(file); + final InputStream in = RevisionVersionProvider.class.getClassLoader().getResourceAsStream(file); if (in == null) { throw new VersionException(scope, fileName, can't find + file); } ClassLoader.getSystemResourceAsStream in my deployment enviroment, it always returned null for classpath resources. Using the RevisionVersionProvider classloader works fine. Let me know where I should post further patches etc. Jörn On Fri, Aug 29, 2008 at 11:29 AM, Stefan Fußenegger [EMAIL PROTECTED] wrote: Code is now available through wicketsuff: https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-merged-resources/ wicketstuff-merged-resources and https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-merged-resources-examples/ wicketstuff-merged-resources-examples Now I want to make it available through http://wicketstuff.org/maven/repository/. I therefore registered at wicketstuff.org/teamcity (sfussenegger). What's next? Stefan Fußenegger wrote: I just finished the 4th and last entry of my series Wicket Interface Speed-Up on my blog. To give a short summary: I investigated one of my apps with YSlow and started optimizing it's interface rendering speed [1]. Especially Wicket's way of handling resources, i.e. JS and CSS files, causes interfaces to load rather slowly. In my articles, I explain how to modify the cache interval [2], how to mount resources with a version (e.g. /css/all-1234.css) in order to use aggressive client-side caching (e.g. resources expire after a year) [3]. Finally, I show how to merge resources at application startup (using a class classed MergedResourceStream) to reduce the number of resources a client has to download [4], including code). I was able to increase interface loading times considerably, so it's surely worth a look. I feel that it would also be worth to discuss, whether this work could be part of upcoming Wicket versions. For the time being I'd like to make the code attached to [4] a wicketstuff project - sfussenegger needs commit access ;) - and wait for your feedback. The links: [1] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up.html Wicket Interface Speed-Up [2] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up-modifying.html Wicket Interface Speed-Up: Modifying Expires and Cache-Control Headers [3] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up-caching.html Wicket Interface Speed-Up: Caching Resources Forever [4] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up-merging.html Wicket Interface Speed-Up: Merging Resources for Fewer HTTP Requests - --- Stefan Fußenegger http://talk-on-tech.blogspot.com // looking for a nicer domain ;) -- View this message in context: http://www.nabble.com/Discussion-on-%22Wicket-Interface-Speed-Up%22-tp19197540p19216657.html Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED]
Re: Discussion on Wicket Interface Speed-Up
Thanks Stefan! Just removed my local checkout and it works fine. Jörn On Tue, Sep 2, 2008 at 8:46 AM, Stefan Fußenegger [EMAIL PROTECTED] wrote: wicketstuff-merged-resources is now available in JIRA: http://wicketstuff.org/jira/browse/WMR and from wicketstuff maven repo: repositories repository idwicket-snaps/id urlhttp://wicketstuff.org/maven/repository/url snapshots enabledtrue/enabled /snapshots releases enabledtrue/enabled /releases /repository /repositories dependency groupIdorg.wicketstuff/groupId artifactIdwicketstuff-merged-resources/artifactId version1.3.4-SNAPSHOT/version /dependency i am also going to add a short wiki page at wicketstuff.org regards, Stefan Jörn Zaefferer-2 wrote: Good point, I forgot that wicketstuff has its own JIRA installation. Though the entry for the project is missing. Let me know once its there, and I'll create the report. Jörn On Fri, Aug 29, 2008 at 12:26 PM, Peter Ertl [EMAIL PROTECTED] wrote: why don't you open up an issue in JIRA? Am 29.08.2008 um 12:22 schrieb Jörn Zaefferer: Here is a first patch for the RevisionVersionProvider: Index: src/main/java/org/wicketstuff/mergedresources/versioning/RevisionVersionProvider.java === --- src/main/java/org/wicketstuff/mergedresources/versioning/RevisionVersionProvider.java (revision 4147) +++ src/main/java/org/wicketstuff/mergedresources/versioning/RevisionVersionProvider.java (working copy) @@ -15,7 +15,7 @@ public int getVersion(final Class? scope, final String fileName) throws VersionException { final String file = getResourcePath(scope, fileName); - final InputStream in = ClassLoader.getSystemResourceAsStream(file); + final InputStream in = RevisionVersionProvider.class.getClassLoader().getResourceAsStream(file); if (in == null) { throw new VersionException(scope, fileName, can't find + file); } ClassLoader.getSystemResourceAsStream in my deployment enviroment, it always returned null for classpath resources. Using the RevisionVersionProvider classloader works fine. Let me know where I should post further patches etc. Jörn On Fri, Aug 29, 2008 at 11:29 AM, Stefan Fußenegger [EMAIL PROTECTED] wrote: Code is now available through wicketsuff: https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-merged-resources/ wicketstuff-merged-resources and https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-merged-resources-examples/ wicketstuff-merged-resources-examples Now I want to make it available through http://wicketstuff.org/maven/repository/. I therefore registered at wicketstuff.org/teamcity (sfussenegger). What's next? Stefan Fußenegger wrote: I just finished the 4th and last entry of my series Wicket Interface Speed-Up on my blog. To give a short summary: I investigated one of my apps with YSlow and started optimizing it's interface rendering speed [1]. Especially Wicket's way of handling resources, i.e. JS and CSS files, causes interfaces to load rather slowly. In my articles, I explain how to modify the cache interval [2], how to mount resources with a version (e.g. /css/all-1234.css) in order to use aggressive client-side caching (e.g. resources expire after a year) [3]. Finally, I show how to merge resources at application startup (using a class classed MergedResourceStream) to reduce the number of resources a client has to download [4], including code). I was able to increase interface loading times considerably, so it's surely worth a look. I feel that it would also be worth to discuss, whether this work could be part of upcoming Wicket versions. For the time being I'd like to make the code attached to [4] a wicketstuff project - sfussenegger needs commit access ;) - and wait for your feedback. The links: [1] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up.html Wicket Interface Speed-Up [2] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up-modifying.html Wicket Interface Speed-Up: Modifying Expires and Cache-Control Headers [3] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up-caching.html Wicket Interface Speed-Up: Caching Resources Forever [4] http://talk-on-tech.blogspot.com/2008/08/wicket-interface-speed-up-merging.html Wicket Interface Speed-Up: Merging Resources for Fewer HTTP Requests - --- Stefan Fußenegger http://talk-on-tech.blogspot.com // looking for a nicer domain ;) -- View this message in context: http://www.nabble.com/Discussion-on-%22Wicket-Interface-Speed-Up%22-tp19197540p19216657.html Sent from the Wicket -
PageExpiredException on production
hello all, We are working with Wicket (1.3.4) on production for a couple of months. It runs within jetty 6.1.7. For some weeks, we are experiencing a strange PageExpiredException which happens only on production env. It mostly happens on 2 main Pages in which the users submit the same form in a rolling manner (i.e. fill the form fields, submit the form, the user is redirected to the same page with a clean form and fills the form with new data and so on repeatedly). It isn't a problem of session expiration because our session timeout is set to 10 hours, this is the setting in our web.xml file: session-config session-timeout600/session-timeout /session-config We changed the logging level of Wicket to DEBUG, I'm attaching only a little fraction from our log file, you can see the whole exception in the file attached to this post: This message is printed in level of warning, yet it is just for tracing: invoked resolve! RequestParameters: [RequestParameters componentPath=4:registrationManagementForm pageMapName=null versionNumber=0 interfaceName=IActivePageBehav iorListener componentId=null behaviorId=1 urlDepth=-1 parameters={random=0.14328683405517095,amp;wicket:ignoreIfNotActive=true } onlyProcessIfPathActive=false] - 2008-09-01 15:18:47,372 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked resolveRenderedPage! RequestParameters: [RequestParameters componentPath=4:registrationManagementForm pageMapName=null versionNumber=0 interfaceName=IActivePageBehav iorListener componentId=null behaviorId=1 urlDepth=-1 parameters={random=0.14328683405517095,amp;wicket:ignoreIfNotActive=true } onlyProcessIfPathActive=false] - 2008-09-01 15:18:47,372 [DEBUG] apache.wicket.Session - Getting page [path = 4:registrationManagementForm, versionNumber = 0] 2008-09-01 15:18:47,376 [WARN ] security.authentication.NiteWebRequestCycleProcessor - - completed resolveRenderedPage! EXIT = 2008-09-01 15:18:47,377 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked respond(RuntimeException e, RequestCycle requestCycle)! - 2008-09-01 15:18:47,377 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked onRuntimeException! - 2008-09-01 15:18:47,377 [ERROR] security.authentication.NiteWebRequestCycleProcessor - onRuntimeException stack: org.apache.wicket.protocol.http.PageExpiredException: Cannot find the rendered page in session [pagemap=null,componentPath=4:r egistrationManagementForm,versionNumber=0] at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:181) at il.org.nite.frm.security.authentication.NiteWebRequestCycleProcessor.resolve http://www.nabble.com/file/p19265678/prod_log.txt prod_log.txt -- View this message in context: http://www.nabble.com/PageExpiredException-on-production-tp19265678p19265678.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: Going back to a previous URL?
Hi Uwe, Thanks for your reply. Perhaps you wouldn't mind providing me with a little bit of clarification on your technique of going back to previously visited pages. My application is structured like: - abstract BasePage at the top of the Page hierarchy with a BookmarkablePageLink to LoginPage - AppPage extends BasePage is the main application page is mounted with HybridURLCoding - LoginPage extends BasePage and is mounted with HybridURLCoding - there are other pages that extend BasePage for which the Login link is present - LoginPage has an AjaxForm for submitting username/password, etc.. When I'm at AppPage {1=foo} and click on the Login link, I then go to the LoginPage with a nice URL showing in the address bar. After submitting the login form and upon successful authentication, I want to automatically navigate back to AppPage {1=foo} so that it is re-rendered to take into account he user is now authenticated and consequently has more authority. Currently what I am doing is to check the referrer in the onSubmit of the AJAX form in LoginPage and going back to that, which brings me to the LoginPage for some reason. I tried to get WebPage.continueToOriginalDestination() to work in the onSubmit and by throwing a RedirectToInterceptPage exception when clicking on the login link, but that didn't work either. At first glance, it seems that your solution would work the best as you have the ability to store information in the MetaData portion of the components. Please allow me to annotate your pseudo-code so that you can hopefully clarify some of my questions: Basically, Page targetPage = new LoginPage(new PageParameters()); (LoginPage doesn't have any parameters) Page targetPage = new BookmarkablePageClass(... create a setPageToNavigateBackTo(Page) method to store the AppPage instance // the add state to it, like targetPage.setPageToNavigateBackTo(getWebPage()); store AppPage's PageParameters in the HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY key so the onSubmit can redirect back // and add params for the URL targetPage.setMetaData(HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY, new PageParameters(...)); go to LoginPage setResponsePage(targetPage); By following the above implementation, would it not be a tad wasteful creating LoginPage instances every time any BasePage sibling is created? What about adding a setter in LoginPage like LoginPage.setBackPage(Class pageClass, PageParameters pp)? I suppose this would also require the pre-instantiation of LoginPage as well. Are there no other mechanisms for solving this problem? Perhaps I should look how Breadcrumbs are implemented as they have similar requirements. Many thanks Uwe Schäfer wrote: classacts schrieb: Let's say I'm on bookmarkable Page1.class with PageParameters {id=1,0=foo,1=bar} and I click on a BookmarkablePage link to ConfigPage PageParameters {id=1} and do some stuff like submit forms on that page, etc... How can I place a Back button or link to the Page1.class with its PageParameters intact? The mechanism should also would even if the originating page isn't Page1.class but any arbitrary class. *IF* i get this correctly, we do that by using HybridURLEncoding and passing pageInstances around. linking to bookmarkable urls with additional state can be done with smth like: Page targetPage = new BookmarkablePageClass(... // the add state to it, like targetPage.setPageToNavigateBackTo(getWebPage()); // and add params for the URL targetPage.setMetaData(HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY, new PageParameters(...)); setResponsePage(targetPage); cu uwe - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Going-back-to-a-previous-URL--tp19254601p19266318.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: Going back to a previous URL?
classacts schrieb: When I'm at AppPage {1=foo} and click on the Login link, I then go to the LoginPage with a nice URL showing in the address bar. After submitting the login form and upon successful authentication, I want to automatically navigate back to AppPage {1=foo} so that it is re-rendered to take into account he user is now authenticated and consequently has more authority. so if not using RestartResponseAtInterceptionPage, what you want is to a) move to a nice looking/bookmarkable url for that login page and b) pass the reference to your current page, so that the targeting page can do setResponsePage(myBackPage); this can be complished using HybridUrlCodingStrategy like below. At first glance, it seems that your solution would work the best as you have the ability to store information in the MetaData portion of the components. well it is more about passing data directly to the targeted page, but STILL have a nicelooking and bookmarkable URL. Let´s say you would not care about URLs, what you´d do is: class A extend Page{ ... B b = new B(); b.setWhateverStateYouLike(..); b.setMybackPage(this); setResponsePage(b); ... } class B extends Page { ... setMyBackPage(Page back){this.back=back;} ... new Link(back){ void onClick(){ setResponsePage(back); } } ... } the 'problem' here is - for those, who care about urls - the URL you give to B here does not have parameters. with the mentioned b.setMetaData(HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY, new PageParameters(...)) you could add parameters to the URL. That is it. Basically, Page targetPage = new LoginPage(new PageParameters()); (LoginPage doesn't have any parameters) Page targetPage = new BookmarkablePageClass(... well, you don´t need parameters then ;) By following the above implementation, would it not be a tad wasteful creating LoginPage instances every time any BasePage sibling is created? sure, why would you want to do that? what about new Link(bla){onClick(){setResponsePage(new LoginPage(...);}} ? you´d create it when it is needed then, right? cu uwe - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Going back to a previous URL?
Hi Uwe, Thanks for your reply, I understand your technique now. However, what about when we do care about URLs? For example, my LoginPageLink class is as follows: @NonAuthOnly private final class LoginPageLink extends BookmarkablePageLink { private static final long serialVersionUID = 1L; public LoginPageLink(String id) { super(id, LoginPage.class); } // @Override // public void onClick() { // LoginPage lp = new LoginPage(); // lp.setReferringPage(BasePage.this.getPage()); // } } Not really quite sure how to create an instance of LoginPage here and still being able to use BookmarkablePageLink... using Link produces nasty href URLs which I don't want on my public-facing home page. The only solution I can come up with now is to use some Link derivative and create the static URL which will be used in the href to make it look nice while being able to override onClick()... Uwe Schäfer wrote: classacts schrieb: When I'm at AppPage {1=foo} and click on the Login link, I then go to the LoginPage with a nice URL showing in the address bar. After submitting the login form and upon successful authentication, I want to automatically navigate back to AppPage {1=foo} so that it is re-rendered to take into account he user is now authenticated and consequently has more authority. so if not using RestartResponseAtInterceptionPage, what you want is to a) move to a nice looking/bookmarkable url for that login page and b) pass the reference to your current page, so that the targeting page can do setResponsePage(myBackPage); this can be complished using HybridUrlCodingStrategy like below. At first glance, it seems that your solution would work the best as you have the ability to store information in the MetaData portion of the components. well it is more about passing data directly to the targeted page, but STILL have a nicelooking and bookmarkable URL. Let´s say you would not care about URLs, what you´d do is: class A extend Page{ ... B b = new B(); b.setWhateverStateYouLike(..); b.setMybackPage(this); setResponsePage(b); ... } class B extends Page { ... setMyBackPage(Page back){this.back=back;} ... new Link(back){ void onClick(){ setResponsePage(back); } } ... } the 'problem' here is - for those, who care about urls - the URL you give to B here does not have parameters. with the mentioned b.setMetaData(HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY, new PageParameters(...)) you could add parameters to the URL. That is it. Basically, Page targetPage = new LoginPage(new PageParameters()); (LoginPage doesn't have any parameters) Page targetPage = new BookmarkablePageClass(... well, you don´t need parameters then ;) By following the above implementation, would it not be a tad wasteful creating LoginPage instances every time any BasePage sibling is created? sure, why would you want to do that? what about new Link(bla){onClick(){setResponsePage(new LoginPage(...);}} ? you´d create it when it is needed then, right? cu uwe - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Going-back-to-a-previous-URL--tp19254601p19267162.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: PageExpiredException on production
Hmm, have you supervised the process where they timeout? Or could it be that a few users that click the back button until they reach a page which are no longer in the pagemap, I belive 15 are the default? rivkash1 wrote: hello all, We are working with Wicket (1.3.4) on production for a couple of months. It runs within jetty 6.1.7. For some weeks, we are experiencing a strange PageExpiredException which happens only on production env. It mostly happens on 2 main Pages in which the users submit the same form in a rolling manner (i.e. fill the form fields, submit the form, the user is redirected to the same page with a clean form and fills the form with new data and so on repeatedly). It isn't a problem of session expiration because our session timeout is set to 10 hours, this is the setting in our web.xml file: session-config session-timeout600/session-timeout /session-config We changed the logging level of Wicket to DEBUG, I'm attaching only a little fraction from our log file, you can see the whole exception in the file attached to this post: This message is printed in level of warning, yet it is just for tracing: invoked resolve! RequestParameters: [RequestParameters componentPath=4:registrationManagementForm pageMapName=null versionNumber=0 interfaceName=IActivePageBehav iorListener componentId=null behaviorId=1 urlDepth=-1 parameters={random=0.14328683405517095,amp;wicket:ignoreIfNotActive=true } onlyProcessIfPathActive=false] - 2008-09-01 15:18:47,372 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked resolveRenderedPage! RequestParameters: [RequestParameters componentPath=4:registrationManagementForm pageMapName=null versionNumber=0 interfaceName=IActivePageBehav iorListener componentId=null behaviorId=1 urlDepth=-1 parameters={random=0.14328683405517095,amp;wicket:ignoreIfNotActive=true } onlyProcessIfPathActive=false] - 2008-09-01 15:18:47,372 [DEBUG] apache.wicket.Session - Getting page [path = 4:registrationManagementForm, versionNumber = 0] 2008-09-01 15:18:47,376 [WARN ] security.authentication.NiteWebRequestCycleProcessor - - completed resolveRenderedPage! EXIT = 2008-09-01 15:18:47,377 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked respond(RuntimeException e, RequestCycle requestCycle)! - 2008-09-01 15:18:47,377 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked onRuntimeException! - 2008-09-01 15:18:47,377 [ERROR] security.authentication.NiteWebRequestCycleProcessor - onRuntimeException stack: org.apache.wicket.protocol.http.PageExpiredException: Cannot find the rendered page in session [pagemap=null,componentPath=4:r egistrationManagementForm,versionNumber=0] at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:181) at il.org.nite.frm.security.authentication.NiteWebRequestCycleProcessor.resolve http://www.nabble.com/file/p19265678/prod_log.txt prod_log.txt -- -Wicket for love Nino Martinez Wael Java Specialist @ Jayway DK http://www.jayway.dk +45 2936 7684 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: DropDownChoice - required, one item so preselection?
hi, the items in the DropDownChoice come from another part of the application. someone could enter the page with the DropDownChoice on it when there are three items in it but another user could delete two of them and the first user could refresh the page and ideally it would automatically select the only available option when there is functionality that looks like it should be part of the fabric of the application somewhere in a model or in a component but i'm putting it on the page somewhere that will not activate in all situations... i get the feeling that i'm doing something wrong. maybe i am not i will put the code in the constructor and will revisit this at a later date thanks for all your responses john On Thu, Aug 28, 2008 at 2:13 PM, James Carman [EMAIL PROTECTED] wrote: How are the items in the DDC changing? On Thu, Aug 28, 2008 at 9:02 AM, John [EMAIL PROTECTED] wrote: hi, thanks for your response. i know i can set the model manually at point of component creation but as i understand it that code won't be executed if the page is redisplayed and the items in the DropDownChoice have changed and it would need to be duplicated each time i need this functionality. it seems to me that this functionality should be in my custom extension of the component. i could put such code in the constructor of my component but again it would not be executed when the component is redisplayed. apologies... maybe i have got the wrong end of the stick here... maybe should this code only be executed once, and not again? john On Thu, Aug 28, 2008 at 11:37 AM, Nino Saturnino Martinez Vazquez Wael [EMAIL PROTECTED] wrote: just set the model to what you want selected:) John wrote: hi, when using a DropDownChoice is there a way to have the value preselected if there is only one available and the field is required? i have looked through the code but cannot see any settings that might control this, and am stumped trying to work out how to extend the control in this way. john - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
WebPage error when throwing RestartResponseException in onBeforeRender
Hello everyone. Im trying to redirect the user to another page in OnBeforeRender. I works but I get a wierd error in the tomcat console. Here it follows: ERROR - WebPage- You probably forgot to add a body or header tag to your markup since no Header Container was. But when I check on the source of the page I can see the header and body. Here my code in onbeforerender. (The code in onbeforerender i there to prevent the user to use the backbutton in a wizard) protected void onBeforeRender() { super.onBeforeRender(); if(!mActiveStepPerformed !getForm().hasError()) { getRequestCycle().setRedirect(true); throw new RestartResponseException(getBackButtonRedirect()); } mActiveStepPerformed = false; } The wizard panel is in a WebMarkupContainer that has isTransparentResolver(){return true};. I saw something about this error message and isTransparentResolver. But I didnt get it. Can anyone exlpain? Jens Alenius -- View this message in context: http://www.nabble.com/WebPage-error-when-throwing-RestartResponseException-in-onBeforeRender-tp19268671p19268671.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: Going back to a previous URL?
I have also noticed that HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY will ADD my referring page's page parameters to the URL of the target page. While it works, it's not very elegant at all. Perhaps I'm not following your suggestion as you intended? classacts wrote: Hi Uwe, Thanks for your reply, I understand your technique now. However, what about when we do care about URLs? For example, my LoginPageLink class is as follows: @NonAuthOnly private final class LoginPageLink extends BookmarkablePageLink { private static final long serialVersionUID = 1L; public LoginPageLink(String id) { super(id, LoginPage.class); } //@Override //public void onClick() { //LoginPage lp = new LoginPage(); //lp.setReferringPage(BasePage.this.getPage()); //} } Not really quite sure how to create an instance of LoginPage here and still being able to use BookmarkablePageLink... using Link produces nasty href URLs which I don't want on my public-facing home page. The only solution I can come up with now is to use some Link derivative and create the static URL which will be used in the href to make it look nice while being able to override onClick()... Uwe Schäfer wrote: classacts schrieb: When I'm at AppPage {1=foo} and click on the Login link, I then go to the LoginPage with a nice URL showing in the address bar. After submitting the login form and upon successful authentication, I want to automatically navigate back to AppPage {1=foo} so that it is re-rendered to take into account he user is now authenticated and consequently has more authority. so if not using RestartResponseAtInterceptionPage, what you want is to a) move to a nice looking/bookmarkable url for that login page and b) pass the reference to your current page, so that the targeting page can do setResponsePage(myBackPage); this can be complished using HybridUrlCodingStrategy like below. At first glance, it seems that your solution would work the best as you have the ability to store information in the MetaData portion of the components. well it is more about passing data directly to the targeted page, but STILL have a nicelooking and bookmarkable URL. Let´s say you would not care about URLs, what you´d do is: class A extend Page{ ... B b = new B(); b.setWhateverStateYouLike(..); b.setMybackPage(this); setResponsePage(b); ... } class B extends Page { ... setMyBackPage(Page back){this.back=back;} ... new Link(back){ void onClick(){ setResponsePage(back); } } ... } the 'problem' here is - for those, who care about urls - the URL you give to B here does not have parameters. with the mentioned b.setMetaData(HybridUrlCodingStrategy.PAGE_PARAMETERS_META_DATA_KEY, new PageParameters(...)) you could add parameters to the URL. That is it. Basically, Page targetPage = new LoginPage(new PageParameters()); (LoginPage doesn't have any parameters) Page targetPage = new BookmarkablePageClass(... well, you don´t need parameters then ;) By following the above implementation, would it not be a tad wasteful creating LoginPage instances every time any BasePage sibling is created? sure, why would you want to do that? what about new Link(bla){onClick(){setResponsePage(new LoginPage(...);}} ? you´d create it when it is needed then, right? cu uwe - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Going-back-to-a-previous-URL--tp19254601p19269273.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]
Authentication and authorization not working
Hi! I'm starting with Wicket. Yesterday I created a test and put basic authentication and authorization to work. After some changes, it doesn't work anymore. Basically, I have this: WebSession class extending AuthenticatedWebSession Application class overriding getHomePage(), getSignInPageClass() and getWebSessionClass(). When I try to enter on the home page, it is just going directly without go to the login page. My WebSession.authenticate method is not called, and @AuthorizeInstantiation on the home page isn't respected. What could I'm doing wrong? Thanks, Adriano - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Authentication and authorization not working
I figured the problem myself... I didn't called super.init() when I override Application.init. Adriano - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Wicket @ www.xing.com
Hi list, there also is a Wicket group on Xing. Hope this helps to spread the word about Wicket a bit further. As I applied for founding that group there, I'm listed as its moderator. Also I uploaded the banners, hope this bears no legal problems. Currently the groups language is registered to be German. Let's see how this evolves. So if you are curious, the group has a homepage: https://www.xing.com/net/apachewicket/ and you can join here: http://www.xing.com/group-22755.989d80 Have fun! Martin - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: WebPage error when throwing RestartResponseException in onBeforeRender
yepp. bug. have a look at: https://issues.apache.org/jira/browse/WICKET-1478 and http://www.nabble.com/Throw-AbortWithWebErrorCodeException-in-onBeforeRender-to16446341.html#a16473849 regards Michael jensiator wrote: Hello everyone. Im trying to redirect the user to another page in OnBeforeRender. I works but I get a wierd error in the tomcat console. Here it follows: ERROR - WebPage- You probably forgot to add a body or header tag to your markup since no Header Container was. But when I check on the source of the page I can see the header and body. Here my code in onbeforerender. (The code in onbeforerender i there to prevent the user to use the backbutton in a wizard) protected void onBeforeRender() { super.onBeforeRender(); if(!mActiveStepPerformed !getForm().hasError()) { getRequestCycle().setRedirect(true); throw new RestartResponseException(getBackButtonRedirect()); } mActiveStepPerformed = false; } The wizard panel is in a WebMarkupContainer that has isTransparentResolver(){return true};. I saw something about this error message and isTransparentResolver. But I didnt get it. Can anyone exlpain? Jens Alenius - Michael Sparer http://talk-on-tech.blogspot.com -- View this message in context: http://www.nabble.com/WebPage-error-when-throwing-RestartResponseException-in-onBeforeRender-tp19268671p19272371.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: Going back to a previous URL?
classacts schrieb: Not really quite sure how to create an instance of LoginPage here and still being able to use BookmarkablePageLink... just mount it using hybrid, that should be it, right? using Link produces nasty href URLs which I don't want on my public-facing home page. thats the URL in the markup, but when redirecting, you´ll see the nice on in the browser. if this is not sufficient, you might be forced to use bookmarkablepagelinks only, and code your state to parameters or dump it in the session, which is probably not why you chose wicket over any other framework ;) maybe some else has another funky idea how to pass state to a bookmarkable page? cu uwe - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: java.lang.IllegalArgumentException: A child with id 'name' already exists
item.add() ^ Martijn On Tue, Sep 2, 2008 at 6:11 PM, John [EMAIL PROTECTED] wrote: hi, i see this error message a lot and i mean really a lot! i use a lot of ListViews, and the above error message is what you get when you forget to add to the ListItem and instead add to the PropertyListView... add(new PropertyListView(a_list) { @Override protected void populateItem(final ListItem item) { add(new Label(name)); add(new Label(oops_forgot_the_item)); } }); i want to ask is there ever a situation when you want to add a component to the PropertyListView or is it always illegal? basically... i would guess lots of people make the same mistake and see the same error... i'm not suggesting automatically adding the component to the ListItem but if there's no reason to add a component to the PropertyListView i wanted to ask if this mistake is common enough to warrant adding a specific error message for it? john - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Become a Wicket expert, learn from the best: http://wicketinaction.com Apache Wicket 1.3.4 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: java.lang.IllegalArgumentException: A child with id 'name' already exists
a perfect example Martijn - you immediately recognise the error message and don't need to read further to come up with a solution ;-) but wouldn't it be an improvement for new developers if the message were absolutely explicit about the problem? john On Tue, Sep 2, 2008 at 5:13 PM, Martijn Dashorst [EMAIL PROTECTED] wrote: item.add() ^ Martijn On Tue, Sep 2, 2008 at 6:11 PM, John [EMAIL PROTECTED] wrote: hi, i see this error message a lot and i mean really a lot! i use a lot of ListViews, and the above error message is what you get when you forget to add to the ListItem and instead add to the PropertyListView... add(new PropertyListView(a_list) { @Override protected void populateItem(final ListItem item) { add(new Label(name)); add(new Label(oops_forgot_the_item)); } }); i want to ask is there ever a situation when you want to add a component to the PropertyListView or is it always illegal? basically... i would guess lots of people make the same mistake and see the same error... i'm not suggesting automatically adding the component to the ListItem but if there's no reason to add a component to the PropertyListView i wanted to ask if this mistake is common enough to warrant adding a specific error message for it? john - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tracking logged in users / SessionStore questions
Hi guys, I'm developing a portal/forum application for my dissertation and wanted to display a panel with all currently active users. Now I found an old thread (Wicket 2.0) where Eelco posted an example SessionStore implementation to solve this specific problem, but that raised some questions. 1. Should I subclass HttpSessionStore or SecondLevelCacheSS? What is the back-button problem with HttpSessionStore? Is there another way to solve this? 2. Eelco's implementation seems to be memory only, why would I want that? What are the advantages/drawbacks? Should I implement a custom database specific session store? 3. Not that I'm hitting a million users any time soon, but what would be the best approach in terms of clustering, just out of interest? Thanks in advance Marco -- View this message in context: http://www.nabble.com/Tracking-logged-in-users---SessionStore-questions-tp19273568p19273568.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]
java.lang.IllegalArgumentException: A child with id 'name' already exists
hi, i see this error message a lot and i mean really a lot! i use a lot of ListViews, and the above error message is what you get when you forget to add to the ListItem and instead add to the PropertyListView... add(new PropertyListView(a_list) { @Override protected void populateItem(final ListItem item) { add(new Label(name)); add(new Label(oops_forgot_the_item)); } }); i want to ask is there ever a situation when you want to add a component to the PropertyListView or is it always illegal? basically... i would guess lots of people make the same mistake and see the same error... i'm not suggesting automatically adding the component to the ListItem but if there's no reason to add a component to the PropertyListView i wanted to ask if this mistake is common enough to warrant adding a specific error message for it? john - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: PageExpiredException on production
It is a problem to debug the process because the exception is happening only on production and it's occurance is unpredictable. The users don't use the back button in this senario. They do, however, work on 2 windows of firefox simulatnously (same session) where one window is usually the rolling input page i mentioned before, and the other is a simple CRUD page. Nino.Martinez wrote: Hmm, have you supervised the process where they timeout? Or could it be that a few users that click the back button until they reach a page which are no longer in the pagemap, I belive 15 are the default? rivkash1 wrote: hello all, We are working with Wicket (1.3.4) on production for a couple of months. It runs within jetty 6.1.7. For some weeks, we are experiencing a strange PageExpiredException which happens only on production env. It mostly happens on 2 main Pages in which the users submit the same form in a rolling manner (i.e. fill the form fields, submit the form, the user is redirected to the same page with a clean form and fills the form with new data and so on repeatedly). It isn't a problem of session expiration because our session timeout is set to 10 hours, this is the setting in our web.xml file: session-config session-timeout600/session-timeout /session-config We changed the logging level of Wicket to DEBUG, I'm attaching only a little fraction from our log file, you can see the whole exception in the file attached to this post: This message is printed in level of warning, yet it is just for tracing: invoked resolve! RequestParameters: [RequestParameters componentPath=4:registrationManagementForm pageMapName=null versionNumber=0 interfaceName=IActivePageBehav iorListener componentId=null behaviorId=1 urlDepth=-1 parameters={random=0.14328683405517095,amp;wicket:ignoreIfNotActive=true } onlyProcessIfPathActive=false] - 2008-09-01 15:18:47,372 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked resolveRenderedPage! RequestParameters: [RequestParameters componentPath=4:registrationManagementForm pageMapName=null versionNumber=0 interfaceName=IActivePageBehav iorListener componentId=null behaviorId=1 urlDepth=-1 parameters={random=0.14328683405517095,amp;wicket:ignoreIfNotActive=true } onlyProcessIfPathActive=false] - 2008-09-01 15:18:47,372 [DEBUG] apache.wicket.Session - Getting page [path = 4:registrationManagementForm, versionNumber = 0] 2008-09-01 15:18:47,376 [WARN ] security.authentication.NiteWebRequestCycleProcessor - - completed resolveRenderedPage! EXIT = 2008-09-01 15:18:47,377 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked respond(RuntimeException e, RequestCycle requestCycle)! - 2008-09-01 15:18:47,377 [WARN ] security.authentication.NiteWebRequestCycleProcessor - = ENTER == == This message is printed in level of warning, yet it is just for tracing: invoked onRuntimeException! - 2008-09-01 15:18:47,377 [ERROR] security.authentication.NiteWebRequestCycleProcessor - onRuntimeException stack: org.apache.wicket.protocol.http.PageExpiredException: Cannot find the rendered page in session [pagemap=null,componentPath=4:r egistrationManagementForm,versionNumber=0] at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:181) at il.org.nite.frm.security.authentication.NiteWebRequestCycleProcessor.resolve http://www.nabble.com/file/p19265678/prod_log.txt prod_log.txt -- -Wicket for love Nino Martinez Wael Java Specialist @ Jayway DK http://www.jayway.dk +45 2936 7684 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/PageExpiredException-on-production-tp19265678p19273738.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: java.lang.IllegalArgumentException: A child with id 'name' already exists
Well, it is hard to find out hierarchy problems. In this case you could've added components that are siblings to the listview as childs of the listview, instead of children of the item to the listview. There are too many things that can go wrong in constructing the hierarchy. However, possibly we can improve this. Would you mind to add a JIRA issue for this? Thanks, Martijn On Tue, Sep 2, 2008 at 6:20 PM, John [EMAIL PROTECTED] wrote: a perfect example Martijn - you immediately recognise the error message and don't need to read further to come up with a solution ;-) but wouldn't it be an improvement for new developers if the message were absolutely explicit about the problem? john On Tue, Sep 2, 2008 at 5:13 PM, Martijn Dashorst [EMAIL PROTECTED] wrote: item.add() ^ Martijn On Tue, Sep 2, 2008 at 6:11 PM, John [EMAIL PROTECTED] wrote: hi, i see this error message a lot and i mean really a lot! i use a lot of ListViews, and the above error message is what you get when you forget to add to the ListItem and instead add to the PropertyListView... add(new PropertyListView(a_list) { @Override protected void populateItem(final ListItem item) { add(new Label(name)); add(new Label(oops_forgot_the_item)); } }); i want to ask is there ever a situation when you want to add a component to the PropertyListView or is it always illegal? basically... i would guess lots of people make the same mistake and see the same error... i'm not suggesting automatically adding the component to the ListItem but if there's no reason to add a component to the PropertyListView i wanted to ask if this mistake is common enough to warrant adding a specific error message for it? john - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Become a Wicket expert, learn from the best: http://wicketinaction.com Apache Wicket 1.3.4 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tracking logged in users / SessionStore questions
Take a look at enabling the RequestLogger and querying it. It gives access to sessions and requests. http://wicket.apache.org/docs/wicket-1.3.2/wicket/apidocs/org/apache/wicket/protocol/http/RequestLogger.html Martijn On Tue, Sep 2, 2008 at 6:32 PM, behlma [EMAIL PROTECTED] wrote: Hi guys, I'm developing a portal/forum application for my dissertation and wanted to display a panel with all currently active users. Now I found an old thread (Wicket 2.0) where Eelco posted an example SessionStore implementation to solve this specific problem, but that raised some questions. 1. Should I subclass HttpSessionStore or SecondLevelCacheSS? What is the back-button problem with HttpSessionStore? Is there another way to solve this? 2. Eelco's implementation seems to be memory only, why would I want that? What are the advantages/drawbacks? Should I implement a custom database specific session store? 3. Not that I'm hitting a million users any time soon, but what would be the best approach in terms of clustering, just out of interest? Thanks in advance Marco -- View this message in context: http://www.nabble.com/Tracking-logged-in-users---SessionStore-questions-tp19273568p19273568.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] -- Become a Wicket expert, learn from the best: http://wicketinaction.com Apache Wicket 1.3.4 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Google Chrome Wicket
I have just installed Google Chrome (v0.2.149.27). I expect this is a browser that will be supported (eventually), so it's probably a good idea to keep a list of issues in one place (here, on the Wiki or Jira) as we come across unexpected or different behaviour of our Wicket apps. To get the ball rolling, the jWeekend Add To Cart button on our http://jweekend.com/dev/BookingPage/ course booking page , that works well in all other browsers we have tried it in, is doing nothing in Google Chrome. The rest of the Ajax functionality tested so far seems to be OK. I'll send an update once I've had chance to run in development mode. Regards - Cemal http://jweekend.com http://jWeekend.co.uk -- View this message in context: http://www.nabble.com/Google-Chrome---Wicket-tp19277005p19277005.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: Google Chrome Wicket
I have installed Google Chrome as well and found several Wicket extensions not working, namely - modal window - tabbed panels - editable label - clock example Maybe it's a bit too early for Chrome... -- View this message in context: http://www.nabble.com/Google-Chrome---Wicket-tp19277005p19279190.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: Discussion on Wicket Interface Speed-Up
The problem of breaking encapsulation: I did some work on this problem on my own a few months ago, my solution was to use a header contrib manager, and instead of adding files with a header contributer i add them to the manager, then get a single contributer per page from the manger. for example in a panel you would do @Override protected void onBeforeRender() { super.onBeforeRender(); ResourceReference rr = new ResourceReference(getClass(), test.js); WicketApplication.get().getHcm().add(rr, getPage().getClass()); } See how it uses getPage().getClass(), so the manager knows which class the panel is being added into then in the main page class @Override protected void onBeforeRender() { super.onBeforeRender(); add(WicketApplication.get().getHcm().getHeaderContributor(getClass())); } since the manager knows all of the resources added for the page at this point, it is easy to compress them all together and serve a single file, and you dont have to list the files up front. What do you think of this idea? My code is here: http://www.nabble.com/file/p19279269/HeaderContribManagerTest.zip HeaderContribManagerTest.zip It still has bugs etc in it, and doesnt really work cos ive messed up the registerResource method, but you should be able to get the idea from it Richard - http://www.richard-wilkinson.co.uk My blog: http://www.richard-wilkinson.co.uk -- View this message in context: http://www.nabble.com/Discussion-on-%22Wicket-Interface-Speed-Up%22-tp19197540p19279269.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: Google Chrome Wicke
Modal window seems to work fine for me, except that events are not propagated when mouse is over iframe. Tabbed panel works fine, so does editable label and clock example. (tested with latest 1.4 examples) -Matej On Tue, Sep 2, 2008 at 11:53 PM, cstein1206 [EMAIL PROTECTED] wrote: I have installed Google Chrome as well and found several Wicket extensions not working, namely - modal window - tabbed panels - editable label - clock example Maybe it's a bit too early for Chrome... -- View this message in context: http://www.nabble.com/Google-Chrome---Wicket-tp19277005p19279190.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]
Re: Discussion on Wicket Interface Speed-Up
problem with this is that pages can have dynamic components which dynamic header contributions. so either you have to somehow collect all possible header contributions from all possible component combinations - breaking encapsulation in the process, or you have to do what you do - ending up with many many possible and big javascript files to serve to the user. -igor On Tue, Sep 2, 2008 at 2:57 PM, richardwilko [EMAIL PROTECTED] wrote: The problem of breaking encapsulation: I did some work on this problem on my own a few months ago, my solution was to use a header contrib manager, and instead of adding files with a header contributer i add them to the manager, then get a single contributer per page from the manger. for example in a panel you would do @Override protected void onBeforeRender() { super.onBeforeRender(); ResourceReference rr = new ResourceReference(getClass(), test.js); WicketApplication.get().getHcm().add(rr, getPage().getClass()); } See how it uses getPage().getClass(), so the manager knows which class the panel is being added into then in the main page class @Override protected void onBeforeRender() { super.onBeforeRender(); add(WicketApplication.get().getHcm().getHeaderContributor(getClass())); } since the manager knows all of the resources added for the page at this point, it is easy to compress them all together and serve a single file, and you dont have to list the files up front. What do you think of this idea? My code is here: http://www.nabble.com/file/p19279269/HeaderContribManagerTest.zip HeaderContribManagerTest.zip It still has bugs etc in it, and doesnt really work cos ive messed up the registerResource method, but you should be able to get the idea from it Richard - http://www.richard-wilkinson.co.uk My blog: http://www.richard-wilkinson.co.uk -- View this message in context: http://www.nabble.com/Discussion-on-%22Wicket-Interface-Speed-Up%22-tp19197540p19279269.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]
Re: Google Chrome Wicke
I've been using 1.4-m3 and things don't work here with Google Chrome 0.2.149.27. Is there a newer version of those examples I didn't see? -- View this message in context: http://www.nabble.com/Google-Chrome---Wicket-tp19277005p19280167.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: Google Chrome Wicket
That's weird since I don't get anything (examples are from 1.4-m3). For me it seems like Chrome is handling the AJAX responses differently as it's always reporting 0 characters in the response. Here's the full debug output of the modal window from Chrome when clicking on Show modal dialog with a page: INFO: Using XMLHttpRequest transport INFO: INFO: Initiating Ajax GET request on ?wicket:interface=:1:showModal1::IBehaviorListener:0:random=0.8373860055580735 INFO: Invoking pre-call handler(s)... INFO: Received ajax response (0 characters) INFO: ERROR: Error while parsing response: Could not find root ajax-response element INFO: Invoking post-call handler(s)... INFO: Invoking failure handler(s)... HTH -Chris Matej Knopp-2 wrote: Modal window seems to work fine for me, except that events are not propagated when mouse is over iframe. Tabbed panel works fine, so does editable label and clock example. (tested with latest 1.4 examples) -Matej On Tue, Sep 2, 2008 at 11:53 PM, cstein1206 [EMAIL PROTECTED] wrote: I have installed Google Chrome as well and found several Wicket extensions not working, namely - modal window - tabbed panels - editable label - clock example Maybe it's a bit too early for Chrome... -- View this message in context: http://www.nabble.com/Google-Chrome---Wicket-tp19277005p19279190.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/Google-Chrome---Wicket-tp19277005p19280602.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: How do you use wicket Link to redirect you to FTP?
this was a bug, fixed.get a snapshot, build yourself from svn, or wait for the next release. -igor On Tue, Sep 2, 2008 at 4:51 PM, groffhibbitz [EMAIL PROTECTED] wrote: Hi, I'm using a wicket link component in one of my pages and when the user clicks on the link i want it to check if they are logged in, and then redirect them to this FTP url: ftp://myftpaddress.com and I tried adding a RedirectToURLException(ftp://myftpaddress.com;); to the onclick of the link, but that just tries to send me to /app/ftp://myftpaddress.com that is.. relative to the root of my web application... If I use the ExternalLink class instead of the regular Link class, I can't add any logic to the onClick method (as there is no such method in an external link). Any thoughts on how to solve this problem? thanks in advance -- View this message in context: http://www.nabble.com/How-do-you-use-wicket-Link-to-redirect-you-to-FTP--tp19280608p19280608.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]