Re: Reporting Framework Wicket

2009-10-15 Thread Pieter Degraeuwe
I had used JasperReports in de near past and was very happy with it.
The fact that you want to use it with Wicket doesn't actually matter. Just
generate a PDF/Excel with jasper and make it avilable with a
DynamicWebResource.

A sample of a DynamicWebResource can you find at
http://www.jointeffort.nl/content/index.php?option=com_contentview=articleid=54:streaming-pdfcatid=38:wicketItemid=56

(this is not a sample of myself, I just fount it an easy understandable
sample...)

On Wed, Oct 14, 2009 at 6:08 PM, Douglas Ferguson 
doug...@douglasferguson.us wrote:

 Hey,

 I'm starting to look into reporting frameworks and was curious if
 anybody had successfully integrated with wicket?

 Are there any off the shelf integrations or will I have to roll my
 own?

 D/

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




-- 
Pieter Degraeuwe
Systemworks bvba
Belgiëlaan 61
9070 Destelbergen
GSM: +32 (0)485/68.60.85
Email: pieter.degrae...@systemworks.be
visit us at http://www.systemworks.be


Re: Reporting Framework Wicket

2009-10-15 Thread Douglas Ferguson
Does this resource link lock the pagemap?

D/

On Oct 15, 2009, at 1:06 AM, Pieter Degraeuwe wrote:

 I had used JasperReports in de near past and was very happy with it.
 The fact that you want to use it with Wicket doesn't actually  
 matter. Just
 generate a PDF/Excel with jasper and make it avilable with a
 DynamicWebResource.

 A sample of a DynamicWebResource can you find at
 http://www.jointeffort.nl/content/index.php?option=com_contentview=articleid=54:streaming-pdfcatid=38:wicketItemid=56

 (this is not a sample of myself, I just fount it an easy  
 understandable
 sample...)

 On Wed, Oct 14, 2009 at 6:08 PM, Douglas Ferguson 
 doug...@douglasferguson.us wrote:

 Hey,

 I'm starting to look into reporting frameworks and was curious if
 anybody had successfully integrated with wicket?

 Are there any off the shelf integrations or will I have to roll my
 own?

 D/

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




 -- 
 Pieter Degraeuwe
 Systemworks bvba
 Belgiëlaan 61
 9070 Destelbergen
 GSM: +32 (0)485/68.60.85
 Email: pieter.degrae...@systemworks.be
 visit us at http://www.systemworks.be


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



Re: Reporting Framework Wicket

2009-10-15 Thread Ernesto Reinaldo Barreiro
I have used it in combination with BIRT. But, there was nothing special on
the Wicket side, except for:
1-some logic that would read REPORT parameters and dynamically build a form
allowing to fill in those.
2-extended BIRT with some classes, implementing some BIRT interfaces, that
would stream back images
when rendering HTML reports.

Best,

Ernesto

On Wed, Oct 14, 2009 at 6:08 PM, Douglas Ferguson 
doug...@douglasferguson.us wrote:

 Hey,

 I'm starting to look into reporting frameworks and was curious if
 anybody had successfully integrated with wicket?

 Are there any off the shelf integrations or will I have to roll my
 own?

 D/

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




Ajax Update ListMultipleChoice

2009-10-15 Thread Peter Arnulf Lustig
Hi,

how can I refresh the ListMultipleChoice compononent?
I use the IModel and IChoiceRenderer Component for filling the list. But it 
should be refreshed automaticly when doing an update.





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



Re: Reporting Framework Wicket

2009-10-15 Thread Peter Thomas
there was this article on DZone recently on integrating BIRT with Wicket,
may be useful

http://java.dzone.com/articles/integrating-birt-your-wicket


On Thu, Oct 15, 2009 at 12:48 PM, Ernesto Reinaldo Barreiro 
reier...@gmail.com wrote:

 I have used it in combination with BIRT. But, there was nothing special on
 the Wicket side, except for:
 1-some logic that would read REPORT parameters and dynamically build a form
 allowing to fill in those.
 2-extended BIRT with some classes, implementing some BIRT interfaces, that
 would stream back images
 when rendering HTML reports.

 Best,

 Ernesto

 On Wed, Oct 14, 2009 at 6:08 PM, Douglas Ferguson 
 doug...@douglasferguson.us wrote:

  Hey,
 
  I'm starting to look into reporting frameworks and was curious if
  anybody had successfully integrated with wicket?
 
  Are there any off the shelf integrations or will I have to roll my
  own?
 
  D/
 
  -
  To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
  For additional commands, e-mail: users-h...@wicket.apache.org
 
 



Re: Hippo's patch for wicket ids

2009-10-15 Thread Daniel Frisk
Ok, I'm lazy and couldn't decipher that code at a glance. What does it  
do?


// Daniel
jalbum.net



On 2009-10-15, at 03:09, Douglas Ferguson wrote:


Has anybody seen this:

http://www.onehippo.org/cms7/integration_testing.html

Seems like a nice alternative vs. having to set markupIds on all
components.

Thoughts?



They have a patch for wicket:


Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
===
*** jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java 
(revision 724306)
--- jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java 
(working copy)
***
*** 1475,1478 
--- 1475,1489 
{
return sequence++;
}
+
+   /**
+* Retrieves the next available session-unique value for the
supplied Component
+*
+* @param component
+*the component which requests the generation of a
markup identifier
+* @return session-unique value
+*/
+   public Object getMarkupId(Component component) {
+   return new Integer(nextSequenceValue());
+   }
 }
Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
===
*** jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java   
(revision 724306)
--- jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java   
(working copy)
***
*** 1426,1437 
return null;
}

!   final int generatedMarkupId = storedMarkupId instanceof Integer
!   ? ((Integer)storedMarkupId).intValue() : Session.get
().nextSequenceValue();
!
!   if (storedMarkupId == null)
!   {
!   setMarkupIdImpl(new Integer(generatedMarkupId));
}

// try to read from markup
--- 1426,1445 
return null;
}

!   String markupIdPostfix;
!   if (!(storedMarkupId instanceof Integer)) {
!   Object markupIdFromSession = 
Session.get().getMarkupId(this);
!   if (storedMarkupId == null  markupIdFromSession != 
null) {
!   setMarkupIdImpl(markupIdFromSession);
!   }
!   storedMarkupId = markupIdFromSession;
!   }
!   if (storedMarkupId instanceof Integer) {
!   markupIdPostfix = Integer.toHexString(((Integer)
storedMarkupId).intValue()).toLowerCase();
!   } else if (storedMarkupId instanceof String) {
!   return (String) storedMarkupId;
!   } else {
!   markupIdPostfix = storedMarkupId.toString();
}

// try to read from markup
***
*** 1449,1455 
markupIdPrefix = getId();
}

-   String markupIdPostfix = Integer.toHexString
(generatedMarkupId).toLowerCase();
markupIdPostfix = RequestContext.get().encodeMarkupId
(markupIdPostfix);

String markupId = markupIdPrefix + markupIdPostfix;
--- 1457,1462 



Then in their session, they return stable ids


   private MapString,Integer pluginComponentCounters = new
HashMapString,Integer();

   // Do not add the @Override annotation on this
   public Object getMarkupId(Component component) {
   String markupId = null;
   for (Component ancestor=component.getParent(); ancestor!
=null  markupId==null; ancestor=ancestor.getParent()) {
   if (ancestor instanceof IPlugin || ancestor instanceof
Home) {
   markupId = ancestor.getMarkupId(true);
   break;
   }
   }
   if (markupId == null) {
   return root;
   }
   int componentNum = 0;
   if (pluginComponentCounters.containsKey(markupId)) {
   componentNum = pluginComponentCounters.get
(markupId).intValue();
   }
   ++componentNum;
   pluginComponentCounters.put(markupId, new Integer
(componentNum));
   return markupId + _ + componentNum;
   }
}



-
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



Re: Integrating Separate Different Wicket Applications Into One

2009-10-15 Thread nino martinez wael
what about osgi? http://www.ops4j.org/projects/pax/wicket/ ..?

2009/10/14 ralf.eichin...@pixotec.de

 perhaps have a look on www.devproof.org.
 it is a portal like wicket application, which hosts different modules
 (JARs).


 Quoting Carlo Camerino carlo.camer...@gmail.com:

  Hi,

 I was wondering what are the most efficient ways to separate different
 applications into one application?
 We have this use case in which we need to integrate two different
 wicket applications and make them appear as  if they are running in
 one platform only.
 I tried using portlets but it introduced a lot of coding
 complications. I tried running it using Jetspeed 2 and found out that
 several components are having problems.
 Most of the problem seems to come from the fact that we are using the
 indicatingajaxbutton. I have this issue in which I cannot easily
 transfer page from one page to another. I don't really know if
 portlets are the way to go because the applications by themselves are
 rich in functionality. I just need to be able to access them all in
 one page.
 I know that it seems to be some sort of portal but i think 'd have to
 take portlets out for the mean time due to the strict timeline and
 it's actually the first time we tried using portlets in our company.

 I'm thinking of using iframes for each application instead which will
 lead me to a grand total of three different applications running with
 only one entry point...
 Is this the proper way of doing it? My issue will be with regards to
 the httpsessions i'd have to have a total of three unlike in the
 portlets...

 My idea is I have a main application which serves as my entry point.
 In that application I lay out the available functionalities via menu
 links. When I click on a menu link,
 I will place redirect my iframe to point to that page enabling me to
 do that transaction? My main issue would be I think the httpsession
 expiry. If the user spends a lot of time using the application, the
 outside session could expire if the links outside are not clicked.

 What are other possible solutions that I could use for this one? As of
 now I could think of two ways using portlets and the other one using
 iframes.. As of now we are  considering one application  and just
 provide remoting for accessing business objects.

 Is there anyway of getting html coming from another application and
 showing it into my application?
 For example, i have three applications 1 ,2 and 3,
 3 is my main application but I get the html coming from 1 and 2,
 without using iframes. Somewhat like WSRP (Web Service for Remote
 Porlets). Or i just need to get the servlet response from the third
 aplication/

 I'm not sure if it's possible. Would appreciate your insights on this
 one..

 Thanks
 Carlo

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





 
 This message was sent using IMP, the Internet Messaging Program.


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




Re: Integrating Separate Different Wicket Applications Into One

2009-10-15 Thread nino martinez wael
Heres something.. :Pax Wicket Applications

Pax Wicket Service supports many Pax Wicket applications being deployed
simultaneously onto the same instance of Pax Wicket Service. For each Pax
Wicket application, a separate Servlet will be created and mounted on to a
configurable mount point in the URL space. However, care must be taken to
ensure that all ContainmentIDs are registered under unique names.
http://wiki.ops4j.org/display/ops4j/Pax+Wicket

2009/10/15 nino martinez wael nino.martinez.w...@gmail.com

 what about osgi? http://www.ops4j.org/projects/pax/wicket/ ..?

 2009/10/14 ralf.eichin...@pixotec.de

 perhaps have a look on www.devproof.org.
 it is a portal like wicket application, which hosts different modules
 (JARs).


 Quoting Carlo Camerino carlo.camer...@gmail.com:

  Hi,

 I was wondering what are the most efficient ways to separate different
 applications into one application?
 We have this use case in which we need to integrate two different
 wicket applications and make them appear as  if they are running in
 one platform only.
 I tried using portlets but it introduced a lot of coding
 complications. I tried running it using Jetspeed 2 and found out that
 several components are having problems.
 Most of the problem seems to come from the fact that we are using the
 indicatingajaxbutton. I have this issue in which I cannot easily
 transfer page from one page to another. I don't really know if
 portlets are the way to go because the applications by themselves are
 rich in functionality. I just need to be able to access them all in
 one page.
 I know that it seems to be some sort of portal but i think 'd have to
 take portlets out for the mean time due to the strict timeline and
 it's actually the first time we tried using portlets in our company.

 I'm thinking of using iframes for each application instead which will
 lead me to a grand total of three different applications running with
 only one entry point...
 Is this the proper way of doing it? My issue will be with regards to
 the httpsessions i'd have to have a total of three unlike in the
 portlets...

 My idea is I have a main application which serves as my entry point.
 In that application I lay out the available functionalities via menu
 links. When I click on a menu link,
 I will place redirect my iframe to point to that page enabling me to
 do that transaction? My main issue would be I think the httpsession
 expiry. If the user spends a lot of time using the application, the
 outside session could expire if the links outside are not clicked.

 What are other possible solutions that I could use for this one? As of
 now I could think of two ways using portlets and the other one using
 iframes.. As of now we are  considering one application  and just
 provide remoting for accessing business objects.

 Is there anyway of getting html coming from another application and
 showing it into my application?
 For example, i have three applications 1 ,2 and 3,
 3 is my main application but I get the html coming from 1 and 2,
 without using iframes. Somewhat like WSRP (Web Service for Remote
 Porlets). Or i just need to get the servlet response from the third
 aplication/

 I'm not sure if it's possible. Would appreciate your insights on this
 one..

 Thanks
 Carlo

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





 
 This message was sent using IMP, the Internet Messaging Program.


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





