Re: Wicket page expired if push button to open new page

2017-05-18 Thread Erwan Tanajaya
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 Solodovnik 
 wrote: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

2017-05-18 Thread Erwan Tanajaya
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 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
>


Re: FileUploadField with AJAX Behavior

2017-05-18 Thread Maxim Solodovnik
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 Grigorov  wrote:
> 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

2017-05-18 Thread Martin Grigorov
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
>
>


Re: ResourceReference that contains relative paths

2017-05-18 Thread Martin Grigorov
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, Ravi  wrote:

> 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

2017-05-18 Thread Martin Grigorov
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

2017-05-18 Thread Andrea Del Bene
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

2017-05-18 Thread Maxim Solodovnik
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

2017-05-18 Thread Martin Grigorov
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: Wicket page expired if push button to open new page

2017-05-18 Thread Erwan Tanajaya
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 Solodovnik 
 wrote: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

2017-05-18 Thread Maxim Solodovnik
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



Wicket page expired if push button to open new page

2017-05-18 Thread Erwan Tanajaya
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

2017-05-18 Thread Martin Grigorov
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, Ehsan  wrote:

> 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

2017-05-18 Thread Ehsan
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

2017-05-18 Thread Martin Grigorov
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, Ehsan  wrote:

> 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);
>
>