Re: ListItemModel is not detaching List-model

2024-07-11 Thread Johannes Renoth

Hi Hannes,

Shouldn't the detaching of the ListModel be handled by the ListView 
itself? Why would you detach the complete ListModel from inside a 
component in the ListView? You could always send an event to the parent 
of the ListItem however ...


Greetings,

Johannes

On 11/07/2024 13:44, Hannes Becker wrote:

Hi!

Thanks for your feedback.

Maybe I need to elaborate my point a little bit more. It's not about Components 
detaching Models but about the detaching-responsibility of dependent models.

A detach on a (child) Model, which depends on another (parent) Model normally detaches 
also the parent Model. The most "prominent" example is the default 
implementation of IModel.map(...).

In opposition to that, ListItemModel.detach() has a (default) 
noop-implementation and I am wondering why it is not implemented as the 
following:


@Override
public void detach()
{
  listView.getModel().detach();
}


This is actually a problem for me, because I have a LoadableDetachableModel, which is the 
"parent" Model for the ListView. This LoadableDetachableModel needs to be 
detached but I don't have a reference to the LoadableDetachableModel in the Component 
which is rendered inside the ListView. If detach would be implemented in the way I 
proposed (and how it is implemented in IModel.map(...)), it would just work.
Thus, I suggest do implement detach as described above in ListItemModel.

Best regards,
Hannes


From: Martin Terra 
Sent: Wednesday, July 10, 2024 12:57
To: users@wicket.apache.org 
Subject: Re: ListItemModel is not detaching List-model

Normally it's the other way, a component detaches it's model.

The ListItemModel isn't really holding any data, it is relying on the
actual model held by listView.

**
Martin

ke 10. heinäk. 2024 klo 13.53 Hannes Becker (hannes.bec...@proxora.com)
kirjoitti:


Hi!

I am wondering why org.apache.wicket.markup.html.list.ListItemModel is not
detaching the ListView's model. Feels to me like a bug...or is there an
explanation?

Thanks for your help and best regards
Hannes




-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: ModalWindow to ModalDialog // closedCallback

2023-10-20 Thread Johannes Renoth

Hi Korbinian,

you can overwrite ModalDialog#close and do something like this.

public class MyModalDialog extends ModalDialog {

private SerializableConsumer closeWindowCallback;
...
public void 
setCloseWindowCallback(SerializableConsumer 
closeWindowCallback) { this.closeWindowCallback = closeWindowCallback; }
@Override public ModalDialog close(AjaxRequestTarget target) { 
super.close(target); if (closeWindowCallback != null) { 
closeWindowCallback.accept(target); } return this; }

...
}
I also could not find many of the features the old ModalWindow had in 
ModalDialog. (for example resize, move, header, closebutton).

Hope that helps,
Johannes Renoth

On 20/10/2023 10:31, Korbinian Bachl wrote:

Hi,

when I try to migrate a ModalWindow to ModalDialog i came accross this:

  add(new AjaxLink("edit") {
 @Override
 public void onClick(AjaxRequestTarget target) {
 
getModalWindow().setModel(ReferenceEditorPanel.this.getModel());
 getModalWindow().setWindowClosedCallback(new 
ModalWindow.WindowClosedCallback() {
 public void onClose(AjaxRequestTarget target) {
 target.add(ReferenceEditorPanel.this);
 ReferenceEditorPanel.this.onUpdate(target);
 }
 });
 getModalWindow().show(target);
 }
 });

-> What would a correct way be for the setWindowClosedCallback? Have only see 
some onOk(AjaxRequestTarget) and onCancel(AjaxRequestTarget)?


Best,

KB

-
To unsubscribe, e-mail:users-unsubscr...@wicket.apache.org
For additional commands, e-mail:users-h...@wicket.apache.org


Wicket 9.13.0 Release Date?

2023-03-22 Thread Johannes Renoth

Hi everyone,