Wicket + Spring + Hibernate event in ISTANBUL (Turkey)

2009-10-15 Thread Altuğ B . Altıntaş
Hi all;
Today we will organize a medium size event. In that event,  we will present
hands on session about Wicket + Spring + Hibernate.

This event will be in Istanbul,  Besiktasi Bahcesehir University at 19.00
(local time)

http.//www.java.org.tr

Feel free to attend this event.

Regards.

-- 
Altuğ.


Re: Reporting Framework Wicket

2009-10-15 Thread Ernesto Reinaldo Barreiro
Just one caveat about the article: as far as I remember creating a platform
and report engine were costly operations. I do not have the code at hand but
I remember we created some kind of singleton that was used to launch the
reports. Additionally we added some logic that would:
1-scan report for parameters and generate an UI based on that. 2-replace
design data-sources for production data-sources.
3-For images and other resources there was some interface you could
implement so that reports could be able to call-back to the server and get
them served. We rolled out our own implementation and plugged it into BIRTs
machinery.

Ernesto


On Thu, Oct 15, 2009 at 9:57 AM, Peter Thomas ptrtho...@gmail.com wrote:

 there was this article on DZone recently on integrating BIRT with Wicket,
 may be useful

 http://java.dzone.com/articles/integrating-birt-your-wicket


 On Thu, Oct 15, 2009 at 12:48 PM, Ernesto Reinaldo Barreiro 
 reier...@gmail.com wrote:

  I have used it in combination with BIRT. But, there was nothing special
 on
  the Wicket side, except for:
  1-some logic that would read REPORT parameters and dynamically build a
 form
  allowing to fill in those.
  2-extended BIRT with some classes, implementing some BIRT interfaces,
 that
  would stream back images
  when rendering HTML reports.
 
  Best,
 
  Ernesto
 
  On Wed, Oct 14, 2009 at 6:08 PM, Douglas Ferguson 
  doug...@douglasferguson.us wrote:
 
   Hey,
  
   I'm starting to look into reporting frameworks and was curious if
   anybody had successfully integrated with wicket?
  
   Are there any off the shelf integrations or will I have to roll my
   own?
  
   D/
  
   -
   To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
   For additional commands, e-mail: users-h...@wicket.apache.org
  
  
 



Question about Javascript DOM + Wicket

2009-10-15 Thread Erik Pragt

Hi all,

I'm relatively new to Wicket, and I have a small question. I have a  
dynamic form in Javascript, which can have an unlimited set of input  
fields. For example, I can have a form to manage persons, and the user  
can enter multiple addresses, which are currently handled by a jQuery  
clone of a piece of HTML.


My question is: is this also possible with Wicket? I don't want to use  
Ajax forms, I'd rather do everything in the DOM of the browser and  
then submit it. This doesn't sound like a unique situation to me, but  
I have a hard time finding the information how to handle this from a  
Wicket perspective. I did found this tutorial:


http://utku-utkan.blogspot.com/2007/07/dynamic-forms-in-wicket.html,  
but the form there is managed by Wicket, and I want the browser to  
manage this.


Is this possible?

Thanks in advance,

Erik Pragt

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



Re: Integrating Separate Different Wicket Applications Into One

2009-10-15 Thread Martijn Dashorst
Why not put all components/pages/etc for each application in an
application jar, and include those in the aggregate application?

You're already deploying a new app so it wouldn't be too much extra effort.

Martijn

On Wed, Oct 14, 2009 at 2:39 PM, Carlo Camerino
carlo.camer...@gmail.com wrote:
 Hi,

 I was wondering what are the most efficient ways to separate different
 applications into one application?
 We have this use case in which we need to integrate two different
 wicket applications and make them appear as  if they are running in
 one platform only.
 I tried using portlets but it introduced a lot of coding
 complications. I tried running it using Jetspeed 2 and found out that
 several components are having problems.
 Most of the problem seems to come from the fact that we are using the
 indicatingajaxbutton. I have this issue in which I cannot easily
 transfer page from one page to another. I don't really know if
 portlets are the way to go because the applications by themselves are
 rich in functionality. I just need to be able to access them all in
 one page.
 I know that it seems to be some sort of portal but i think 'd have to
 take portlets out for the mean time due to the strict timeline and
 it's actually the first time we tried using portlets in our company.

 I'm thinking of using iframes for each application instead which will
 lead me to a grand total of three different applications running with
 only one entry point...
 Is this the proper way of doing it? My issue will be with regards to
 the httpsessions i'd have to have a total of three unlike in the
 portlets...

 My idea is I have a main application which serves as my entry point.
 In that application I lay out the available functionalities via menu
 links. When I click on a menu link,
 I will place redirect my iframe to point to that page enabling me to
 do that transaction? My main issue would be I think the httpsession
 expiry. If the user spends a lot of time using the application, the
 outside session could expire if the links outside are not clicked.

 What are other possible solutions that I could use for this one? As of
 now I could think of two ways using portlets and the other one using
 iframes.. As of now we are  considering one application  and just
 provide remoting for accessing business objects.

 Is there anyway of getting html coming from another application and
 showing it into my application?
 For example, i have three applications 1 ,2 and 3,
 3 is my main application but I get the html coming from 1 and 2,
 without using iframes. Somewhat like WSRP (Web Service for Remote
 Porlets). Or i just need to get the servlet response from the third
 aplication/

 I'm not sure if it's possible. Would appreciate your insights on this one..

 Thanks
 Carlo

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





-- 
Become a Wicket expert, learn from the best: http://wicketinaction.com
Apache Wicket 1.4 increases type safety for web applications
Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.4.0

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



Re: Question about Javascript DOM + Wicket

2009-10-15 Thread Pedro Santos
My question is: is this also possible with Wicket? I don't want to use Ajax
forms, I'd rather do everything in the DOM of the browser and then submit it

yes, you can work on your form dom, adding form components with known names,
and dial with then on your onSubmit method like:
  getRequest().getParameter(streetNameOnGeneratedFormComponentX);

Sometimes I send to browse form components that the user may want to use or
not, inside an div, that I show conditionally based on javascript
conditions. May to be an interesting solution if you know an limit to those
dynamic forms components number.

BTW, why you don't want to use ajax? This work can be extremely simple using
it...

On Wed, Oct 14, 2009 at 4:24 PM, Erik Pragt erik.pr...@jworks.nl wrote:

 Hi all,

 I'm relatively new to Wicket, and I have a small question. I have a dynamic
 form in Javascript, which can have an unlimited set of input fields. For
 example, I can have a form to manage persons, and the user can enter
 multiple addresses, which are currently handled by a jQuery clone of a piece
 of HTML.

 My question is: is this also possible with Wicket? I don't want to use Ajax
 forms, I'd rather do everything in the DOM of the browser and then submit
 it. This doesn't sound like a unique situation to me, but I have a hard time
 finding the information how to handle this from a Wicket perspective. I did
 found this tutorial:

 http://utku-utkan.blogspot.com/2007/07/dynamic-forms-in-wicket.html, but
 the form there is managed by Wicket, and I want the browser to manage this.

 Is this possible?

 Thanks in advance,

 Erik Pragt

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




-- 
Pedro Henrique Oliveira dos Santos


Re: Hippo's patch for wicket ids

2009-10-15 Thread Per Lundholm
Looks like a patch to make it easier to use Selenium to test your
webapplication.

Selenium is very fond of id in tags.

/Per

On Thu, Oct 15, 2009 at 9:58 AM, Daniel Frisk dan...@jalbum.net wrote:
 Ok, I'm lazy and couldn't decipher that code at a glance. What does it do?

 // Daniel
 jalbum.net



 On 2009-10-15, at 03:09, Douglas Ferguson wrote:

 Has anybody seen this:

 http://www.onehippo.org/cms7/integration_testing.html

 Seems like a nice alternative vs. having to set markupIds on all
 components.

 Thoughts?

 

 They have a patch for wicket:

 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 ===
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (working copy)
 ***
 *** 1475,1478 
 --- 1475,1489 
        {
                return sequence++;
        }
 +
 +       /**
 +        * Retrieves the next available session-unique value for the
 supplied Component
 +        *
 +        * @param component
 +        *            the component which requests the generation of a
 markup identifier
 +        * @return session-unique value
 +        */
 +       public Object getMarkupId(Component component) {
 +               return new Integer(nextSequenceValue());
 +       }
  }
 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 ===
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (working copy)
 ***
 *** 1426,1437 
                        return null;
                }

 !               final int generatedMarkupId = storedMarkupId instanceof
 Integer
 !                       ? ((Integer)storedMarkupId).intValue() :
 Session.get
 ().nextSequenceValue();
 !
 !               if (storedMarkupId == null)
 !               {
 !                       setMarkupIdImpl(new Integer(generatedMarkupId));
                }

                // try to read from markup
 --- 1426,1445 
                        return null;
                }

 !               String markupIdPostfix;
 !               if (!(storedMarkupId instanceof Integer)) {
 !                       Object markupIdFromSession =
 Session.get().getMarkupId(this);
 !                       if (storedMarkupId == null  markupIdFromSession
 != null) {
 !                               setMarkupIdImpl(markupIdFromSession);
 !                       }
 !                       storedMarkupId = markupIdFromSession;
 !               }
 !               if (storedMarkupId instanceof Integer) {
 !                       markupIdPostfix = Integer.toHexString(((Integer)
 storedMarkupId).intValue()).toLowerCase();
 !               } else if (storedMarkupId instanceof String) {
 !                       return (String) storedMarkupId;
 !               } else {
 !                       markupIdPostfix = storedMarkupId.toString();
                }

                // try to read from markup
 ***
 *** 1449,1455 
                        markupIdPrefix = getId();
                }

 -               String markupIdPostfix = Integer.toHexString
 (generatedMarkupId).toLowerCase();
                markupIdPostfix = RequestContext.get().encodeMarkupId
 (markupIdPostfix);

                String markupId = markupIdPrefix + markupIdPostfix;
 --- 1457,1462 


 Then in their session, they return stable ids

   private MapString,Integer pluginComponentCounters = new
 HashMapString,Integer();

   // Do not add the @Override annotation on this
   public Object getMarkupId(Component component) {
       String markupId = null;
       for (Component ancestor=component.getParent(); ancestor!
 =null  markupId==null; ancestor=ancestor.getParent()) {
           if (ancestor instanceof IPlugin || ancestor instanceof
 Home) {
               markupId = ancestor.getMarkupId(true);
               break;
           }
       }
       if (markupId == null) {
           return root;
       }
       int componentNum = 0;
       if (pluginComponentCounters.containsKey(markupId)) {
           componentNum = pluginComponentCounters.get
 (markupId).intValue();
       }
       ++componentNum;
       pluginComponentCounters.put(markupId, new Integer
 (componentNum));
       return markupId + _ + componentNum;
   }
 }


 -
 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



-
To 

Wickettester change locale of request

2009-10-15 Thread Per Newgro
Hi

i would like to test my code on new session creation in application.
A task in this process is to validate the resulting session locale.
Because the session locale will be taken from the request i have to provide my 
test value in the Wickettester.servletRequest attribute.

But how can i set it manually to avoid usage of system default locale?

MyApplication
public Session newSession(Request request, Response response) {
  MySession session = new MySession(request);
  if (isInvalid(session.getLocale())) {
session.setLocale(Locale.ENGLISH);
  }
  return session;
}

private boolean isInvalid(Locale locale) {
  return isUndefined(new Locale(locale.getLanguage())) 
   isUndefined(locale);
}

private boolean isUndefined(Locale locale) {
  return !_locales.contains(locale);
}

MyApplicationTest

