Re: Wicket page expired if push button to open new page
Thank you Maxim, I will try to implement your example as workaround Best Regards,Erwan PS: Sorry for bad formatted email i don't know why(and English :p ), using yahoo mail On Thursday, May 18, 2017, 3:39:53 PM GMT+7, Maxim Solodovnikwrote:In case Ajax is available you can start with button disabled by default Then add AbstractDefaultAjaxBehavior to the page and trigger it on dom ready: @Override public void renderHead(IHeaderResponse response) { response.render(OnDomReadyHeaderItem.forScript(myBehavior.getCallbackScript())); } and enable your buttons in myBehavior response On Thu, May 18, 2017 at 3:30 PM, Martin Grigorov wrote: > Hi, > > See PageExpiredException javadoc. > The exception is not thrown only when the session is expired. > Most probably the page has not be saved at all. > > Martin Grigorov > Wicket Training and Consulting > https://twitter.com/mtgrigorov > > On Thu, May 18, 2017 at 10:12 AM, Erwan Tanajaya > wrote: > >> hi all, >> I have problem always get Page Expired error(event i set my session >> expired time to 8 hour), it happen if i open a page that had a datatable >> with have hundred of row.If i click a button that had a setResponsePage to >> a new page when the page is still loading and do something in the new >> opened page(push a button for example) it will cause Page Expired. >> can anybody help me to solve this problem ? >> i using :wicket 7.3tomcat 8.5java 8 >> >> Best Regards,Erwan >> -- WBR Maxim aka solomax - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Wicket page expired if push button to open new page
Hi Martin, Thank you for your answer How can i know if the page has not been saved ?There are no stacktrace in my log saying anything when the exception occurred. Best Regards, Erwan PS: Sorry for bad formatted email i don't know why(and English :p ), using yahoo mail On Thursday, May 18, 2017, 3:31:43 PM GMT+7, Martin Grigorovwrote:Hi, See PageExpiredException javadoc. The exception is not thrown only when the session is expired. Most probably the page has not be saved at all. Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Thu, May 18, 2017 at 10:12 AM, Erwan Tanajaya wrote: > hi all, > I have problem always get Page Expired error(event i set my session > expired time to 8 hour), it happen if i open a page that had a datatable > with have hundred of row.If i click a button that had a setResponsePage to > a new page when the page is still loading and do something in the new > opened page(push a button for example) it will cause Page Expired. > can anybody help me to solve this problem ? > i using :wicket 7.3tomcat 8.5java 8 > > Best Regards,Erwan >
Re: FileUploadField with AJAX Behavior
We are using: http://www.jasny.net/bootstrap/javascript/#fileinput integrated into our application [1] Looks good, works as expected :) [1] https://github.com/apache/openmeetings/tree/master/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/upload On Fri, May 19, 2017 at 5:57 AM, Martin Grigorovwrote: > Hi, > > Please create a quickstart app and attach it to a ticket in JIRA! > Thanks! > > Martin Grigorov > Wicket Training and Consulting > https://twitter.com/mtgrigorov > > On Tue, May 16, 2017 at 6:35 PM, SeldonCrisis wrote: > >> Hello everyone, >> >> I would like to perform some actions in an AJAX event after selecting a >> file >> from the file-browsing pop-up window in a FileUploadField component >> (populate a list based on name of file chosen). I've tried adding an >> OnChangeAjaxBehavior to my FileUploadField and implementing the >> onUpdate(AjaxRequestTarget arg0) method. Unfortunately, this is not working >> for me. Does anyone have any suggestions as to how I could AJAX-ify this >> component? >> >> This is my current code: >> >> fileUploadField.add(new OnChangeAjaxBehavior(){ >> private static final long serialVersionUID = 1L; >> >> @Override >> protected void onUpdate(AjaxRequestTarget arg0) { >> if (fileUploadField.getFileUpload() != null){ >> info("Added file to list"); >> final FileUpload uploadedFile = >> fileUploadField.getFileUpload(); >> addFile(uploadedFile); >> buildListView(); >> arg0.add(fileUploadField); >> arg0.add(documentListItems); >> arg0.add(feedback); >> } >> } >> }); >> >> Thanks for your help! >> >> >> -- >> View this message in context: http://apache-wicket.1842946. >> n4.nabble.com/FileUploadField-with-AJAX-Behavior-tp4677874.html >> Sent from the Users forum mailing list archive at Nabble.com. >> >> - >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >> For additional commands, e-mail: users-h...@wicket.apache.org >> >> -- WBR Maxim aka solomax - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: FileUploadField with AJAX Behavior
Hi, Please create a quickstart app and attach it to a ticket in JIRA! Thanks! Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Tue, May 16, 2017 at 6:35 PM, SeldonCrisiswrote: > Hello everyone, > > I would like to perform some actions in an AJAX event after selecting a > file > from the file-browsing pop-up window in a FileUploadField component > (populate a list based on name of file chosen). I've tried adding an > OnChangeAjaxBehavior to my FileUploadField and implementing the > onUpdate(AjaxRequestTarget arg0) method. Unfortunately, this is not working > for me. Does anyone have any suggestions as to how I could AJAX-ify this > component? > > This is my current code: > > fileUploadField.add(new OnChangeAjaxBehavior(){ > private static final long serialVersionUID = 1L; > > @Override > protected void onUpdate(AjaxRequestTarget arg0) { > if (fileUploadField.getFileUpload() != null){ > info("Added file to list"); > final FileUpload uploadedFile = > fileUploadField.getFileUpload(); > addFile(uploadedFile); > buildListView(); > arg0.add(fileUploadField); > arg0.add(documentListItems); > arg0.add(feedback); > } > } > }); > > Thanks for your help! > > > -- > View this message in context: http://apache-wicket.1842946. > n4.nabble.com/FileUploadField-with-AJAX-Behavior-tp4677874.html > Sent from the Users forum mailing list archive at Nabble.com. > > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > >
Re: ResourceReference that contains relative paths
Hi, The easiest solution is to move BootstrapCssResourceReference.java one level up and change the relative path to: css/bootstrap.css Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Wed, May 17, 2017 at 2:03 PM, Raviwrote: > Hi, > > I have the following scenario: > My packages look like: > -bootstrap > --css > ---BootstrapCssResourceReference.java > ---bootstrap.css > --fonts > ---glyphicons-halflings-regular.eot > > In that css file bootstrap defines its font by referencing a relative path > (src:url(../fonts/glyphicons-halflings-regular.eot) > The BootstrapCssResourceReference has the following url: > http://localhost:8080/webapp/wicket/resource/some.package.bootstrap.css. > BootstrapCssResourceReference/bootstrap.min-ver-1495022368739.css > > Now when the browser resolves the relativ font url, it comes up with > http://localhost:8080/webapp/wicket/resource/fonts/ > glyphicons-halflings-regular.eot > Obviously it won't find anything there. > > I'm wondering what is the best way of dealing with that kind of references? > I could mount a ResourceReference for each file, but maybe there is a > better > way? > > Thanks for your time, > > Ravi > > > > > -- > View this message in context: http://apache-wicket.1842946.n4.nabble.com/ > ResourceReference-that-contains-relative-paths-tp4677885.html > Sent from the Users forum mailing list archive at Nabble.com. > > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > >
[ANNOUNCE] WicketStuff 8.0.0-M6 Released
WicketStuff core 8.0.0-M6 based on Apache Wicket 8.0.0-M6 is released and soon will be available at Maven Central! The changelog since 8.0.0-M5 is: Andrea Del Bene (3): Fix to servlet api dependency Fixes for the last 8 snapshot Fix to SessionPageStore#canBeAsynchronous. Now it returns false. Konstantinos Karavitis (2): Merge pull request #592 from kkaravitis/master Merge pull request #593 from kkaravitis/master Martin Tzvetanov Grigorov (2): Issue #595 - Remove slf4j-log4j as a dependency to non-example projects Release 8.0.0-M6 kkaravitis (2): fix for #588 issue: When invoking setResponsePage during an ajax resource request the portlet doesn't redirect correctly fix for issue #588 Christopher M. Miles (1): Updated the URL for the cluster example data source Christopher Miles (1): Merge pull request #594 from cmiles74/master chrisly42 (1): Fix for Issue #586: InMethodGrid: ColumnsHeaderRepeater uses wrong markup. (#587) The WicketStuff team
[ANNOUNCE] Apache Wicket 8.0.0-M6 released
The Apache Wicket PMC is proud to announce Apache Wicket 8.0.0-M6! Apache Wicket is an open source Java component oriented web application framework that powers thousands of web applications and web sites for governments, stores, universities, cities, banks, email providers, and more. You can find more about Apache Wicket at https://wicket.apache.org This release marks another minor release of Wicket 8. We use semantic versioning for the development of Wicket, and as such no API breaks are present breaks are present in this release compared to 8.0.0. New and noteworthy -- With this version Wicket removed its internal JSON implementation (based on project JSON-java: https://github.com/stleary/JSON-java) replacing it with external project Open JSON (https://github.com/openjson/openjson). This was necessary as JSON-java's license is no longer compatible with Apache License 2.0. Using this release -- With Apache Maven update your dependency to (and don't forget to update any other dependencies on Wicket projects to the same version): org.apache.wicket wicket-core 8.0.0-M6 Or download and build the distribution yourself, or use our convenience binary package * Source: http://www.apache.org/dyn/closer.cgi/wicket/8.0.0-M6 * Binary: http://www.apache.org/dyn/closer.cgi/wicket/8.0.0-M6/binaries Upgrading from earlier versions --- If you upgrade from 8.y.z this release is a drop in replacement. If you come from a version prior to 8.0.0, please read our Wicket 8 migration guide found at * http://s.apache.org/wicket8migrate Have fun! — The Wicket team The signatures for the source release artefacts: Signature for apache-wicket-8.0.0-M6.zip: -BEGIN PGP SIGNATURE- Version: GnuPG v1 iQIcBAABAgAGBQJZGF1uAAoJEAzCjx+CMhBVHVwQAI9s33bQnf2renrK88l16qHG 3Krvu79Ks5mXzJZmdf6O9jlfgZ+dFsNtPetkteVX+6ngne23r9g1TBd4qB80KEhD qlwbn777TKWhy+CCy++9Nd0qV3Pi6FZv03xzWzo3JaGdzFqne9K4U/af6VIfc69V 6CI0AIXnt9s66yNvOyD4N6b3gXo/BRZLnrzVCQIPI8pVvM816kqYg9R/vXXKkBja y0A/rXaWHCoB9uYBcW1RCeq0RxonaMfOP2lPNZifymk7+VgcjUUYv/ktWXX93SLQ fTQ1FkLF+whxzbPBYdFo3qxleaguWeBQDbDCmSfjAlb+yuFi9tGYQ1aCy2CYB5u4 gFb1O5Dc+Ko6U+143DNnMEW9YrXalvzlmamZhQfxLuWbTX0/fOUjSGLrTCWhbfPK JMK9Gal290gsGKOeyBSwf8RD7RCeLCDrtKJ6Jej/DrIGbShVjXHjVTTSzWrzfyWr jcPqGLTTD7/t8GRsQ/n8gAZeNwww1JGWKeJ89mgTtKFqSvMpAAw7V81KV2J6I5PP vgrJlY8b0oAlCxunD4Af0529bYnXGH8SbD311Hn6OQ5q4JmsTc/0YL1XmeE99QBe y0u8XRNNIbNDtC204pxtcuZBfxBVLgANLQxy85gMO/A7e7sOmO1zJojiQpBMaTVD VjUAN2HX4B/1G+k2QFrm =kM6A -END PGP SIGNATURE- Signature for apache-wicket-8.0.0-M6.tar.gz: -BEGIN PGP SIGNATURE- Version: GnuPG v1 iQIcBAABAgAGBQJZGF1uAAoJEAzCjx+CMhBVLE4P+wVfGgM02TSAIGsRhtCJla9y 5fb0KtOW6D1mRuuuVK8JbWncqpn5B2yuQGnkttE3OV8YUsR1HDwHBgCrx0z5Dcbh +uhNwW+IJTIUrApVVXFN4+X1rZFDQ9dwnJTNjm0kdfzCLPcRriEHzQbg8CUC6JuB 6kndnr5RnyOGZInqs6ilB4fobUzIxR6s8ck4PoXSiFh+NE+jcllYfHv+3/3aVR2p ZwC2R3gTFZAWeQB3IXQUSwnLeL4RPi2WCke1EcKBXnYM3TU41JHy1UuY2gSSpAXL DO3VgZZLibEn4rqNp9URYellrYG5TEmhtylS6C7zgY8AmhbTGrW/PYPvLV3WOOXw xdhBoaVjZg7ovov4bQQ74GW4w9GgxF9Xzwh/60bSngMyI4sGpm2bLrGh2YunA2OM sguJMMa4fAMCvyrcejqMOfkF7z0W+9BK53/CPzBNLiLyIKaKrAkeU6PClfZyowDm tHIOmbeTvXjDogOOweWonBZEfUHjhAOP+f7PeCpzCDkCcG0Fe7yaamNB0xtguAC/ enme13t9rz/7pBdUxyWRtgzdbRFfl1KYgrGS6FRbw2wfOCJf+qIKfsaJIWLQOxei nWyRNUVXKwvIeu1ad4pujXh7ldNTkDsrtUSkrFCUV4TLya3SGrFLurKefuMidPze 4F5Gjn0iDossLMbNHY8U =kX7X -END PGP SIGNATURE- CHANGELOG for 8.0.0-M6: ** Bug * [WICKET-6177] - Introduce AsynchronousPageStore * [WICKET-6339] - Wrong implementation of MarkupFragment.iterator() * [WICKET-6353] - Proxy deserialization fails due to classloading issues * [WICKET-6356] - Clustering failover not working on Tomcat * [WICKET-6360] - WebSocket fails when url-based jsessionid is used * [WICKET-6361] - MarkupContainer#queue doesn't work in table column * [WICKET-6362] - HeaderItems with different PageParameters are treated as identical * [WICKET-6365] - Links on "Contribute to the User Guide" are broken ** Improvement * [WICKET-6347] - IChoiceRenderer implements IDetachable * [WICKET-6348] - New FormComponentUpdatingBehavior to replace wantOnSelectionChangedNotifications() * [WICKET-6351] - Form.anyFormComponentError performance degradation * [WICKET-6354] - Add JavaScriptResourceReference for JQuery 3.x * [WICKET-6355] - Pass the request attributes to FileSystemResource#createResourceResponse() * [WICKET-6364] - The autogenerated input field when a form has a default button should not gain the focus when navigating with tab ** New Feature * [WICKET-6286] - Would be good to have AjaxDownload available out of the box ** Task * [WICKET-4201] - IPageProvider and its implementations need to be improved * [WICKET-6322] - Remove lambda
Re: Wicket page expired if push button to open new page
In case Ajax is available you can start with button disabled by default Then add AbstractDefaultAjaxBehavior to the page and trigger it on dom ready: @Override public void renderHead(IHeaderResponse response) { response.render(OnDomReadyHeaderItem.forScript(myBehavior.getCallbackScript())); } and enable your buttons in myBehavior response On Thu, May 18, 2017 at 3:30 PM, Martin Grigorovwrote: > Hi, > > See PageExpiredException javadoc. > The exception is not thrown only when the session is expired. > Most probably the page has not be saved at all. > > Martin Grigorov > Wicket Training and Consulting > https://twitter.com/mtgrigorov > > On Thu, May 18, 2017 at 10:12 AM, Erwan Tanajaya > wrote: > >> hi all, >> I have problem always get Page Expired error(event i set my session >> expired time to 8 hour), it happen if i open a page that had a datatable >> with have hundred of row.If i click a button that had a setResponsePage to >> a new page when the page is still loading and do something in the new >> opened page(push a button for example) it will cause Page Expired. >> can anybody help me to solve this problem ? >> i using :wicket 7.3tomcat 8.5java 8 >> >> Best Regards,Erwan >> -- WBR Maxim aka solomax - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Wicket page expired if push button to open new page
Hi, See PageExpiredException javadoc. The exception is not thrown only when the session is expired. Most probably the page has not be saved at all. Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Thu, May 18, 2017 at 10:12 AM, Erwan Tanajayawrote: > hi all, > I have problem always get Page Expired error(event i set my session > expired time to 8 hour), it happen if i open a page that had a datatable > with have hundred of row.If i click a button that had a setResponsePage to > a new page when the page is still loading and do something in the new > opened page(push a button for example) it will cause Page Expired. > can anybody help me to solve this problem ? > i using :wicket 7.3tomcat 8.5java 8 > > Best Regards,Erwan >
Re: Wicket page expired if push button to open new page
Hi Maxim, Thank you for your answer, The user don't want a paging, how to block the page navigation until data fully available ? Best Regards,Erwan Tanajaya On Thursday, May 18, 2017, 3:16:21 PM GMT+7, Maxim Solodovnikwrote:Maybe it worth to add paging and limit displayed rows to some reasonable count? Or block page navigations until data will be fully available? On Thu, May 18, 2017 at 3:12 PM, Erwan Tanajaya wrote: > hi all, > I have problem always get Page Expired error(event i set my session expired > time to 8 hour), it happen if i open a page that had a datatable with have > hundred of row.If i click a button that had a setResponsePage to a new page > when the page is still loading and do something in the new opened page(push a > button for example) it will cause Page Expired. > can anybody help me to solve this problem ? > i using :wicket 7.3tomcat 8.5java 8 > > Best Regards,Erwan -- WBR Maxim aka solomax - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Wicket page expired if push button to open new page
Maybe it worth to add paging and limit displayed rows to some reasonable count? Or block page navigations until data will be fully available? On Thu, May 18, 2017 at 3:12 PM, Erwan Tanajayawrote: > hi all, > I have problem always get Page Expired error(event i set my session expired > time to 8 hour), it happen if i open a page that had a datatable with have > hundred of row.If i click a button that had a setResponsePage to a new page > when the page is still loading and do something in the new opened page(push a > button for example) it will cause Page Expired. > can anybody help me to solve this problem ? > i using :wicket 7.3tomcat 8.5java 8 > > Best Regards,Erwan -- WBR Maxim aka solomax - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Wicket page expired if push button to open new page
hi all, I have problem always get Page Expired error(event i set my session expired time to 8 hour), it happen if i open a page that had a datatable with have hundred of row.If i click a button that had a setResponsePage to a new page when the page is still loading and do something in the new opened page(push a button for example) it will cause Page Expired. can anybody help me to solve this problem ? i using :wicket 7.3tomcat 8.5java 8 Best Regards,Erwan
Re: Access to Dynamically Generated AjaxEditableLabel Value
Hi, You have to update the models, so you are doing it right! Please create a simple demo application and share it with us (e.g. at GitHub, BitBucket) and we will try to see where is the problem. Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Thu, May 18, 2017 at 9:23 AM, Ehsanwrote: > Hi Martin, > Thank you for your answer. > I changed the the Model of the AEL but still can not retrieve the values > which are entered in them. Could you please let me know how can I retrieve > these values for each row of table? > > > Thanks in advance > > -- > View this message in context: http://apache-wicket.1842946. > n4.nabble.com/Access-to-Dynamically-Generated-AjaxEditableLabel-Value- > tp4677886p4677890.html > Sent from the Users forum mailing list archive at Nabble.com. > > - > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > >
Re: Access to Dynamically Generated AjaxEditableLabel Value
Hi Martin, Thank you for your answer. I changed the the Model of the AEL but still can not retrieve the values which are entered in them. Could you please let me know how can I retrieve these values for each row of table? Thanks in advance -- View this message in context: http://apache-wicket.1842946.n4.nabble.com/Access-to-Dynamically-Generated-AjaxEditableLabel-Value-tp4677886p4677890.html Sent from the Users forum mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Access to Dynamically Generated AjaxEditableLabel Value
Hi, You are using "cellItem.add(new AjaxEditableLabel(componentId)" i.e. the AEL has no its own model but uses IComponentInheritedModel from its parents. Try by using a model for AEL: cellItem.add(new AjaxEditableLabel(componentId, Model.of(0)) Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov On Wed, May 17, 2017 at 6:02 PM, Ehsanwrote: > Hello every one, > I have recently started to work with Wicket. > Currently I am having a problem with AjaxEditableLabel. I am adding objects > from my defined class "TechnicalService" to an > AjaxFallBackDefaultDataTable. > This Object simply contains a String which is the first column of the > datatable. The second column is AjaxEditableLabel which I use to set a > number for each of technical services in the first column. Now the problem > I > am having is that I can not retrieve the values which are entered in each > of > the generated textFields. I tried to add them to a list in the bean object > by Overriding onSubmit method, but it does not work. Could any one help me > about this problem and let me know how to retrieve the values of the > dynamically generated AjaxEditableLabels? > > Here is my code: > > private class DataProvider extends SortableDataProvider String> { > > /** > * > */ > private static final long serialVersionUID = > 7590206250581220823L; > > public DataProvider() { > super(); > this.setSort("id", > org.apache.wicket.extensions.markup.html.repeater.data. > sort.SortOrder.ASCENDING); > } > > public IModel model(TechnicalService > object) { > return Model.of(object); > } > > public Iterator iterator(long > offset, long > count) { > return searchForm.getTechnicalServices(). > iterator(); > } > > public long size() { > return searchForm.getTechnicalServices().size(); > } > } > > private List > getColumns() { > logger.debug("About to evaluate columns"); > > List > lReturn = new > LinkedList >(); > > lReturn.add(new PropertyColumn ( > new > StringResourceModel("table.col.header.tecnicalServiceName", > this, > null), "ts", "ts")); > > lReturn.add(new PropertyColumn ( > new > StringResourceModel("table.col.header.quantity", > this, null), > "technicalServiceNumber", > "technicalServiceNumber") { > private static final long serialVersionUID = > 8344520291257227470L; > > /** > * > */ > > @Override > public void populateItem(Item TechnicalService>> > cellItem, String componentId, > IModel rowModel) > { > > final int index = cellItem.getIndex(); > > cellItem.add(new > AjaxEditableLabel(componentId) { > /** > * > */ > private static final long > serialVersionUID = -3528327724800319532L; > > TextField editor; > > @Override > protected FormComponent > newEditor(MarkupContainer parent, > String componentId, > IModel > model) { > editor = > (TextField) super.newEditor(parent, componentId, > model); > editor.setVisible(true); > return editor; > } > > @Override > protected Component > newLabel(MarkupContainer parent, String > componentId, IModel model) { > return > super.newLabel(parent, componentId, model).setVisible(false); > } > > @Override > protected void > onSubmit(AjaxRequestTarget target) { > super.onSubmit(target); > >