we would love to Upgrade our Wicket Application to Java 17 and since 
Java 17 with Wicket requires Bytebuddy instead of CGLib we would love to 
use Wicket 9 with the very important fix in WICKET-7005. 
(https://issues.apache.org/jira/browse/WICKET-7005)


So i have just one small question: Do you have planned a release date 
for Wicket 9.13.0 yet?


Thank you very much,

Johannes Renoth


-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Bug with backbutton in Chrome / Edge

2021-07-02 Thread Johannes Renoth
Hello all,

FYI: we found a bug in Chrome that mainly affects Wicket applications
when navigating back.

https://bugs.chromium.org/p/chromium/issues/detail?id=1225212

It is easily reproducable with the quickstart in the ticket.



-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Wicket 8.x Migration Issues with AjaxFallBackLink

2021-03-23 Thread Johannes Renoth
Hi,

you have to use

target.ifPresent(t -> t.add(feedback));

instead of

target.get().add(feedback);

Trying to get an O

Optional with no value present results in the mentioned error.

Greetings,

Johannes Renoth

On 2021-03-23 0:09, Satyavathi Iynaparthi wrote:
> Classification: Confidential
>
> Hi Team,
>
> We are in process of migration our Web application from Wicket 6.30 to Wicket 
> 8.11.0.
> As a first step, placed below jars in the classpath.
>
> wicket-auth-roles-8.11.0.jar
> wicket-core-8.11.0.jar
> wicket-datetime-8.0.0-M7.jar
> wicket-extensions-8.11.0.jar
> wicket-request-8.11.0.jar
> wicket-util-8.11.0.jar
> wicketstuff-inmethod-grid-8.11.0.jar
>
> Addressed the compilation issues related to AjaxFallBackLink onClick() method 
> .
> Changed the method signature to public void 
> onClick(Optional target).
>
> We have a Html page
>
> SettingsPanel.html
>
> 
>  xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd"; 
> lang="en">
>
> 
>wicket:id="saveIcon" />
>
>
> 
>
> 
>
> SettingsPanel.java
>
> AjaxFallbackLink settingsLink = new 
> AjaxFallbackLink("saveSettingsLink") {
>   private static final long serialVersionUID = 1L;
>
>   @Override
>   public void onClick(Optional target) {
> //some logic
> target.get().add(feedback);
>
>   }
> };
> Image img = new Image("saveIcon", new Model() {
>   private static final long serialVersionUID = 1L;
>
>   @Override
>   public Serializable getObject() {
> return new 
> PackageResourceReference(SettingsPanel.class,"save.png");
>   }
> });
> img.add(new AttributeModifier("title", new 
> StringResourceModel("saveTitle", ColumnSettingsLinkPanel.this,
> new Model(;
> settingsLink.add(img);
>
> With the above code, in Wicket 6.30, save image (save.png) gets displayed on 
> the page and when user clicks on the image link, onlick(AjaxRequestTarget 
> target) gets triggered.
> Post migrating to Wicket 8.11.0, image is not displaying on the page and when 
> user clicks on the image link, onClick(Optional target) 
> getting triggered, but the target value is always Empty.
>
> Below is the stack trace
> ERROR - DefaultExceptionMapper - Unexpected error occurred
> java.util.NoSuchElementException: No value present
> at java.base/java.util.Optional.get(Optional.java:148)
> at com.csc.pts.web.ui.ColumnSettingsLinkPanel$3.onClick(SettingsPanel.java:98)
> at 
> org.apache.wicket.ajax.markup.html.AjaxFallbackLink.onClick(AjaxFallbackLink.java:122)
> at org.apache.wicket.markup.html.link.Link.onRequest(Link.java:189)
> at 
> org.apache.wicket.core.request.handler.ListenerRequestHandler.internalInvoke(ListenerRequestHandler.java:306)
> at 
> org.apache.wicket.core.request.handler.ListenerRequestHandler.invoke(ListenerRequestHandler.java:255)
> at 
> org.apache.wicket.core.request.handler.ListenerRequestHandler.invokeListener(ListenerRequestHandler.java:215)
> at 
> org.apache.wicket.core.request.handler.ListenerRequestHandler.respond(ListenerRequestHandler.java:208)
> at 
> org.apache.wicket.core.request.handler.RequestSettingRequestHandler.respond(RequestSettingRequestHandler.java:78)
> at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:912)
> at 
> org.apache.wicket.request.RequestHandlerExecutor.execute(RequestHandlerExecutor.java:65)
> at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:283)
> at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:253)
> at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:221)
> at 
> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:262)
> at 
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:204)
> at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:286)
> at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
> at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
> at 
> org.apache.catalin