@Test
public void invalidLanguageLocale() {
  assertEquals(Locale.CHINESE, 
prepareSession(toHtmlHeaderString(Locale.ENGLISH)).getLocale());
}

private String toHtmlHeaderString(Locale locale) {
  String result = locale.getLanguage();
  if (locale.getCountry() != null 
locale.getCountry().trim().length()  0) {
result = result + - + locale.getCountry();
  }
  return result;
}

private Session prepareSession(String locale) {
  _tester.setupRequestAndResponse();
  MockHttpServletRequest request = _tester.getServletRequest();
  request.addHeader(Accept-Language, locale);
  Session session = (Session) 
_testee.newSession(_tester.getWicketRequest(), 
_tester.getWicketResponse());
  return session;
}

-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01

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



How to add list-entities dynamicly to ListMultipleChoice Component?

2009-10-15 Thread Peter Arnulf Lustig
And how is that done via AJAX ?

Basicly I'd like to have a input textfield where the user can type a word into, 
and then after submitting the field he can see it in a ListMultipleChoice 
Component.





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



DropDownChoice: get selected object even if validation fails?

2009-10-15 Thread Christian Reiter

Hello!

I've got a DropDownChoice in one of my forms, with which the user can 
select a icon.

I want to display a preview of this icon beneath the drop down choice box.
Therefore I added an AjaxFormValidatingBehavior to the DropDownChoice. 
Now, when
the user changes the value of the DropDownChoice I get informed in the 
onError or onSubmit
method of the AjaxFormValidatingBehavior. Everything works fine if the 
form validation is
ok and the form data gets synced to my data model (then I query my model 
for the selected icon

and update the corresponding Image and send it to the client).

The problem occurs when the form validation doesn't work, because in 
this case, the
form data isn't synced to the model and I have no chance to know which 
icon was selected
by the user (through the DropDownChoice). As I want to display a preview 
of the icon also
if any of the previous form components didn't validate successful, I am 
in need of a method
which tells me which Icon was chosen by the user, regardless of the 
previous validation

result.

Is this possible?

Thanks in anticipation!

Best Regards,

chris


--


Christian Reiter|||c.rei...@gmx.net  



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



Re: How to add list-entities dynamicly to ListMultipleChoice Component?

2009-10-15 Thread Pedro Santos
for the textfield you can use an ajax behaviour, or put it into an form with
ajax submit. in your handle code, you update the model object on your
listmultiplechoise, and add it or its parent component to ajaxrequesttarget

On Thu, Oct 15, 2009 at 9:56 AM, Peter Arnulf Lustig u...@yahoo.dewrote:

 And how is that done via AJAX ?

 Basicly I'd like to have a input textfield where the user can type a word
 into, and then after submitting the field he can see it in a
 ListMultipleChoice Component.





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




-- 
Pedro Henrique Oliveira dos Santos


Re: Date Picker in Editable TreeTable in IE7 and IE8

2009-10-15 Thread John MacEnri
Hi,

just to close this off in case it's of use to anyone else.

I gave up trying to get the DatePicker working from within a
wicket-extensions TreeTable (v1.4.2) in IE.
Instead I downloaded and used the new TableTree component from
http://code.google.com/p/wicket-tree/
(Thanks to Sven Meier)
This gives me pretty much the same functionality I had been using with the
wicket-extensions TreeTable, but now the DatePicker is working fine.

I think it's something to do with how IE handles div. The wicket-tree
TableTree component is rendered based on standard HTML tabletrtd
markup.

I found the new TableTree very natural in terms of the simplicity of the
tree model is uses (ITreeProvider) and my model objects at each node don't
have to implement a heavy TreeNode interface or be wrapped some
implementation of it.

The only drawback of TableTree was due to my own lack of experience of CSS.
I had to do a lot of the styling myself, whereas I was happy with what came
out of the box with extensions TreeTable.

Is this wicket-tree TableTree component going to be incorporated into
wicket-extensions? It seems like a good idea to drop the dependency on Swing
TreeModel etc.

Regards

John

2009/10/12 John MacEnri john.mace...@gmail.com

 Thanks for that Zoltan.

 Looks like it's worth a bit more digging into the css. I had already played
 with the z-index but that had no effect. There must be something coming from
 further up the structure tree that is causing it (only in IE, fine in
 FireFox).

 I might subclass the DatePicker in order to wrap it in an outer span like
 you've shown here to see if that has any effect.

 Thanks again

 John



 2009/10/12 zlus...@gmail.com zlus...@gmail.com

 Hi,

 Try to play with z-index css value; increase it, and it should bring the
 calendar control above the other parts of the table. We are also using the
 YUI calendar widget inside a table, see this page on JavaForge:
 http://www.javaforge.com/proj/tracker/submitNew.do?tracker_id=5407.
 (Sorry guys for showing a struts page here ;-).

 The calendar markup is wrapped in a span
 class=calOuterContainer.../span. The relevan css is:

 /* relative puts the calendar where the container is on screen */
 .calOuterContainer {
   position: relative;
   z-index:20;
   /* holy hack for IE6 scrollbar bug on relative positioned controller
   see: http://www.positioniseverything.net/explorer/unscrollable.html
   */
   height: 1%;
 }

 I hope that helps,
 Zoltan


 John MacEnri írta:

 Rolling my own seems like a pretty heavyweight solution. The control for
 the
 most part is fine. (Though the lack of any year change ability is a
 significant drawback)

 What I'm trying to find out is whether anyone else is having any trouble
 with the YUI datepicker in IE7 or IE8 when used within a Table or
 TreeTable.
 Thanks

 John

 2009/10/10 Igor Vaynberg igor.vaynb...@gmail.com



 you can always roll your own datepicker if the YUI one does not work
 properly.

 -igor

 On Fri, Oct 9, 2009 at 5:13 PM, John MacEnri john.mace...@gmail.com
 wrote:


 Hi,


 I'm new to Wicket this week, so not familiar with the expected format
 or
 structure of emails to this mailing list.

 I picked Wicket after trawling around for a framework that would enable


 UI


 programming on the Web make sense again. It's been an absolute pleasure


 so


 far. Compared to the pain I've felt for some time now battling with web
 application frameworks where most of the code of the applications was
 in
 XML, JS, JSP etc. etc. and a light sprinkling of actual Java, the


 elegance


 of Wicket as a natural UI programming environment makes everything seem
 possible and even enjoyable again. Thanks.

 But, (there always is a but:-) ), I'm struggling with an issue I've hit


 with


 the DatePicker and can't seem to resolve it.

 I'm using Wicket 1.4.1.
 I used the Editable TreeTable example from the Wicket site as a starter


 for


 the very small app I needed to write.
 Rather than just text editable columns though, I'm making them more
 type
 specific, so one of them is for Dates and shows a DateTextField and a
 DatePicker.

 The app is working fine in Firefox but the DatePicker is always caught
 behind the rows above and below when I run the app in IE7 or 8.
 The attached screen snippets show the difference. I've dug deep into
 the


 css


 and used the developer tools in IE8 which give you something akin to


 Firebug


 but couldn't find  any css change would fix it.

 Is there a way to fix this or an alternative date picker?

 Thanks

 John





 -
 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









 

AW: How to add list-entities dynamicly to ListMultipleChoice Component?

2009-10-15 Thread Peter Arnulf Lustig
thank you -- that helped me out!



- Ursprüngliche Mail 
Von: Pedro Santos pedros...@gmail.com
An: users@wicket.apache.org
Gesendet: Donnerstag, den 15. Oktober 2009, 15:07:15 Uhr
Betreff: Re: How to add list-entities dynamicly to ListMultipleChoice  
Component?

for the textfield you can use an ajax behaviour, or put it into an form with
ajax submit. in your handle code, you update the model object on your
listmultiplechoise, and add it or its parent component to ajaxrequesttarget

On Thu, Oct 15, 2009 at 9:56 AM, Peter Arnulf Lustig u...@yahoo.dewrote:

 And how is that done via AJAX ?

 Basicly I'd like to have a input textfield where the user can type a word
 into, and then after submitting the field he can see it in a
 ListMultipleChoice Component.





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




-- 
Pedro Henrique Oliveira dos Santos





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



Updating Component On a Different Page

2009-10-15 Thread nwallman
Hello,

I have 2 pages, one is called HomePage and the other is called SignInPage.  On 
the HomePage I have a MyAccountPanel that is hidden until the user is signed 
in.  On the SignInPage I have a form that I want to have update the 
MyAccountPanel to visible if the sign in is successful.  The problem is the 
SignInPage does not have access to the MyAccountPanel is on a different page.  
My question is how is the best way to update a component that is on a different 
page?

Thanks!

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



Re: Updating Component On a Different Page

2009-10-15 Thread Pedro Santos
IMO:
MyAccountPanel{
public boolean isVisible{
return getSession().isSignedIn();
}
}

On Thu, Oct 15, 2009 at 11:24 AM, nwall...@cox.net wrote:

 Hello,

 I have 2 pages, one is called HomePage and the other is called SignInPage.
  On the HomePage I have a MyAccountPanel that is hidden until the user is
 signed in.  On the SignInPage I have a form that I want to have update the
 MyAccountPanel to visible if the sign in is successful.  The problem is the
 SignInPage does not have access to the MyAccountPanel is on a different
 page.  My question is how is the best way to update a component that is on a
 different page?

 Thanks!

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




-- 
Pedro Henrique Oliveira dos Santos


Re: Reporting Framework Wicket

2009-10-15 Thread Decebal Suiu

Hello,

We use Wicket with NextReports (http://www.next-reports.com/) and Jasper. 
Basically, in Wicket you will have logic for the form that will fill report
parameters. For Jasper we
also have a logic for edit parameters (we added more functionality to
parameter definition that we could not find in any jasper designer tool).

Depending on how parameters are defined (in your report designer tool) you
may have to add the following business  :
- chained parameters (to fill children parameters if parent parameters are
selected)
- default values (fill default values for parameters)
- hidden parameters (parameters which are substituted with their values when
the report is ran by human process or by scheduler process)

After the parameter values selection process , you will just have to use the
api offered by your reporting framework. 

For example in Next it is simple as this :
 
  FluentReportRunner.report(report)
  .connectTo(connection)
  .withQueryTimeout(60)
  .withParameterValues(createParameterValues())
  .formatAs(ReportRunner.HTML_FORMAT)
  .run(stream);


Douglas Ferguson-2 wrote:
 
 Hey,
 
 I'm starting to look into reporting frameworks and was curious if  
 anybody had successfully integrated with wicket?
 
 Are there any off the shelf integrations or will I have to roll my  
 own?
 
 D/
 
 -
 To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Reporting-Framework---Wicket-tp25894303p25910426.html
Sent from the Wicket - User 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: Hippo's patch for wicket ids

2009-10-15 Thread Igor Vaynberg
see idebugsettings.setoutputcomponentpath, this will add
wicket:path='component's page relative path' attribute which is stable
as long as you do not change the hierarchy and can be used for writing
selenium tests.

-igor

On Thu, Oct 15, 2009 at 4:14 AM, Per Lundholm per.lundh...@gmail.com wrote:
 Looks like a patch to make it easier to use Selenium to test your
 webapplication.

 Selenium is very fond of id in tags.

 /Per

 On Thu, Oct 15, 2009 at 9:58 AM, Daniel Frisk dan...@jalbum.net wrote:
 Ok, I'm lazy and couldn't decipher that code at a glance. What does it do?

 // Daniel
 jalbum.net



 On 2009-10-15, at 03:09, Douglas Ferguson wrote:

 Has anybody seen this:

 http://www.onehippo.org/cms7/integration_testing.html

 Seems like a nice alternative vs. having to set markupIds on all
 components.

 Thoughts?

 

 They have a patch for wicket:

 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 ===
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (working copy)
 ***
 *** 1475,1478 
 --- 1475,1489 
        {
                return sequence++;
        }
 +
 +       /**
 +        * Retrieves the next available session-unique value for the
 supplied Component
 +        *
 +        * @param component
 +        *            the component which requests the generation of a
 markup identifier
 +        * @return session-unique value
 +        */
 +       public Object getMarkupId(Component component) {
 +               return new Integer(nextSequenceValue());
 +       }
  }
 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 ===
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (working copy)
 ***
 *** 1426,1437 
                        return null;
                }

 !               final int generatedMarkupId = storedMarkupId instanceof
 Integer
 !                       ? ((Integer)storedMarkupId).intValue() :
 Session.get
 ().nextSequenceValue();
 !
 !               if (storedMarkupId == null)
 !               {
 !                       setMarkupIdImpl(new Integer(generatedMarkupId));
                }

                // try to read from markup
 --- 1426,1445 
                        return null;
                }

 !               String markupIdPostfix;
 !               if (!(storedMarkupId instanceof Integer)) {
 !                       Object markupIdFromSession =
 Session.get().getMarkupId(this);
 !                       if (storedMarkupId == null  markupIdFromSession
 != null) {
 !                               setMarkupIdImpl(markupIdFromSession);
 !                       }
 !                       storedMarkupId = markupIdFromSession;
 !               }
 !               if (storedMarkupId instanceof Integer) {
 !                       markupIdPostfix = Integer.toHexString(((Integer)
 storedMarkupId).intValue()).toLowerCase();
 !               } else if (storedMarkupId instanceof String) {
 !                       return (String) storedMarkupId;
 !               } else {
 !                       markupIdPostfix = storedMarkupId.toString();
                }

                // try to read from markup
 ***
 *** 1449,1455 
                        markupIdPrefix = getId();
                }

 -               String markupIdPostfix = Integer.toHexString
 (generatedMarkupId).toLowerCase();
                markupIdPostfix = RequestContext.get().encodeMarkupId
 (markupIdPostfix);

                String markupId = markupIdPrefix + markupIdPostfix;
 --- 1457,1462 


 Then in their session, they return stable ids

   private MapString,Integer pluginComponentCounters = new
 HashMapString,Integer();

   // Do not add the @Override annotation on this
   public Object getMarkupId(Component component) {
       String markupId = null;
       for (Component ancestor=component.getParent(); ancestor!
 =null  markupId==null; ancestor=ancestor.getParent()) {
           if (ancestor instanceof IPlugin || ancestor instanceof
 Home) {
               markupId = ancestor.getMarkupId(true);
               break;
           }
       }
       if (markupId == null) {
           return root;
       }
       int componentNum = 0;
       if (pluginComponentCounters.containsKey(markupId)) {
           componentNum = pluginComponentCounters.get
 (markupId).intValue();
       }
       ++componentNum;
       pluginComponentCounters.put(markupId, new Integer
 (componentNum));
       return markupId + _ + componentNum;
   }
 }


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