Escaping Braces in StringResourceModel

2021-02-14 Thread Johannes Renoth
Hello,

Recently i created and Extension to Label that uses { and } as Markup
Delimiters to create a kind of safe Markup with a very limited set of
HTML-Tags like

{h3}Title{/h3}

{div}Hello{/div}

The purpose of this is to get rid of the setEscapeModelStrings(false) to
be found everywhere which is actually quite dangerous when combined with
user-input.

Now someone has combined my new Label with StringResourceModel which
uses the Syntax defined in MessageFormat which also uses { and } as
delimiting characters for its placeholders, for example

This is a {0} day.

Now both Formats collide but there would be an easy workaround if Wicket
would actually honor the possible escaping defined in MessageFormat, i
would just have to write

'{'div'}' This is a {0} day. '{'/div'}'

But StringResourceModel Line 478 escapes these ' in its code so the
resulting Text is actually

''{''div''}'' This is a {0} day. ''{''/div''}'' and the escaping for my
markup does not work anymore since the double single quotes are
interpreted as single single quote by the MessageFormat parser.

I would argue that StringResourceModel is doing the wrong thing here by
purposefully escaping the single quotes when it is not intended by the
user. I also have not found the reason why it does this in the first
place. Any suggestions or ideas?

Greetings,

Johannes Renoth



-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Illegal Reflective Access in DefaultPropertyLocator

2021-01-19 Thread Johannes Renoth
Hi Bas,

Thank you for your help, unfortunately it is not that simple (i need
write-access as well). I solved the problem anyways (see other answer)

Johannes Renoth

On 2021-01-18 18:10, Bas Gooren wrote:
> Hi!
>
> That’s actually quite easy to replace:
>
> If you have a model containing the LocalDateTime, change the call to:
>
> var model = Model.of( LocalDateTime.now() );
> model.map( LocalDateTime::toLocalDate );
>
> Since the “date” field is private final I assume your model was read-only.
>
> Met vriendelijke groet,
> Kind regards,
>
> Bas Gooren
>
> Op 18 januari 2021 bij 17:13:42, Johannes Renoth
> (johannes.ren...@gmx.de <mailto:johannes.ren...@gmx.de>) schreef:
>
>> Hello,
>>
>> In my project i have the following Warning since the Update to Java 11:
>>
>> The issue remains even after trying with the latest Version 9.2.0
>>
>> I am using a LocalDateTime Model Object with
>> PropertyModel(LocalDateTime, "date").
>>
>> Of course i could try to split my Model into two parts date and time
>> but it is much more convenient as it is now.
>>
>> Any suggestions what i could do?
>>


Re: Illegal Reflective Access in DefaultPropertyLocator

2021-01-19 Thread Johannes Renoth
Hi Rob,

Thanks for your help, i did split LocalDateTime Model in LocalDate and
LocalTime components, now it works properly, thanks!