Re: DropDownChoice: get selected object even if validation fails?

2009-10-15 Thread Igor Vaynberg
you can use getinput() to get the raw value or override
wantOnSelectionChangedNotifications() to return true and implement a
listener in onSelectionChanged, but then its not ajax.

-igor

On Thu, Oct 15, 2009 at 6:02 AM, Christian Reiter c.rei...@gmx.net wrote:
 Hello!

 I've got a DropDownChoice in one of my forms, with which the user can select
 a icon.
 I want to display a preview of this icon beneath the drop down choice box.
 Therefore I added an AjaxFormValidatingBehavior to the DropDownChoice. Now,
 when
 the user changes the value of the DropDownChoice I get informed in the
 onError or onSubmit
 method of the AjaxFormValidatingBehavior. Everything works fine if the form
 validation is
 ok and the form data gets synced to my data model (then I query my model for
 the selected icon
 and update the corresponding Image and send it to the client).

 The problem occurs when the form validation doesn't work, because in this
 case, the
 form data isn't synced to the model and I have no chance to know which icon
 was selected
 by the user (through the DropDownChoice). As I want to display a preview of
 the icon also
 if any of the previous form components didn't validate successful, I am in
 need of a method
 which tells me which Icon was chosen by the user, regardless of the previous
 validation
 result.

 Is this possible?

 Thanks in anticipation!

 Best Regards,

 chris


 --


 Christian Reiter    |||c.rei...@gmx.net

 -
 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



Re: Hippo's patch for wicket ids

2009-10-15 Thread Douglas Ferguson
Is there any drawback to using this in production?


On Oct 15, 2009, at 10:53 AM, Igor Vaynberg wrote:

 see idebugsettings.setoutputcomponentpath, this will add
 wicket:path='component's page relative path' attribute which is stable
 as long as you do not change the hierarchy and can be used for writing
 selenium tests.

 -igor

 On Thu, Oct 15, 2009 at 4:14 AM, Per Lundholm  
 per.lundh...@gmail.com wrote:
 Looks like a patch to make it easier to use Selenium to test your
 webapplication.

 Selenium is very fond of id in tags.

 /Per

 On Thu, Oct 15, 2009 at 9:58 AM, Daniel Frisk dan...@jalbum.net  
 wrote:
 Ok, I'm lazy and couldn't decipher that code at a glance. What  
 does it do?

 // Daniel
 jalbum.net



 On 2009-10-15, at 03:09, Douglas Ferguson wrote:

 Has anybody seen this:

 http://www.onehippo.org/cms7/integration_testing.html

 Seems like a nice alternative vs. having to set markupIds on all
 components.

 Thoughts?

 

 They have a patch for wicket:

 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 = 
 ==
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (working copy)
 ***
 *** 1475,1478 
 --- 1475,1489 
{
return sequence++;
}
 +
 +   /**
 +* Retrieves the next available session-unique value for  
 the
 supplied Component
 +*
 +* @param component
 +*the component which requests the  
 generation of a
 markup identifier
 +* @return session-unique value
 +*/
 +   public Object getMarkupId(Component component) {
 +   return new Integer(nextSequenceValue());
 +   }
  }
 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/ 
 Component.java
 = 
 ==
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (working copy)
 ***
 *** 1426,1437 
return null;
}

 !   final int generatedMarkupId = storedMarkupId  
 instanceof
 Integer
 !   ? ((Integer)storedMarkupId).intValue() :
 Session.get
 ().nextSequenceValue();
 !
 !   if (storedMarkupId == null)
 !   {
 !   setMarkupIdImpl(new Integer 
 (generatedMarkupId));
}

// try to read from markup
 --- 1426,1445 
return null;
}

 !   String markupIdPostfix;
 !   if (!(storedMarkupId instanceof Integer)) {
 !   Object markupIdFromSession =
 Session.get().getMarkupId(this);
 !   if (storedMarkupId == null   
 markupIdFromSession
 != null) {
 !   setMarkupIdImpl 
 (markupIdFromSession);
 !   }
 !   storedMarkupId = markupIdFromSession;
 !   }
 !   if (storedMarkupId instanceof Integer) {
 !   markupIdPostfix = Integer.toHexString 
 (((Integer)
 storedMarkupId).intValue()).toLowerCase();
 !   } else if (storedMarkupId instanceof String) {
 !   return (String) storedMarkupId;
 !   } else {
 !   markupIdPostfix = storedMarkupId.toString 
 ();
}

// try to read from markup
 ***
 *** 1449,1455 
markupIdPrefix = getId();
}

 -   String markupIdPostfix = Integer.toHexString
 (generatedMarkupId).toLowerCase();
markupIdPostfix = RequestContext.get 
 ().encodeMarkupId
 (markupIdPostfix);

String markupId = markupIdPrefix + markupIdPostfix;
 --- 1457,1462 


 Then in their session, they return stable ids

   private MapString,Integer pluginComponentCounters = new
 HashMapString,Integer();

   // Do not add the @Override annotation on this
   public Object getMarkupId(Component component) {
   String markupId = null;
   for (Component ancestor=component.getParent(); ancestor!
 =null  markupId==null; ancestor=ancestor.getParent()) {
   if (ancestor instanceof IPlugin || ancestor instanceof
 Home) {
   markupId = ancestor.getMarkupId(true);
   break;
   }
   }
   if (markupId == null) {
   return root;
   }
   int componentNum = 0;
   if (pluginComponentCounters.containsKey(markupId)) {
   componentNum = pluginComponentCounters.get
 (markupId).intValue();
   }
   ++componentNum;
   pluginComponentCounters.put(markupId, new Integer
 (componentNum));
   return markupId + _ + componentNum;
   }
 }


 

Re: Reporting Framework Wicket

2009-10-15 Thread nino martinez wael
I've been using jasper reports, in conjunction with ireport
http://jasperforge.org/plugins/mwiki/index.php/Ireport/Product_Tour . Giving
a powerful combo, you can give the possibility to let your users design
their own reports. Almost in line with some of the software from SAS
Institute (though it depends on your backing service). For simpler stuff I
just use jfreechart. Like here
http://exerciselog.eu/products/cache/true/locale/en/ it's really simple and
have a lot of different charts.

2009/10/14 Douglas Ferguson doug...@douglasferguson.us

 Hey,

 I'm starting to look into reporting frameworks and was curious if
 anybody had successfully integrated with wicket?

 Are there any off the shelf integrations or will I have to roll my
 own?

 D/

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




Re: Hippo's patch for wicket ids

2009-10-15 Thread Igor Vaynberg
the only drawback is that it makes your markup longer and that it will
take slightly more cpu because the page-relative path has to be
computed for every component on the page.

-igor