On 2021-01-18 18:12, Rob Audenaerde wrote:
> java.time.LocalDateTime does not have a `getDate` / `setDate`, so what
> you did before was depending on internal implementation of
> LocalDateTime anyway (private members), and not a very nice thing to
> do :).
>
> You should write proper models for dealing with it, or write custom
> converters I guess.
>
> On Mon, Jan 18, 2021 at 5:14 PM Johannes Renoth
> mailto:johannes.ren...@gmx.de>> wrote:
>
> Hello,
>
> In my project i have the following Warning since the Update to
> Java 11:
>
> The issue remains even after trying with the latest Version 9.2.0
>
> I am using a LocalDateTime Model Object with
> PropertyModel(LocalDateTime, "date").
>
> Of course i could try to split my Model into two parts date and
> time but it is much more convenient as it is now.
>
> Any suggestions what i could do?
>


Illegal Reflective Access in DefaultPropertyLocator

2021-01-18 Thread Johannes Renoth
Hello,

In my project i have the following Warning since the Update to Java 11:

The issue remains even after trying with the latest Version 9.2.0

I am using a LocalDateTime Model Object with
PropertyModel(LocalDateTime, "date").

Of course i could try to split my Model into two parts date and time but
it is much more convenient as it is now.

Any suggestions what i could do?



Re: Retrieve user's page on the site

2020-01-01 Thread Johannes Renoth
I meant for the blocking Button, i also remember implementing this from
time to time, so i wondered if there was a general solution to this.

Johannes