On Thu, Oct 15, 2009 at 9:04 AM, Douglas Ferguson
doug...@douglasferguson.us wrote:
 Is there any drawback to using this in production?


 On Oct 15, 2009, at 10:53 AM, Igor Vaynberg wrote:

 see idebugsettings.setoutputcomponentpath, this will add
 wicket:path='component's page relative path' attribute which is stable
 as long as you do not change the hierarchy and can be used for writing
 selenium tests.

 -igor

 On Thu, Oct 15, 2009 at 4:14 AM, Per Lundholm
 per.lundh...@gmail.com wrote:
 Looks like a patch to make it easier to use Selenium to test your
 webapplication.

 Selenium is very fond of id in tags.

 /Per

 On Thu, Oct 15, 2009 at 9:58 AM, Daniel Frisk dan...@jalbum.net
 wrote:
 Ok, I'm lazy and couldn't decipher that code at a glance. What
 does it do?

 // Daniel
 jalbum.net



 On 2009-10-15, at 03:09, Douglas Ferguson wrote:

 Has anybody seen this:

 http://www.onehippo.org/cms7/integration_testing.html

 Seems like a nice alternative vs. having to set markupIds on all
 components.

 Thoughts?

 

 They have a patch for wicket:

 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 =
 ==
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
 (working copy)
 ***
 *** 1475,1478 
 --- 1475,1489 
        {
                return sequence++;
        }
 +
 +       /**
 +        * Retrieves the next available session-unique value for
 the
 supplied Component
 +        *
 +        * @param component
 +        *            the component which requests the
 generation of a
 markup identifier
 +        * @return session-unique value
 +        */
 +       public Object getMarkupId(Component component) {
 +               return new Integer(nextSequenceValue());
 +       }
  }
 Index: jdk-1.4/wicket/src/main/java/org/apache/wicket/
 Component.java
 =
 ==
 *** jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (revision 724306)
 --- jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
 (working copy)
 ***
 *** 1426,1437 
                        return null;
                }

 !               final int generatedMarkupId = storedMarkupId
 instanceof
 Integer
 !                       ? ((Integer)storedMarkupId).intValue() :
 Session.get
 ().nextSequenceValue();
 !
 !               if (storedMarkupId == null)
 !               {
 !                       setMarkupIdImpl(new Integer
 (generatedMarkupId));
                }

                // try to read from markup
 --- 1426,1445 
                        return null;
                }

 !               String markupIdPostfix;
 !               if (!(storedMarkupId instanceof Integer)) {
 !                       Object markupIdFromSession =
 Session.get().getMarkupId(this);
 !                       if (storedMarkupId == null 
 markupIdFromSession
 != null) {
 !                               setMarkupIdImpl
 (markupIdFromSession);
 !                       }
 !                       storedMarkupId = markupIdFromSession;
 !               }
 !               if (storedMarkupId instanceof Integer) {
 !                       markupIdPostfix = Integer.toHexString
 (((Integer)
 storedMarkupId).intValue()).toLowerCase();
 !               } else if (storedMarkupId instanceof String) {
 !                       return (String) storedMarkupId;
 !               } else {
 !                       markupIdPostfix = storedMarkupId.toString
 ();
                }

                // try to read from markup
 ***
 *** 1449,1455 
                        markupIdPrefix = getId();
                }

 -               String markupIdPostfix = Integer.toHexString
 (generatedMarkupId).toLowerCase();
                markupIdPostfix = RequestContext.get
 ().encodeMarkupId
 (markupIdPostfix);

                String markupId = markupIdPrefix + markupIdPostfix;
 --- 1457,1462 


 Then in their session, they return stable ids

   private MapString,Integer pluginComponentCounters = new
 HashMapString,Integer();

   // Do not add the @Override annotation on this
   public Object getMarkupId(Component component) {
       String markupId = null;
       for (Component ancestor=component.getParent(); ancestor!
 =null  markupId==null; ancestor=ancestor.getParent()) {
           if (ancestor instanceof IPlugin || ancestor instanceof
 Home) {
               markupId = ancestor.getMarkupId(true);
               break;
           }
       }
       if (markupId == null) {
           return root;
       }
       int componentNum = 0;
       if (pluginComponentCounters.containsKey(markupId)) {
      

Re: DropDownChoice: get selected object even if validation fails?

2009-10-15 Thread t3_chris

Thanks a lot, Igor!
I'll try this tomorrow.
-- 
View this message in context: 
http://www.nabble.com/DropDownChoice%3A-get-selected-object-even-if-validation-fails--tp25908263p25912489.html
Sent from the Wicket - User 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



Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Andrig T. Miller
I have been going through the Wicket in Action book, but using the
1.4.2 release.  I figured the changes where minimal enough I could get
through things.  In the Cheese store example I have the following
code:


package org.miller.wicket.example;

import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.IModel;

public class Index extends CheesrPage {

    public Index() {

        add(new ListViewCheese(cheeses, getCheeses()) {

            private static final long serialVersionUID = -6160450216067455300L;

           �...@override
            protected void populateItem(ListItemCheese item) {

                Cheese cheese = (Cheese) getDefaultModelObject();

                item.add(new Label(name, cheese.getName()));
                item.add(new Label(description, cheese.getDescription()));
                item.add(new Label(price, $ + cheese.getPrice()));
                item.add(new LinkCheese(add, item.getDefaultModel()) {

                    private static final long serialVersionUID =
3724016761964076585L;

                   �...@override
                    public void onClick() {

                        Cheese selected = (Cheese) getDefaultModelObject();
                        getCart().getCheeses().add(selected);

                    }
                });
            }
        });

    }

}

The line item.add(new LinkCheese(add, item.getDefaultModel()) {
   ...

Doesn't compile in Eclipse.  It will compile if I remove the Cheese
from the Link, but warns about Link being a raw type that should be
parameterized.

I can get it to compile if I cast the result of item.getDefaultModel
in this way (IModelCheese), but then Eclipse gives me a warning
saying unchecked cast IModelcapture#1-of ? to IModelCheese.

What's the right syntax?  I'm sure I'm missing something obvious.

Thanks for any help.

Andy


Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Jeremy Thomerson
the key is in getCheeses...

It should be something like private IModelListCheese getCheeses()

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 4:55 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:

 I have been going through the Wicket in Action book, but using the
 1.4.2 release.  I figured the changes where minimal enough I could get
 through things.  In the Cheese store example I have the following
 code:


 package org.miller.wicket.example;

 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.Link;
 import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.IModel;

 public class Index extends CheesrPage {

 public Index() {

 add(new ListViewCheese(cheeses, getCheeses()) {

 private static final long serialVersionUID =
 -6160450216067455300L;

 @Override
 protected void populateItem(ListItemCheese item) {

 Cheese cheese = (Cheese) getDefaultModelObject();

 item.add(new Label(name, cheese.getName()));
 item.add(new Label(description,
 cheese.getDescription()));
 item.add(new Label(price, $ + cheese.getPrice()));
 item.add(new LinkCheese(add, item.getDefaultModel()) {

 private static final long serialVersionUID =
 3724016761964076585L;

 @Override
 public void onClick() {

 Cheese selected = (Cheese) getDefaultModelObject();
 getCart().getCheeses().add(selected);

 }
 });
 }
 });

 }

 }

 The line item.add(new LinkCheese(add, item.getDefaultModel()) {
   ...

 Doesn't compile in Eclipse.  It will compile if I remove the Cheese
 from the Link, but warns about Link being a raw type that should be
 parameterized.

 I can get it to compile if I cast the result of item.getDefaultModel
 in this way (IModelCheese), but then Eclipse gives me a warning
 saying unchecked cast IModelcapture#1-of ? to IModelCheese.

 What's the right syntax?  I'm sure I'm missing something obvious.

 Thanks for any help.

 Andy



Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Andrig T. Miller
I have in CheesrPage the following:

private ListCheese getCheeses() {
return CheeseApplication.get().getCheeses();
}

If I change that to:

private IModelListCheese getCheeses() {
 return CheeseApplication.get().getCheeses();
}

I then just get the same warning here, and of course then I can go
back to the CheeseApplication class and change the getCheeses there,
but I get the same warning there.

It's just moving the problem around.

Andy

On Thu, Oct 15, 2009 at 4:00 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 the key is in getCheeses...

 It should be something like private IModelListCheese getCheeses()

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 4:55 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:

 I have been going through the Wicket in Action book, but using the
 1.4.2 release.  I figured the changes where minimal enough I could get
 through things.  In the Cheese store example I have the following
 code:


 package org.miller.wicket.example;

 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.Link;
 import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.IModel;

 public class Index extends CheesrPage {

     public Index() {

         add(new ListViewCheese(cheeses, getCheeses()) {

             private static final long serialVersionUID =
 -6160450216067455300L;

             @Override
             protected void populateItem(ListItemCheese item) {

                 Cheese cheese = (Cheese) getDefaultModelObject();

                 item.add(new Label(name, cheese.getName()));
                 item.add(new Label(description,
 cheese.getDescription()));
                 item.add(new Label(price, $ + cheese.getPrice()));
                 item.add(new LinkCheese(add, item.getDefaultModel()) {

                     private static final long serialVersionUID =
 3724016761964076585L;

                     @Override
                     public void onClick() {

                         Cheese selected = (Cheese) getDefaultModelObject();
                         getCart().getCheeses().add(selected);

                     }
                 });
             }
         });

     }

 }

 The line item.add(new LinkCheese(add, item.getDefaultModel()) {
   ...

 Doesn't compile in Eclipse.  It will compile if I remove the Cheese
 from the Link, but warns about Link being a raw type that should be
 parameterized.

 I can get it to compile if I cast the result of item.getDefaultModel
 in this way (IModelCheese), but then Eclipse gives me a warning
 saying unchecked cast IModelcapture#1-of ? to IModelCheese.

 What's the right syntax?  I'm sure I'm missing something obvious.

 Thanks for any help.

 Andy



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



Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Jeremy Thomerson
Can you pastebin the entire java file?

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 5:09 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:

 I have in CheesrPage the following:

 private ListCheese getCheeses() {
return CheeseApplication.get().getCheeses();
 }

 If I change that to:

 private IModelListCheese getCheeses() {
 return CheeseApplication.get().getCheeses();
 }

 I then just get the same warning here, and of course then I can go
 back to the CheeseApplication class and change the getCheeses there,
 but I get the same warning there.

 It's just moving the problem around.

 Andy

 On Thu, Oct 15, 2009 at 4:00 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  the key is in getCheeses...
 
  It should be something like private IModelListCheese getCheeses()
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 4:55 PM, Andrig T. Miller 
 andrig.t.mil...@gmail.com
  wrote:
 
  I have been going through the Wicket in Action book, but using the
  1.4.2 release.  I figured the changes where minimal enough I could get
  through things.  In the Cheese store example I have the following
  code:
 
 
  package org.miller.wicket.example;
 
  import org.apache.wicket.markup.html.basic.Label;
  import org.apache.wicket.markup.html.link.Link;
  import org.apache.wicket.markup.html.list.ListItem;
  import org.apache.wicket.markup.html.list.ListView;
  import org.apache.wicket.model.IModel;
 
  public class Index extends CheesrPage {
 
  public Index() {
 
  add(new ListViewCheese(cheeses, getCheeses()) {
 
  private static final long serialVersionUID =
  -6160450216067455300L;
 
  @Override
  protected void populateItem(ListItemCheese item) {
 
  Cheese cheese = (Cheese) getDefaultModelObject();
 
  item.add(new Label(name, cheese.getName()));
  item.add(new Label(description,
  cheese.getDescription()));
  item.add(new Label(price, $ + cheese.getPrice()));
  item.add(new LinkCheese(add, item.getDefaultModel())
 {
 
  private static final long serialVersionUID =
  3724016761964076585L;
 
  @Override
  public void onClick() {
 
  Cheese selected = (Cheese)
 getDefaultModelObject();
  getCart().getCheeses().add(selected);
 
  }
  });
  }
  });
 
  }
 
  }
 
  The line item.add(new LinkCheese(add, item.getDefaultModel()) {
...
 
  Doesn't compile in Eclipse.  It will compile if I remove the Cheese
  from the Link, but warns about Link being a raw type that should be
  parameterized.
 
  I can get it to compile if I cast the result of item.getDefaultModel
  in this way (IModelCheese), but then Eclipse gives me a warning
  saying unchecked cast IModelcapture#1-of ? to IModelCheese.
 
  What's the right syntax?  I'm sure I'm missing something obvious.
 
  Thanks for any help.
 
  Andy
 
 

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




Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Andrig T. Miller
Sure:

package org.miller.wicket.example;

import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.IModel;

public class Index extends CheesrPage {

public Index() {

add(new ListViewCheese(cheeses, getCheeses()) {

private static final long serialVersionUID = 
-6160450216067455300L;

@Override
protected void populateItem(ListItemCheese item) {

Cheese cheese = (Cheese) 
getDefaultModelObject();

item.add(new Label(name, cheese.getName()));
item.add(new Label(description, 
cheese.getDescription()));
item.add(new Label(price, $ + 
cheese.getPrice()));
item.add(new LinkCheese(add, 
item.getDefaultModel()) {

private static final long 
serialVersionUID = 3724016761964076585L;

@Override
public void onClick() {

Cheese selected = (Cheese) 
getDefaultModelObject();

getCart().getCheeses().add(selected);

}
});
}
});

}

}


And the CheserPage:

package org.miller.wicket.example;

import java.util.List;

import org.apache.wicket.markup.html.WebPage;

public abstract class CheesrPage extends WebPage {

public CheesrSession getCheesrSession() {

return (CheesrSession) getSession();

}

public Cart getCart() {

return getCheesrSession().getCart();

}

public ListCheese getCheeses() {

return CheesrApplication.get().getCheeses();

}

}


Andy

On Thu, Oct 15, 2009 at 4:12 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 Can you pastebin the entire java file?

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 5:09 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:

 I have in CheesrPage the following:

 private ListCheese getCheeses() {
    return CheeseApplication.get().getCheeses();
 }

 If I change that to:

 private IModelListCheese getCheeses() {
     return CheeseApplication.get().getCheeses();
 }

 I then just get the same warning here, and of course then I can go
 back to the CheeseApplication class and change the getCheeses there,
 but I get the same warning there.

 It's just moving the problem around.

 Andy

 On Thu, Oct 15, 2009 at 4:00 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  the key is in getCheeses...
 
  It should be something like private IModelListCheese getCheeses()
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 4:55 PM, Andrig T. Miller 
 andrig.t.mil...@gmail.com
  wrote:
 
  I have been going through the Wicket in Action book, but using the
  1.4.2 release.  I figured the changes where minimal enough I could get
  through things.  In the Cheese store example I have the following
  code:
 
 
  package org.miller.wicket.example;
 
  import org.apache.wicket.markup.html.basic.Label;
  import org.apache.wicket.markup.html.link.Link;
  import org.apache.wicket.markup.html.list.ListItem;
  import org.apache.wicket.markup.html.list.ListView;
  import org.apache.wicket.model.IModel;
 
  public class Index extends CheesrPage {
 
      public Index() {
 
          add(new ListViewCheese(cheeses, getCheeses()) {
 
              private static final long serialVersionUID =
  -6160450216067455300L;
 
              @Override
              protected void populateItem(ListItemCheese item) {
 
                  Cheese cheese = (Cheese) getDefaultModelObject();
 
                  item.add(new Label(name, cheese.getName()));
                  item.add(new Label(description,
  cheese.getDescription()));
                  item.add(new Label(price, $ + cheese.getPrice()));
                  item.add(new LinkCheese(add, item.getDefaultModel())
 {
 
                      private static final long serialVersionUID =
  3724016761964076585L;
 
                      @Override
                      public void onClick() {
 
                          Cheese selected = (Cheese)
 getDefaultModelObject();
                     

Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Jeremy Thomerson
Ah, yes - sorry I missed it.  There are a couple of errors.

1 - change your Cheese cheese = (Cheese) line (see below)
2 - change getDefaultModel to getModel - the generic version of the method

public Index() {

add(new ListViewCheese(cheeses, getCheeses()) {

private static final long serialVersionUID =
-6160450216067455300L;

@Override
protected void populateItem(ListItemCheese item) {

Cheese cheese = item.getModelObject();

item.add(new Label(name, cheese.getName()));
item.add(new Label(description, cheese.getDescription()));
item.add(new Label(price, $ + cheese.getName()));
item.add(new LinkCheese(add, item.getModel()) {

private static final long serialVersionUID =
3724016761964076585L;

@Override
public void onClick() {
Cheese selected = getModelObject();
getCart().getCheeses().add(selected);
}
});
}
});

}


--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 5:17 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:


public Index() {

add(new ListViewCheese(cheeses, getCheeses()) {

private static final long serialVersionUID =
 -6160450216067455300L;

@Override
protected void populateItem(ListItemCheese item) {

Cheese cheese = (Cheese)
 getDefaultModelObject();

item.add(new Label(name,
 cheese.getName()));
item.add(new Label(description,
 cheese.getDescription()));
item.add(new Label(price, $ +
 cheese.getPrice()));
item.add(new LinkCheese(add,
 item.getDefaultModel()) {

private static final long
 serialVersionUID = 3724016761964076585L;

@Override
public void onClick() {

Cheese selected = (Cheese)
 getDefaultModelObject();

  getCart().getCheeses().add(selected);

}
});
}
});

}


Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Andrig T. Miller
Ah, thanks, that did the trick.

The migration guide says to use getDefaultModel instead of getModel,
but I guess that's not true all the time.

Andy

On Thu, Oct 15, 2009 at 4:26 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 Ah, yes - sorry I missed it.  There are a couple of errors.

 1 - change your Cheese cheese = (Cheese) line (see below)
 2 - change getDefaultModel to getModel - the generic version of the method

    public Index() {

        add(new ListViewCheese(cheeses, getCheeses()) {

            private static final long serialVersionUID =
 -6160450216067455300L;

           �...@override
            protected void populateItem(ListItemCheese item) {

                Cheese cheese = item.getModelObject();

                item.add(new Label(name, cheese.getName()));
                item.add(new Label(description, cheese.getDescription()));
                item.add(new Label(price, $ + cheese.getName()));
                item.add(new LinkCheese(add, item.getModel()) {

                    private static final long serialVersionUID =
 3724016761964076585L;

                   �...@override
                    public void onClick() {
                        Cheese selected = getModelObject();
                        getCart().getCheeses().add(selected);
                    }
                });
            }
        });

    }


 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 5:17 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:


        public Index() {

                add(new ListViewCheese(cheeses, getCheeses()) {

                        private static final long serialVersionUID =
 -6160450216067455300L;

                       �...@override
                        protected void populateItem(ListItemCheese item) {

                                Cheese cheese = (Cheese)
 getDefaultModelObject();

                                item.add(new Label(name,
 cheese.getName()));
                                item.add(new Label(description,
 cheese.getDescription()));
                                item.add(new Label(price, $ +
 cheese.getPrice()));
                                item.add(new LinkCheese(add,
 item.getDefaultModel()) {

                                        private static final long
 serialVersionUID = 3724016761964076585L;

                                       �...@override
                                        public void onClick() {

                                                Cheese selected = (Cheese)
 getDefaultModelObject();

  getCart().getCheeses().add(selected);

                                        }
                                });
                        }
                });

        }



Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Jeremy Thomerson
getDefaultModel still requires a cast - that was the direct migration.
getModel was then added back in to genericized components.  So, where you
want to use generics, you must use the getModel variation.

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 5:30 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:

 Ah, thanks, that did the trick.

 The migration guide says to use getDefaultModel instead of getModel,
 but I guess that's not true all the time.

 Andy

 On Thu, Oct 15, 2009 at 4:26 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  Ah, yes - sorry I missed it.  There are a couple of errors.
 
  1 - change your Cheese cheese = (Cheese) line (see below)
  2 - change getDefaultModel to getModel - the generic version of the
 method
 
 public Index() {
 
 add(new ListViewCheese(cheeses, getCheeses()) {
 
 private static final long serialVersionUID =
  -6160450216067455300L;
 
 @Override
 protected void populateItem(ListItemCheese item) {
 
 Cheese cheese = item.getModelObject();
 
 item.add(new Label(name, cheese.getName()));
 item.add(new Label(description,
 cheese.getDescription()));
 item.add(new Label(price, $ + cheese.getName()));
 item.add(new LinkCheese(add, item.getModel()) {
 
 private static final long serialVersionUID =
  3724016761964076585L;
 
 @Override
 public void onClick() {
 Cheese selected = getModelObject();
 getCart().getCheeses().add(selected);
 }
 });
 }
 });
 
 }
 
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 5:17 PM, Andrig T. Miller 
 andrig.t.mil...@gmail.com
  wrote:
 
 
 public Index() {
 
 add(new ListViewCheese(cheeses, getCheeses()) {
 
 private static final long serialVersionUID =
  -6160450216067455300L;
 
 @Override
 protected void populateItem(ListItemCheese
 item) {
 
 Cheese cheese = (Cheese)
  getDefaultModelObject();
 
 item.add(new Label(name,
  cheese.getName()));
 item.add(new Label(description,
  cheese.getDescription()));
 item.add(new Label(price, $ +
  cheese.getPrice()));
 item.add(new LinkCheese(add,
  item.getDefaultModel()) {
 
 private static final long
  serialVersionUID = 3724016761964076585L;
 
 @Override
 public void onClick() {
 
 Cheese selected =
 (Cheese)
  getDefaultModelObject();
 
   getCart().getCheeses().add(selected);
 
 }
 });
 }
 });
 
 }
 



Open Source projects using Wicket

2009-10-15 Thread Dave B
Hi,

I'm in the process of evaluating Wicket (after an arduous JSF project,
that has made us re-evaluate our web platform.)

I've read Wicket in Action and whole bunch of blog and mailing list
posts, done some proof-of-concept work and am now interested in
reading source code from a project using Wicket, since I want to see
Wicket in the wild. I know Artifactory uses Wicket, but their
Subversion access instructions seem to be out of date.

Does anyone know of an open source project using Wicket, so that I can
peruse the source code?

Many thanks,
Dave

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



Re: Open Source projects using Wicket

2009-10-15 Thread Jeremy Thomerson
Beware - just like any other app, OS or not, you will find OS projects out
there that will teach you all kind of wrong ways to use Wicket.  I know of a
couple because I tried to use them, thinking they would be easier to build
on because they used Wicket.  But they were so poorly written that it would
be a bad place for someone new to the framework to start.

http://code.google.com/p/brix-cms/ was written by some of the core
committers, so the Wicket code in it will be good.  Not sure how much of the
code is actually Wicket specific, though.

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:

 Hi,

 I'm in the process of evaluating Wicket (after an arduous JSF project,
 that has made us re-evaluate our web platform.)

 I've read Wicket in Action and whole bunch of blog and mailing list
 posts, done some proof-of-concept work and am now interested in
 reading source code from a project using Wicket, since I want to see
 Wicket in the wild. I know Artifactory uses Wicket, but their
 Subversion access instructions seem to be out of date.

 Does anyone know of an open source project using Wicket, so that I can
 peruse the source code?

 Many thanks,
 Dave

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




Re: Open Source projects using Wicket

2009-10-15 Thread Igor Vaynberg
keeping that in mind,

i wouldnt look at brix, most wicket-related code there has to do with
plumbing and implementing a development model that is unlike wicket
but works better for cmses.

maybe look at http://www.jtrac.info/ , i think that uses wicket...

-igor

On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 Beware - just like any other app, OS or not, you will find OS projects out
 there that will teach you all kind of wrong ways to use Wicket.  I know of a
 couple because I tried to use them, thinking they would be easier to build
 on because they used Wicket.  But they were so poorly written that it would
 be a bad place for someone new to the framework to start.

 http://code.google.com/p/brix-cms/ was written by some of the core
 committers, so the Wicket code in it will be good.  Not sure how much of the
 code is actually Wicket specific, though.

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:

 Hi,

 I'm in the process of evaluating Wicket (after an arduous JSF project,
 that has made us re-evaluate our web platform.)

 I've read Wicket in Action and whole bunch of blog and mailing list
 posts, done some proof-of-concept work and am now interested in
 reading source code from a project using Wicket, since I want to see
 Wicket in the wild. I know Artifactory uses Wicket, but their
 Subversion access instructions seem to be out of date.

 Does anyone know of an open source project using Wicket, so that I can
 peruse the source code?

 Many thanks,
 Dave

 -
 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



Re: Open Source projects using Wicket

2009-10-15 Thread Jeremy Thomerson
Don't look at jtrac.

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 6:42 PM, Igor Vaynberg igor.vaynb...@gmail.comwrote:

 keeping that in mind,

 i wouldnt look at brix, most wicket-related code there has to do with
 plumbing and implementing a development model that is unlike wicket
 but works better for cmses.

 maybe look at http://www.jtrac.info/ , i think that uses wicket...

 -igor

 On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  Beware - just like any other app, OS or not, you will find OS projects
 out
  there that will teach you all kind of wrong ways to use Wicket.  I know
 of a
  couple because I tried to use them, thinking they would be easier to
 build
  on because they used Wicket.  But they were so poorly written that it
 would
  be a bad place for someone new to the framework to start.
 
  http://code.google.com/p/brix-cms/ was written by some of the core
  committers, so the Wicket code in it will be good.  Not sure how much of
 the
  code is actually Wicket specific, though.
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:
 
  Hi,
 
  I'm in the process of evaluating Wicket (after an arduous JSF project,
  that has made us re-evaluate our web platform.)
 
  I've read Wicket in Action and whole bunch of blog and mailing list
  posts, done some proof-of-concept work and am now interested in
  reading source code from a project using Wicket, since I want to see
  Wicket in the wild. I know Artifactory uses Wicket, but their
  Subversion access instructions seem to be out of date.
 
  Does anyone know of an open source project using Wicket, so that I can
  peruse the source code?
 
  Many thanks,
  Dave
 
  -
  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




Re: Open Source projects using Wicket

2009-10-15 Thread Ralf Eichinger

see here:
http://cwiki.apache.org/WICKET/products-based-on-wicket.html

Igor Vaynberg wrote:

keeping that in mind,

i wouldnt look at brix, most wicket-related code there has to do with
plumbing and implementing a development model that is unlike wicket
but works better for cmses.

maybe look at http://www.jtrac.info/ , i think that uses wicket...

-igor

On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
  

Beware - just like any other app, OS or not, you will find OS projects out
there that will teach you all kind of wrong ways to use Wicket.  I know of a
couple because I tried to use them, thinking they would be easier to build
on because they used Wicket.  But they were so poorly written that it would
be a bad place for someone new to the framework to start.

http://code.google.com/p/brix-cms/ was written by some of the core
committers, so the Wicket code in it will be good.  Not sure how much of the
code is actually Wicket specific, though.

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:



Hi,

I'm in the process of evaluating Wicket (after an arduous JSF project,
that has made us re-evaluate our web platform.)

I've read Wicket in Action and whole bunch of blog and mailing list
posts, done some proof-of-concept work and am now interested in
reading source code from a project using Wicket, since I want to see
Wicket in the wild. I know Artifactory uses Wicket, but their
Subversion access instructions seem to be out of date.

Does anyone know of an open source project using Wicket, so that I can
peruse the source code?

Many thanks,
Dave

-
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

  



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



Re: Open Source projects using Wicket

2009-10-15 Thread Dave B
Great, thanks Ralf.

That'll give me plenty of stuff to digest.

I'm not against looking at bad Wicket usage either, I don't need to
see just best practices. The pitfalls of Wicket used in the wild are
also interesting.

I'm largely sold on the premise of Wicket, though I'd be concerned if
you guys advised that too many of these open source projects were poor
representations -- if it's too hard for an average developer to write
decent Wicket code, then that's a red flag for sure. (Not trying to
troll with that statement, but I'd expect more 'good' projects than
'bad'.)

Thanks again,
Dave




On Fri, Oct 16, 2009 at 11:04 AM, Ralf Eichinger
ralf.eichin...@pixotec.de wrote:
 see here:
 http://cwiki.apache.org/WICKET/products-based-on-wicket.html

 Igor Vaynberg wrote:

 keeping that in mind,

 i wouldnt look at brix, most wicket-related code there has to do with
 plumbing and implementing a development model that is unlike wicket
 but works better for cmses.

 maybe look at http://www.jtrac.info/ , i think that uses wicket...

 -igor

 On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:


 Beware - just like any other app, OS or not, you will find OS projects
 out
 there that will teach you all kind of wrong ways to use Wicket.  I know
 of a
 couple because I tried to use them, thinking they would be easier to
 build
 on because they used Wicket.  But they were so poorly written that it
 would
 be a bad place for someone new to the framework to start.

 http://code.google.com/p/brix-cms/ was written by some of the core
 committers, so the Wicket code in it will be good.  Not sure how much of
 the
 code is actually Wicket specific, though.

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:



 Hi,

 I'm in the process of evaluating Wicket (after an arduous JSF project,
 that has made us re-evaluate our web platform.)

 I've read Wicket in Action and whole bunch of blog and mailing list
 posts, done some proof-of-concept work and am now interested in
 reading source code from a project using Wicket, since I want to see
 Wicket in the wild. I know Artifactory uses Wicket, but their
 Subversion access instructions seem to be out of date.

 Does anyone know of an open source project using Wicket, so that I can
 peruse the source code?

 Many thanks,
 Dave

 -
 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




 -
 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



Re: Open Source projects using Wicket

2009-10-15 Thread Dave B
Any particular reason?  Form a (very) cursory ten minute look, the
lack of tests was glaring, though not an indictment of the actual
Wicket usage.

Thanks,
Dave

On Fri, Oct 16, 2009 at 11:04 AM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 Don't look at jtrac.

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 6:42 PM, Igor Vaynberg igor.vaynb...@gmail.comwrote:

 keeping that in mind,

 i wouldnt look at brix, most wicket-related code there has to do with
 plumbing and implementing a development model that is unlike wicket
 but works better for cmses.

 maybe look at http://www.jtrac.info/ , i think that uses wicket...

 -igor

 On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  Beware - just like any other app, OS or not, you will find OS projects
 out
  there that will teach you all kind of wrong ways to use Wicket.  I know
 of a
  couple because I tried to use them, thinking they would be easier to
 build
  on because they used Wicket.  But they were so poorly written that it
 would
  be a bad place for someone new to the framework to start.
 
  http://code.google.com/p/brix-cms/ was written by some of the core
  committers, so the Wicket code in it will be good.  Not sure how much of
 the
  code is actually Wicket specific, though.
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:
 
  Hi,
 
  I'm in the process of evaluating Wicket (after an arduous JSF project,
  that has made us re-evaluate our web platform.)
 
  I've read Wicket in Action and whole bunch of blog and mailing list
  posts, done some proof-of-concept work and am now interested in
  reading source code from a project using Wicket, since I want to see
  Wicket in the wild. I know Artifactory uses Wicket, but their
  Subversion access instructions seem to be out of date.
 
  Does anyone know of an open source project using Wicket, so that I can
  peruse the source code?
 
  Many thanks,
  Dave
 
  -
  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




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



Re: Open Source projects using Wicket

2009-10-15 Thread Jeremy Thomerson
Sorry, that was an overly terse statement.  Peter Thomas has put a lot of
work into JTrac, and has done a lot of things that I admire (for instance,
some of his performance testing blog entries, etc).  He is also very helpful
on the mailing list.

The reason I said not to look at it is that when I was using it, I found
that nearly all of the components were created without the use of models -
pushing data into the component rather than making it pull from a model.
While that works fine for a small bug tracker, it would not work well in
most enterprise applications - leading to performance and potentially memory
issues.

It's not that it's bad software - but I've taught enough training classes to
see that one of the most common pitfalls to those new to Wicket is to always
push data into the models.  This works fine in some instances, but is not a
best practice and can lead to a lot of problems later if you don't know what
you're doing.  That's why I said what I did.

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 7:29 PM, Dave B d...@davebolton.net wrote:

 Any particular reason?  Form a (very) cursory ten minute look, the
 lack of tests was glaring, though not an indictment of the actual
 Wicket usage.

 Thanks,
 Dave

 On Fri, Oct 16, 2009 at 11:04 AM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  Don't look at jtrac.
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 6:42 PM, Igor Vaynberg igor.vaynb...@gmail.com
 wrote:
 
  keeping that in mind,
 
  i wouldnt look at brix, most wicket-related code there has to do with
  plumbing and implementing a development model that is unlike wicket
  but works better for cmses.
 
  maybe look at http://www.jtrac.info/ , i think that uses wicket...
 
  -igor
 
  On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
  jer...@wickettraining.com wrote:
   Beware - just like any other app, OS or not, you will find OS projects
  out
   there that will teach you all kind of wrong ways to use Wicket.  I
 know
  of a
   couple because I tried to use them, thinking they would be easier to
  build
   on because they used Wicket.  But they were so poorly written that it
  would
   be a bad place for someone new to the framework to start.
  
   http://code.google.com/p/brix-cms/ was written by some of the core
   committers, so the Wicket code in it will be good.  Not sure how much
 of
  the
   code is actually Wicket specific, though.
  
   --
   Jeremy Thomerson
   http://www.wickettraining.com
  
  
  
   On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:
  
   Hi,
  
   I'm in the process of evaluating Wicket (after an arduous JSF
 project,
   that has made us re-evaluate our web platform.)
  
   I've read Wicket in Action and whole bunch of blog and mailing list
   posts, done some proof-of-concept work and am now interested in
   reading source code from a project using Wicket, since I want to see
   Wicket in the wild. I know Artifactory uses Wicket, but their
   Subversion access instructions seem to be out of date.
  
   Does anyone know of an open source project using Wicket, so that I
 can
   peruse the source code?
  
   Many thanks,
   Dave
  
   -
   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
 
 
 

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




Re: Open Source projects using Wicket

2009-10-15 Thread Peter Thomas
On Fri, Oct 16, 2009 at 7:52 AM, Jeremy Thomerson jer...@wickettraining.com
 wrote:

 Sorry, that was an overly terse statement.  Peter Thomas has put a lot of
 work into JTrac, and has done a lot of things that I admire (for instance,
 some of his performance testing blog entries, etc).  He is also very
 helpful
 on the mailing list.

 The reason I said not to look at it is that when I was using it, I found
 that nearly all of the components were created without the use of models -
 pushing data into the component rather than making it pull from a model.
 While that works fine for a small bug tracker, it would not work well in
 most enterprise applications - leading to performance and potentially
 memory
 issues.

 It's not that it's bad software - but I've taught enough training classes
 to
 see that one of the most common pitfalls to those new to Wicket is to
 always
 push data into the models.  This works fine in some instances, but is not a
 best practice and can lead to a lot of problems later if you don't know
 what
 you're doing.  That's why I said what I did.


Agreed.  JTrac was the first ever Wicket project I attempted, ported the UI
over from Spring MVC in a rather short time.  It's not as bad as Jeremy
makes it out to be though (psst: he's a perfectionist and runs a Wicket
training course :P) and I took care to use a detachable model for the
primary ListView.  JTrac also has a perf-test JMeter script checked-in and
users consistently praise the performance.

I guess this means that even Wicket apps created by newbies will end up
performing rather well.  Anyway, here's an open source Wicket application I
did recently, which I dare say demonstrates idiomatic usage of Wicket
models:

http://code.google.com/p/perfbench/


 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 7:29 PM, Dave B d...@davebolton.net wrote:

  Any particular reason?  Form a (very) cursory ten minute look, the
  lack of tests was glaring, though not an indictment of the actual
  Wicket usage.
 
  Thanks,
  Dave
 
  On Fri, Oct 16, 2009 at 11:04 AM, Jeremy Thomerson
  jer...@wickettraining.com wrote:
   Don't look at jtrac.
  
   --
   Jeremy Thomerson
   http://www.wickettraining.com
  
  
  
   On Thu, Oct 15, 2009 at 6:42 PM, Igor Vaynberg 
 igor.vaynb...@gmail.com
  wrote:
  
   keeping that in mind,
  
   i wouldnt look at brix, most wicket-related code there has to do with
   plumbing and implementing a development model that is unlike wicket
   but works better for cmses.
  
   maybe look at http://www.jtrac.info/ , i think that uses wicket...
  
   -igor
  
   On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
   jer...@wickettraining.com wrote:
Beware - just like any other app, OS or not, you will find OS
 projects
   out
there that will teach you all kind of wrong ways to use Wicket.  I
  know
   of a
couple because I tried to use them, thinking they would be easier to
   build
on because they used Wicket.  But they were so poorly written that
 it
   would
be a bad place for someone new to the framework to start.
   
http://code.google.com/p/brix-cms/ was written by some of the core
committers, so the Wicket code in it will be good.  Not sure how
 much
  of
   the
code is actually Wicket specific, though.
   
--
Jeremy Thomerson
http://www.wickettraining.com
   
   
   
On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net
 wrote:
   
Hi,
   
I'm in the process of evaluating Wicket (after an arduous JSF
  project,
that has made us re-evaluate our web platform.)
   
I've read Wicket in Action and whole bunch of blog and mailing list
posts, done some proof-of-concept work and am now interested in
reading source code from a project using Wicket, since I want to
 see
Wicket in the wild. I know Artifactory uses Wicket, but their
Subversion access instructions seem to be out of date.
   
Does anyone know of an open source project using Wicket, so that I
  can
peruse the source code?
   
Many thanks,
Dave
   
   
 -
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
  
  
  
 
  -
  To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
  For additional commands, e-mail: users-h...@wicket.apache.org
 
 



Re: Open Source projects using Wicket

2009-10-15 Thread Martin Makundi
Pushing definitely is more performance efficient - you know exactly
when and where you push it and it's easy (happy-day-scenario) to
optimize. Partly the ease of optimization results from difficulty of
making complex relations.

However, if you pull from models, you might end up with very complex
structures and if you do not have elegant caching mechanisms, the
resulting object tree might take long to traverse in a pull-manner.

Nevertheless, pull is cooler and keeps your code cleaner, so you can
worry about performance later.

**
Martin

2009/10/16 Jeremy Thomerson jer...@wickettraining.com:
 Sorry, that was an overly terse statement.  Peter Thomas has put a lot of
 work into JTrac, and has done a lot of things that I admire (for instance,
 some of his performance testing blog entries, etc).  He is also very helpful
 on the mailing list.

 The reason I said not to look at it is that when I was using it, I found
 that nearly all of the components were created without the use of models -
 pushing data into the component rather than making it pull from a model.
 While that works fine for a small bug tracker, it would not work well in
 most enterprise applications - leading to performance and potentially memory
 issues.

 It's not that it's bad software - but I've taught enough training classes to
 see that one of the most common pitfalls to those new to Wicket is to always
 push data into the models.  This works fine in some instances, but is not a
 best practice and can lead to a lot of problems later if you don't know what
 you're doing.  That's why I said what I did.

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 7:29 PM, Dave B d...@davebolton.net wrote:

 Any particular reason?  Form a (very) cursory ten minute look, the
 lack of tests was glaring, though not an indictment of the actual
 Wicket usage.

 Thanks,
 Dave

 On Fri, Oct 16, 2009 at 11:04 AM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  Don't look at jtrac.
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 6:42 PM, Igor Vaynberg igor.vaynb...@gmail.com
 wrote:
 
  keeping that in mind,
 
  i wouldnt look at brix, most wicket-related code there has to do with
  plumbing and implementing a development model that is unlike wicket
  but works better for cmses.
 
  maybe look at http://www.jtrac.info/ , i think that uses wicket...
 
  -igor
 
  On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
  jer...@wickettraining.com wrote:
   Beware - just like any other app, OS or not, you will find OS projects
  out
   there that will teach you all kind of wrong ways to use Wicket.  I
 know
  of a
   couple because I tried to use them, thinking they would be easier to
  build
   on because they used Wicket.  But they were so poorly written that it
  would
   be a bad place for someone new to the framework to start.
  
   http://code.google.com/p/brix-cms/ was written by some of the core
   committers, so the Wicket code in it will be good.  Not sure how much
 of
  the
   code is actually Wicket specific, though.
  
   --
   Jeremy Thomerson
   http://www.wickettraining.com
  
  
  
   On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net wrote:
  
   Hi,
  
   I'm in the process of evaluating Wicket (after an arduous JSF
 project,
   that has made us re-evaluate our web platform.)
  
   I've read Wicket in Action and whole bunch of blog and mailing list
   posts, done some proof-of-concept work and am now interested in
   reading source code from a project using Wicket, since I want to see
   Wicket in the wild. I know Artifactory uses Wicket, but their
   Subversion access instructions seem to be out of date.
  
   Does anyone know of an open source project using Wicket, so that I
 can
   peruse the source code?
  
   Many thanks,
   Dave
  
   -
   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
 
 
 

 -
 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



Wicket pages development orgnization

2009-10-15 Thread Ding Zenberg
Hi all,

   We'll plan to use wicket in our application for one enterprise's
information management system.

   the app's portal layout is someting like this:

   -
   | Header   |
   -
   |   | |
   |   | |
   |Nav |   Client|
   |   | |
   |   | |
   |   | |
   |   | |
   |   | |
   |   | |
   |   | |
   --
   |  footer |
   --

When we use Wicket's layout way -- Orgnized everything into one page
using child, we found that it's reload everything ( header nav etc.)
everytime when click links in client area.

Is there a nice way organize those pages in a ajax partial refresh way?

For example ,

Nav and client are all represent by a separated *independent* page,
When click nav area, only refresh client area, (*Note* client area is
represent by a client Page, not a panel).

Thanks.

Zenberg Ding

-- 
Keep It Simple  Stupid.

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



Re: Wicket pages development orgnization

2009-10-15 Thread Martin Makundi
http://blog.ehour.nl/index.php/archives/18

2009/10/16 Ding Zenberg zenberg.d...@gmail.com:
 Hi all,

   We'll plan to use wicket in our application for one enterprise's
 information management system.

   the app's portal layout is someting like this:

   -
   |                 Header                               |
   -
   |               |                                             |
   |               |                                             |
   |    Nav     |       Client                            |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   --
   |      footer                                             |
   --

 When we use Wicket's layout way -- Orgnized everything into one page
 using child, we found that it's reload everything ( header nav etc.)
 everytime when click links in client area.

 Is there a nice way organize those pages in a ajax partial refresh way?

 For example ,

 Nav and client are all represent by a separated *independent* page,
 When click nav area, only refresh client area, (*Note* client area is
 represent by a client Page, not a panel).

 Thanks.

 Zenberg Ding

 --
 Keep It Simple  Stupid.

 -
 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



Re: Wicket pages development orgnization

2009-10-15 Thread Igor Vaynberg
put nav and client into iframes.

-igor

On Thu, Oct 15, 2009 at 8:27 PM, Ding Zenberg zenberg.d...@gmail.com wrote:
 Hi all,

   We'll plan to use wicket in our application for one enterprise's
 information management system.

   the app's portal layout is someting like this:

   -
   |                 Header                               |
   -
   |               |                                             |
   |               |                                             |
   |    Nav     |       Client                            |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   |               |                                             |
   --
   |      footer                                             |
   --

 When we use Wicket's layout way -- Orgnized everything into one page
 using child, we found that it's reload everything ( header nav etc.)
 everytime when click links in client area.

 Is there a nice way organize those pages in a ajax partial refresh way?

 For example ,

 Nav and client are all represent by a separated *independent* page,
 When click nav area, only refresh client area, (*Note* client area is
 represent by a client Page, not a panel).

 Thanks.

 Zenberg Ding

 --
 Keep It Simple  Stupid.

 -
 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



Re: Wicket pages development orgnization

2009-10-15 Thread Martin Makundi
And http://www.xaloon.org/tabs
* http://www.xaloon.org/blog/advanced-wicket-tabs-with-jquery

**
Martin

2009/10/16 Martin Makundi martin.maku...@koodaripalvelut.com:
 http://blog.ehour.nl/index.php/archives/18

 2009/10/16 Ding Zenberg zenberg.d...@gmail.com:
 Hi all,

 Is there a nice way organize those pages in a ajax partial refresh way?


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



Re: Open Source projects using Wicket

2009-10-15 Thread Jeremy Thomerson
Thanks Peter for being a good sport and not beating me up for what I said in
a public forum!

And it is certainly a great first project!  I used it to track issues for
multiple clients until I recently changed everything that I have over to
trac (regular trac, not jtrac :) just so that I have some consistency in my
life :)

Best regards, (and are you coming to the London Wicket Event in November?  I
heard that you might.)

--
Jeremy Thomerson
http://www.wickettraining.com



On Thu, Oct 15, 2009 at 10:14 PM, Peter Thomas ptrtho...@gmail.com wrote:

 On Fri, Oct 16, 2009 at 7:52 AM, Jeremy Thomerson 
 jer...@wickettraining.com
  wrote:

  Sorry, that was an overly terse statement.  Peter Thomas has put a lot of
  work into JTrac, and has done a lot of things that I admire (for
 instance,
  some of his performance testing blog entries, etc).  He is also very
  helpful
  on the mailing list.
 
  The reason I said not to look at it is that when I was using it, I found
  that nearly all of the components were created without the use of models
 -
  pushing data into the component rather than making it pull from a
 model.
  While that works fine for a small bug tracker, it would not work well in
  most enterprise applications - leading to performance and potentially
  memory
  issues.
 
  It's not that it's bad software - but I've taught enough training classes
  to
  see that one of the most common pitfalls to those new to Wicket is to
  always
  push data into the models.  This works fine in some instances, but is not
 a
  best practice and can lead to a lot of problems later if you don't know
  what
  you're doing.  That's why I said what I did.
 
 
 Agreed.  JTrac was the first ever Wicket project I attempted, ported the UI
 over from Spring MVC in a rather short time.  It's not as bad as Jeremy
 makes it out to be though (psst: he's a perfectionist and runs a Wicket
 training course :P) and I took care to use a detachable model for the
 primary ListView.  JTrac also has a perf-test JMeter script checked-in and
 users consistently praise the performance.

 I guess this means that even Wicket apps created by newbies will end up
 performing rather well.  Anyway, here's an open source Wicket application I
 did recently, which I dare say demonstrates idiomatic usage of Wicket
 models:

 http://code.google.com/p/perfbench/


  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 7:29 PM, Dave B d...@davebolton.net wrote:
 
   Any particular reason?  Form a (very) cursory ten minute look, the
   lack of tests was glaring, though not an indictment of the actual
   Wicket usage.
  
   Thanks,
   Dave
  
   On Fri, Oct 16, 2009 at 11:04 AM, Jeremy Thomerson
   jer...@wickettraining.com wrote:
Don't look at jtrac.
   
--
Jeremy Thomerson
http://www.wickettraining.com
   
   
   
On Thu, Oct 15, 2009 at 6:42 PM, Igor Vaynberg 
  igor.vaynb...@gmail.com
   wrote:
   
keeping that in mind,
   
i wouldnt look at brix, most wicket-related code there has to do
 with
plumbing and implementing a development model that is unlike wicket
but works better for cmses.
   
maybe look at http://www.jtrac.info/ , i think that uses wicket...
   
-igor
   
On Thu, Oct 15, 2009 at 4:40 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 Beware - just like any other app, OS or not, you will find OS
  projects
out
 there that will teach you all kind of wrong ways to use Wicket.  I
   know
of a
 couple because I tried to use them, thinking they would be easier
 to
build
 on because they used Wicket.  But they were so poorly written that
  it
would
 be a bad place for someone new to the framework to start.

 http://code.google.com/p/brix-cms/ was written by some of the
 core
 committers, so the Wicket code in it will be good.  Not sure how
  much
   of
the
 code is actually Wicket specific, though.

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 6:35 PM, Dave B d...@davebolton.net
  wrote:

 Hi,

 I'm in the process of evaluating Wicket (after an arduous JSF
   project,
 that has made us re-evaluate our web platform.)

 I've read Wicket in Action and whole bunch of blog and mailing
 list
 posts, done some proof-of-concept work and am now interested in
 reading source code from a project using Wicket, since I want to
  see
 Wicket in the wild. I know Artifactory uses Wicket, but their
 Subversion access instructions seem to be out of date.

 Does anyone know of an open source project using Wicket, so that
 I
   can
 peruse the source code?

 Many thanks,
 Dave


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

Re: Open Source projects using Wicket

2009-10-15 Thread Eelco Hillenius
 Pushing definitely is more performance efficient - you know exactly
 when and where you push it and it's easy (happy-day-scenario) to
 optimize. Partly the ease of optimization results from difficulty of
 making complex relations.

I would expect push to put more load on your servers due to
serializing to second level cache, and getting a page back from that
cache might also be more expensive. Of course, it depends where you
pull from. And then when you're within one request, you probably have
that data you'd push already in memory (e.g. Hibernate's session cache
if you use that), so it might not be more expensive in that sense
either. I do agree that pull models can lead to more complex
structures, but that also depends on what kind of models you use (e.g.
reflection based models actually can save code, but obviously using
lots of anonymous classes won't). :-)

Eelco

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



Re: Question about new Type Safety changes in Wicket 1.4

2009-10-15 Thread Andrig T. Miller
Okay, thanks.  That's helpful.

I should be able to translate to 1.4 from what's in the book much more
easily now.

I really appreciate the help.

Andy

On Thu, Oct 15, 2009 at 4:36 PM, Jeremy Thomerson
jer...@wickettraining.com wrote:
 getDefaultModel still requires a cast - that was the direct migration.
 getModel was then added back in to genericized components.  So, where you
 want to use generics, you must use the getModel variation.

 --
 Jeremy Thomerson
 http://www.wickettraining.com



 On Thu, Oct 15, 2009 at 5:30 PM, Andrig T. Miller andrig.t.mil...@gmail.com
 wrote:

 Ah, thanks, that did the trick.

 The migration guide says to use getDefaultModel instead of getModel,
 but I guess that's not true all the time.

 Andy

 On Thu, Oct 15, 2009 at 4:26 PM, Jeremy Thomerson
 jer...@wickettraining.com wrote:
  Ah, yes - sorry I missed it.  There are a couple of errors.
 
  1 - change your Cheese cheese = (Cheese) line (see below)
  2 - change getDefaultModel to getModel - the generic version of the
 method
 
     public Index() {
 
         add(new ListViewCheese(cheeses, getCheeses()) {
 
             private static final long serialVersionUID =
  -6160450216067455300L;
 
            �...@override
             protected void populateItem(ListItemCheese item) {
 
                 Cheese cheese = item.getModelObject();
 
                 item.add(new Label(name, cheese.getName()));
                 item.add(new Label(description,
 cheese.getDescription()));
                 item.add(new Label(price, $ + cheese.getName()));
                 item.add(new LinkCheese(add, item.getModel()) {
 
                     private static final long serialVersionUID =
  3724016761964076585L;
 
                    �...@override
                     public void onClick() {
                         Cheese selected = getModelObject();
                         getCart().getCheeses().add(selected);
                     }
                 });
             }
         });
 
     }
 
 
  --
  Jeremy Thomerson
  http://www.wickettraining.com
 
 
 
  On Thu, Oct 15, 2009 at 5:17 PM, Andrig T. Miller 
 andrig.t.mil...@gmail.com
  wrote:
 
 
         public Index() {
 
                 add(new ListViewCheese(cheeses, getCheeses()) {
 
                         private static final long serialVersionUID =
  -6160450216067455300L;
 
                        �...@override
                         protected void populateItem(ListItemCheese
 item) {
 
                                 Cheese cheese = (Cheese)
  getDefaultModelObject();
 
                                 item.add(new Label(name,
  cheese.getName()));
                                 item.add(new Label(description,
  cheese.getDescription()));
                                 item.add(new Label(price, $ +
  cheese.getPrice()));
                                 item.add(new LinkCheese(add,
  item.getDefaultModel()) {
 
                                         private static final long
  serialVersionUID = 3724016761964076585L;
 
                                        �...@override
                                         public void onClick() {
 
                                                 Cheese selected =
 (Cheese)
  getDefaultModelObject();
 
   getCart().getCheeses().add(selected);
 
                                         }
                                 });
                         }
                 });
 
         }