On 2019-12-31 15:48, Ernesto Reinaldo Barreiro wrote:
> Do you mean for the blocker thing? Or for login errors? Or both?
>
> Happy new year to all.
>
> On Tue, Dec 31, 2019 at 4:07 PM Johannes Renoth 
> wrote:
>
>> Hi Ernesto Reinaldo Barreiro ,
>>
>> Can you provide example code for a solution? Since this is a general
>> Problem, maybe it would be helpful to add it to the wicket core libaries.
>>
>> Have a happy new year,
>>
>> Johannes Renoth
>>
>> On 2019-12-30 16:52, Ernesto Reinaldo Barreiro wrote:
>>> Hi,
>>>
>>> One thing I immediately do for any wicket application is rolling a
>> blocker
>>> DIV preventing users to double click on AJAX links: Situation? User
>> clicks
>>> in some AJAX link and meanwhile request is being processed the user
>> clicks
>>> on something "that will not be there" when AJAX request finishes. This
>>> blocking logic can be added globally and it is also easy to mark "request
>>> and don't show blocker". In my current customer's main application
>> rolling
>>> out such a solution drastically reduced the number of such errors.
>>>
>>> For other application, a side project, I remember rolling out a
>>> IRequestCycleListener
>>> that logged details from errors into some external storage so I had not
>>> fight with logs (and there you can store the precise info you need to
>> track
>>> user's actions).
>>>
>>>
>>>
>>> On Mon, Dec 30, 2019 at 5:03 PM Bas Gooren  wrote:
>>>
>>>> Hi!
>>>>
>>>> We see these typos of errors every now and then too. It’s usually people
>>>> navigating to old pages, double clicking on links etc.
>>>>
>>>> Nevertheless, in our logs these are relatively easy to find: we send out
>>>> e-mail notifications when such errors occur, and the e-mail includes
>> quite
>>>> some details (page, component, session id, logged in user etc, user ip);
>>>> So far, I have always been able to trace the user’s steps by simply
>>>> grepping the access logs for their IP around the time of the exception.
>>>>
>>>> Should you not be able to do that, I guess it would be relatively
>> simple to
>>>> track user actions (e.g. the last 10 actions) yourself in the user
>> session.
>>>> Simply write a request cycle listener, and get some meaningful
>> information
>>>> from the next handler to be executed.
>>>>
>>>> E.g. override onRequestHandlerScheduled() and deduct the action from the
>>>> request handler;
>>>>
>>>> ListenerRequestHandler: component or behavior invoked
>>>> etc.
>>>>
>>>> Store the actions as strings (e.g. “render pageX(pageParams=XYZ)”,
>> “Click
>>>> on link a.b.c in PageX”, “Submit form path.to.component in PageX”).
>>>>
>>>> If you have an app where users are logged in, you can track the last X
>>>> actions in the user’s session; Otherwise you could externalize this
>> (either
>>>> in-memory by IP, or some other backing store).
>>>> When an exception occurs, you can catch it in your request cycle
>> listener
>>>> and fetch the last user actions. Together, these should provide a better
>>>> trail of actions leading up to the exceptions.
>>>>
>>>> Met vriendelijke groet,
>>>> Kind regards,
>>>>
>>>> Bas Gooren
>>>>
>>>> Op 30 december 2019 bij 05:24:19, Илья Нарыжный (phan...@ydn.ru)
>> schreef:
>>>> Hello,
>>>>
>>>> We have pretty widely used software with thousands of visits per day.
>>>> And from time to time we observe pretty weird Wicket related errors
>>>> in logs. Commonly it's something about components structure: no such
>>>> child, there is already such element and etc. But the problem is that
>>>> commonly we can't reproduce the problem right away: page is working as
>>>> expected. So such mysterious problems just lie in logs and not being
>>>> fixed.
>>>> And here is the question: is there some good way to retrieve and log
>>>> previous user actions and etc.? Theoretically everything should be in
>>>> PageStore. What can you recom

Re: Retrieve user's page on the site

2019-12-31 Thread Johannes Renoth
Hi Ernesto Reinaldo Barreiro ,

Can you provide example code for a solution? Since this is a general
Problem, maybe it would be helpful to add it to the wicket core libaries.

Have a happy new year,

Johannes Renoth

On 2019-12-30 16:52, Ernesto Reinaldo Barreiro wrote:
> Hi,
>
> One thing I immediately do for any wicket application is rolling a blocker
> DIV preventing users to double click on AJAX links: Situation? User clicks
> in some AJAX link and meanwhile request is being processed the user clicks
> on something "that will not be there" when AJAX request finishes. This
> blocking logic can be added globally and it is also easy to mark "request
> and don't show blocker". In my current customer's main application rolling
> out such a solution drastically reduced the number of such errors.
>
> For other application, a side project, I remember rolling out a
> IRequestCycleListener
> that logged details from errors into some external storage so I had not
> fight with logs (and there you can store the precise info you need to track
> user's actions).
>
>
>
> On Mon, Dec 30, 2019 at 5:03 PM Bas Gooren  wrote:
>
>> Hi!
>>
>> We see these typos of errors every now and then too. It’s usually people
>> navigating to old pages, double clicking on links etc.
>>
>> Nevertheless, in our logs these are relatively easy to find: we send out
>> e-mail notifications when such errors occur, and the e-mail includes quite
>> some details (page, component, session id, logged in user etc, user ip);
>> So far, I have always been able to trace the user’s steps by simply
>> grepping the access logs for their IP around the time of the exception.
>>
>> Should you not be able to do that, I guess it would be relatively simple to
>> track user actions (e.g. the last 10 actions) yourself in the user session.
>> Simply write a request cycle listener, and get some meaningful information
>> from the next handler to be executed.
>>
>> E.g. override onRequestHandlerScheduled() and deduct the action from the
>> request handler;
>>
>> ListenerRequestHandler: component or behavior invoked
>> etc.
>>
>> Store the actions as strings (e.g. “render pageX(pageParams=XYZ)”, “Click
>> on link a.b.c in PageX”, “Submit form path.to.component in PageX”).
>>
>> If you have an app where users are logged in, you can track the last X
>> actions in the user’s session; Otherwise you could externalize this (either
>> in-memory by IP, or some other backing store).
>> When an exception occurs, you can catch it in your request cycle listener
>> and fetch the last user actions. Together, these should provide a better
>> trail of actions leading up to the exceptions.
>>
>> Met vriendelijke groet,
>> Kind regards,
>>
>> Bas Gooren
>>
>> Op 30 december 2019 bij 05:24:19, Илья Нарыжный (phan...@ydn.ru) schreef:
>>
>> Hello,
>>
>> We have pretty widely used software with thousands of visits per day.
>> And from time to time we observe pretty weird Wicket related errors
>> in logs. Commonly it's something about components structure: no such
>> child, there is already such element and etc. But the problem is that
>> commonly we can't reproduce the problem right away: page is working as
>> expected. So such mysterious problems just lie in logs and not being
>> fixed.
>> And here is the question: is there some good way to retrieve and log
>> previous user actions and etc.? Theoretically everything should be in
>> PageStore. What can you recommend to handle such problems properly?
>>
>> P.S. To be able to catch such problems we even build a system for
>> gathering all logs on a central server and correlate them with each
>> other according to some correlation logic. But still - no big luck -
>> so we really believe that problem is in fact that we know only current
>> user page/location and do not know historical aspect.
>>
>> Thanks,
>> Ilia
>>
>> -
>> Orienteer(http://orienteer.org) - open source Business Application
>> Platform
>>
>> -
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Junit4 Dependencies of WicketTester

2018-07-30 Thread Johannes Renoth
Hello everyone,

i wanted to ask if there is a possibility that the Junit4 Dependencies
in WicketTester can be removed (i would provide PR if you like). Using
Junit5 breaks these dependencies since Junit decided to break with their
old API completely in version 5.

Greetings,

Johannes Renoth


-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Graphing Framework for Wicket

2015-06-02 Thread Johannes Renoth
Please be aware that wicked-charts uses highcharts to do the actual
plotting. Highcharts is not free for commercial use and requires a
license (see http://shop.highsoft.com/highcharts.html).


On 06/01/2015 05:47 PM, Mihir Chhaya wrote:
> One correction; it is called Wicked Charts (
> http://wicked-charts.appspot.com/)
>
>
>
> On Mon, Jun 1, 2015 at 11:46 AM, Mihir Chhaya 
> wrote:
>
>> Hi Lois,
>>
>> Not aware of current status but, you might want to look at wicket charts.
>>
>> Thanks,
>> -Mihir.
>>
>> On Mon, Jun 1, 2015 at 11:08 AM, Sebastien  wrote:
>>
>>> Hi Lois,
>>>
>>> I am not aware of this... But I'm interested to the answer :)
>>> I was looking for a nice js graph, based on jQuery possibly and found that
>>> best matches my requirement: vis.js, arbor.js & cytoscape.js
>>>
>>> arbor.js is highly deprecated,
>>> cytoscape.js is good and jQuery oriented, but requires additional
>>> libraries
>>> depending on what type of graph we want to display,
>>> so I'll probably go for vis.js (ASFv2 licensed) because it is really
>>> simple
>>> to use and it just works! :)
>>>
>>> I am already busy with some other wicket integrations so I don't know
>>> (now)
>>> if I will make it a public project... But if someone would like to dig
>>> into
>>> a wicket-vis project, and maintain it, I will be glad to help... In the
>>> meantime, will I try to publish a showcase in a week or two...
>>>
>>> Best regards,
>>> Sebastien
>>>
>>>
>>> On Mon, Jun 1, 2015 at 4:29 PM, Lois GreeneHernandez <
>>> lgreenehernan...@knoa.com> wrote:
>>>
 Hi Martin,

 I looking for a framework or a set of classes that will allow me to
>>> create
 graphs.

 Thanks

 Lois

 -Original Message-
 From: Martin Grigorov [mailto:mgrigo...@apache.org]
 Sent: Monday, June 01, 2015 9:40 AM
 To: users@wicket.apache.org
 Subject: Re: Graphing Framework for Wicket

 Hi,

 Please give us more details.
 Do you mean graphics or graphs?

 Martin Grigorov
 Wicket Training and Consulting
 https://twitter.com/mtgrigorov

 On Mon, Jun 1, 2015 at 4:27 PM, Lois GreeneHernandez <
 lgreenehernan...@knoa.com> wrote:

> Hi All,
>
> I need some recommendations on a graphing framework for wicket.
>
> Thanks
>
> Lois
>
 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org


>>



-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org