RE: ListView not updating when changed

2008-03-25 Thread Maeder Thomas
If memory serves, the ListView will not repopulate already existing items. I 
see two options: 

1) setReuseItems(false)
2) instead of creating the label with a fixed String (I assume that 
kmd.getName() returns a String) pass an IModel to the label like so:

New Label(kmname, new AbstractReadOnlyModel() {
public Object getObject() {
KeyMemberData kmd = (KeyMemberData)item.getModelObject();
return kmd.getName();
}
});

Hth

Thomas



 -Original Message-
 From: taygolf [mailto:[EMAIL PROTECTED] 
 Sent: Dienstag, 25. März 2008 15:03
 To: users@wicket.apache.org
 Subject: ListView not updating when changed
 
 
 ok here is what I have. i have a listview that I want to 
 update on the fly.
 The user clicks a link and that link opens a popup. in that 
 popup the user will put in the information required and hit 
 submit. once the information is submitted I am saving it in a 
 session list of models. So the model that was created on the 
 popup page is added to the list. 
 
 THe listview is created using the session list as a 
 loadabledetachablemodel.
 Everytime a new entry is entered everything works fine but if 
 I want to go back and edit a previous entry then the listview 
 never shows that update.
 
 So how can I get the listview to see the update. I am 
 thinking that the loadabledetachable model is not getting the 
 latest and greatest session list. I think it may only be 
 looking for additions and not getting all of them. HOw do I fix that.
 
 Here is my code
 
 IModel kmList =  new LoadableDetachableModel()
   {
   protected Object load() {
   return MySession.get().getKeymemberList();
   }
   };
 
 ListView lv = new ListView(rows, kmList)
 {
   public void populateItem(final ListItem item)
   {
   KeyMemberData kmd = 
 (KeyMemberData)item.getModelObject();
   item.add(new Label(kmname, kmd.getName()));
   item.add(new Label(kmsec, kmd.getSecurity()));
   item.add(new Label(kmroles, kmd.getRoles()));
   }
 };
 lv.setReuseItems(true);
 lv.setOutputMarkupId(true);
 WebMarkupContainer listContainer = new 
 WebMarkupContainer(theContainer);
 listContainer.setOutputMarkupId(true);
   listContainer.add(new
 AjaxSelfUpdatingTimerBehavior(Duration.seconds(5)));
   
   listContainer.add(lv);
   add(listContainer);
 --
 View this message in context: 
 http://www.nabble.com/ListView-not-updating-when-changed-tp162
 74984p16274984.html
 Sent from the Wicket - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: ListView#isVisible dilemma

2008-03-07 Thread Maeder Thomas
Hi Igor,

 
 it is called that way for security reasons, eg so you cannot 
 click a link that is not visible just because you know its url...

Yes, but shouldn't the visibility be reevaluated anyway after the link
is clicked? The clicking of the link, button, etc. usually changes the
state of component, no?

 
 what he should do is follow the delete call with a 
 listview.detach() call
 

Probably just being thick here, but how does calling listview.detach()
hide the listview?

Thomas

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: ListView#isVisible dilemma

2008-03-07 Thread Maeder Thomas
But wasn't hiding the listview the original point of the question? 

Thomas
 -Original Message-
 From: Edvin Syse [mailto:[EMAIL PROTECTED] 
 Sent: Freitag, 7. März 2008 10:15
 To: users@wicket.apache.org
 Subject: Re: ListView#isVisible dilemma
 
 Maeder Thomas skrev:
  what he should do is follow the delete call with a
  listview.detach() call
 
  
  Probably just being thick here, but how does calling 
 listview.detach() 
  hide the listview?
 
 The point is not to hide the listview, but to refresh the 
 content. I think Igor meant model.detach(), not 
 listview.detach() though.
 
 -- Edvin
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: ListView#isVisible dilemma

2008-03-07 Thread Maeder Thomas
I i know you started the thread, but...from the initial post: 

 He overrides isVisible on the ListView, and does:

 @Override public boolean isVisible() {
   return ((List)myModel.getObject()).size()  0;
}

.. so THE LIST WONT BE VISIBLE if the list is empty.


etc...

The CAPITALS are mine.

what gives?

Thomas


 -Original Message-
 From: Edvin Syse [mailto:[EMAIL PROTECTED] 
 Sent: Freitag, 7. März 2008 13:26
 To: users@wicket.apache.org
 Subject: Re: ListView#isVisible dilemma
 
  But wasn't hiding the listview the original point of the question? 
 
 No, hiding was not the issue. The issue was that because the 
 model was consulted in the isVisible() method of the 
 ListView, the deletion wouldn't be visible before the page 
 was rerendered using the page-constructor (hence, the need to 
 do setResponsePage()).
 
 -- Edvin
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: ListView#isVisible dilemma

2008-03-07 Thread Maeder Thomas
Thanks, now I get it.

   Probably just being thick here, but how does calling 
  listview.detach()  hide the listview?
 
 it doesnt hide the listview, but it detaches the model. the 
 problem was:
 suppose you have one item in the list
 1) check listview visibility - loads the detachable model 
 with queryresult of 1
 2) if visible execute click listener
 3) click listener removes item from database
 4) check listview visible during rendering - checks model size - sees
 1 - visible - problem
 
 with the change it is:
 1) check listview visibility - loads the detachable model 
 with queryresult of 1
 2) if visible execute click listener
 3) click listener removes item from database
 4) click listener detaches listview - which in turn detaches its model
 5) check listview visible during rendering - loads model (now 
 resultset of size 0) checks model size - sees 0 - invisible
 
 -igor
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: getPageParameters() NullPointer

2008-03-05 Thread Maeder Thomas
Stephan, what you want is not PageParameters.getKey(id), but 
PageParameters.getInt(id);

@zhangjunfeng:

 PageParameters params = new PageParameters(); 
 System.out.print(pid= + params.getKey(pid));--the output is null

yes, the output is null, you just created a new, empty page parameters object. 
use Page.getPageParameters()

Thomas



 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
 Sent: Mittwoch, 5. März 2008 10:31
 To: users@wicket.apache.org
 Subject: Re:getPageParameters() NullPointer
 
  hello,i got the same problem.
  
PageParameters params = new PageParameters();
params.put(pid, pid);
this.setResponsePage(FirstLogin.class,
  new PageParameters(params));
  
 in FirstLogin.java ---
 PageParameters params = new PageParameters(); 
 System.out.print(pid= + params.getKey(pid));--the 
 output is null;how to get the parameter?
 
 
 在2008-01-22,Stephan Koch [EMAIL PROTECTED] 写道:
 
 Hi all,
 
 I'm experiencing a problem using getPageParameters().
 
 The parameter id is passed to MyPage:
 setResponsePage(MyPage.class, new PageParameters(id=+evalId));
 
 In the constructor of MyPage I try to access the parameter id:
 Integer evalId = Integer.parseInt(getPageParameters().getKey(id));
 
 This fails with a NullPointerException. I thought the usage 
 of PageParameters was pretty straightforward- did I miss 
 something here?
 
 I'm using Wicket 1.3.
 
 Regards,
 Stephan
 
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 


RE: RE: getPageParameters() NullPointer

2008-03-05 Thread Maeder Thomas
Yes there is, it's in Page.java at line 319 

 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
 Sent: Donnerstag, 6. März 2008 03:11
 To: users@wicket.apache.org
 Subject: Re:RE: getPageParameters() NullPointer
 
  thanks,but there is no method of Page.getPageParameters(), 
 how to use it ? may you show me in detial ?
 
  
  
  
 
 
 
 Stephan, what you want is not PageParameters.getKey(id), 
 but PageParameters.getInt(id);
 
 
  PageParameters params = new PageParameters(); 
 System.out.print(pid= 
  + params.getKey(pid));--the output is null
 
 yes, the output is null, you just created a new, empty page 
 parameters object. use Page.getPageParameters()
 
 Thomas
 
 
 
  Sent: Mittwoch, 5. März 2008 10:31
  To: users@wicket.apache.org
  Subject: Re:getPageParameters() NullPointer
  
   hello,i got the same problem.
   
 PageParameters params = new PageParameters();
 params.put(pid, pid);
 this.setResponsePage(FirstLogin.class,
   new PageParameters(params));
   
  in FirstLogin.java ---
  PageParameters params = new PageParameters(); 
 System.out.print(pid= 
  + params.getKey(pid));--the output is null;how to get the 
  parameter?
  
  
  
  Hi all,
  
  I'm experiencing a problem using getPageParameters().
  
  The parameter id is passed to MyPage:
  setResponsePage(MyPage.class, new PageParameters(id=+evalId));
  
  In the constructor of MyPage I try to access the parameter id:
  Integer evalId = Integer.parseInt(getPageParameters().getKey(id));
  
  This fails with a NullPointerException. I thought the usage of 
  PageParameters was pretty straightforward- did I miss 
 something here?
  
  I'm using Wicket 1.3.
  
  Regards,
  Stephan
  
  
  
  
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
  
  
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: div close tag error

2008-02-29 Thread Maeder Thomas
And your ids are mismatched: someModal != openModal 

 -Original Message-
 From: Thijs [mailto:[EMAIL PROTECTED] 
 Sent: Donnerstag, 28. Februar 2008 21:56
 To: users@wicket.apache.org
 Subject: Re: div close tag error
 
 Wicket:id=someModal is missing a 
 
 Michael Mehrle wrote:
  I have div like this:
 
  div wicket:id=somePanel
  a wicket:id=someModal
  wicket:message key=label.link /
  /a
  /div
 
  My code is:
 
  SomePanel somePanel - new SomePanel(somePanel, someModel); ..
  somePanel.add(new AjaxLink(openModal) {
  ..
  }
 
  I keep getting an error message: WicketMessage: close tag not found 
  for
  tag: div wicket:id=somePanel
 
  Anyone any idea what I am doing wrong?
 
  Thanks!
 
  Michael
 
 
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 

 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Wicket database access

2008-02-22 Thread Maeder Thomas
If you're looking for automatic mapping from the database to the web,
you might be better off with something like Ruby on Rails. What I
believe you're asking for is simply outside the scope of Wicket. That
said, there is no magic in Wicket. You access a database as you would in
any other Java application (i.e. do JDBC or use a ORM or whatever
tickles your fancy).

BTW, I am very pleased that Wicket does not adress accessing the
database. We (the product I'm developing) happen to get our data from a
bunch of services located somewhere outside the Webserver, so any
database access architecture inside Wicket (a la Seam) would be a
useless complication for us.

Thomas

 -Original Message-
 From: wjser [mailto:[EMAIL PROTECTED] 
 Sent: Freitag, 22. Februar 2008 10:49
 To: users@wicket.apache.org
 Subject: Re: Wicket database access
 
 
 i do know how to handle JDBC. The problem is that i don't 
 know how to use JDBC inside Wicket. 
 I think that i have to implement IDataProvider wich would 
 fetch the data from the database, but i don't know how to do 
 this. I also don't know how to insert data into the database 
 which come from a form.
 
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: OutOfMemoryError

2008-02-21 Thread Maeder Thomas
Thomas, 

the memory footprint per class usually doesn't really allow to pinpoint
the reference that causes a memory leak (usually the top entries are
char[], String, etc.). For that, you need to trace back to the reference
that should not be there. We use YourKit to great benefit (do I get
goodies now, comrades?). Yourkit can show the retained size of an
object. If one of your Objects shows up near the top of the list, that
is a good candidate.

alternatively, the hprof dump would be more helpful than HTML.

(some other) Thomas


snip
...
 
 As already written a couple of weeks ago, we regularly get 
 OutOfMemoryErrors with our Wicket-based website. I've finally 
 got a heapdump.hprof and no entry above 3kByte size is from 
 our code. If someone from the Wicket team is interested, I 
 can send the html-instance information sorted by size or 
 instance count.
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Applet problem

2008-02-08 Thread Maeder Thomas
snip
...
 
 How should i set the codebase in this situation? I guess code 
 is still com.someapplication.somepackage.AppletClass
 
 I still get com.someapplication.somepackage.AppletClass not 
 found exception.
 
 Any ideas how the applet tag should be written?
 

The reason you can't figure out how to write the codebase is that you're
not supposed to do it that way. The codebase must point to a location
that is accessible to a client of the web server (i.e. the browser).
Web-inf is not accessible for good reasons. Build a jar, put it with
your other web resources!

Thomas

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: CompoundModel based on proxies

2008-02-07 Thread Maeder Thomas
+ 1 for what Igor says. I remember debugging Hibernate code: you debug
as far as your own code goes, and then you just guess. Oh, and yes:
Tapestry anyone?

Thomas 

 -Original Message-
 From: Igor Vaynberg [mailto:[EMAIL PROTECTED] 
 Sent: Donnerstag, 7. Februar 2008 02:34
 To: users@wicket.apache.org
 Subject: Re: CompoundModel based on proxies
 
 i disagree. i dont think we should be doing more with cglib 
 in core or any other bytecode magic. have you ever tried to 
 walk code that uses bytecode generation? its a nightmare. one 
 of my favorite things about wicket is that it is just java 
 and its easy as hell to debug. im not really against putting 
 something like this into extensions, or even having a new 
 wicket-bytecode/codegen/whatever package that contains things 
 like these...
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: IPropertyResolver interface for property models

2008-02-06 Thread Maeder Thomas
g.. getting late, the setter should be:

public abstract void setObject(Object obj) {
if (!isEquals(obj, getObject()) {
editedValues.put(obj);
}
} 

Thomas

 -Original Message-
 From: Maeder Thomas [mailto:[EMAIL PROTECTED] 
 Sent: Mittwoch, 6. Februar 2008 17:20
 To: users@wicket.apache.org
 Subject: RE: IPropertyResolver interface for property models
 
 If I understand this correctly, you're trying to keep an 
 overlay while editing an object. Why not do this:
 
 class OverlayModel extends Model {
   OverlayModel(Map editedValues, IModel underlyingModel, String
 propertyName) {
   ...remember the parameters in instance variables
   }
 
   public Object getObject() {
   if (editedValues.containsKey(propertyName)) {
   return editedValues.get(propertyName);
   } else {
   return underlyingModel.getObject();
   }
   }
 
   public abstract void setObject(Object obj) {
   if (isEquals(obj, getObject()) {
   editValues.put(obj);
   }
   }
 }
 
 As underlying models, you would use PropertyModel instances. 
 When you want to revert the values, you just clear the Map.
 
 Thomas
 
  -Original Message-
  From: Daniel Stoch [mailto:[EMAIL PROTECTED]
  Sent: Mittwoch, 6. Februar 2008 16:31
  To: users@wicket.apache.org
  Subject: Re: IPropertyResolver interface for property models
  
  On Feb 6, 2008 3:45 PM, Johan Compagner 
 [EMAIL PROTECTED] wrote:
   If we has such an interface then we need to rewrite most things 
   because now its just a static method and then we need to
  have instances.
  
  I know that. It is not a simple change.
  
   i guess you want then to have AbstractPropertyModel to have a 
   getPropertyResolver method that you can override and give 
 something 
   else back?
  
  Yes exactly.
  
  
   But i still dont get what you really have What is your 
 model object 
   eventually where a property model works on?
  
  
  I try to better explain this. When editing object I don't want to 
  store changes directly to this object (eg. until form submit), but 
  these edited values are cached in special ObjectEditor:
  
  public interface ObjectEditor extends IClusterable {
Object getEditedObject();
Object getPropertyValue(String propertyExpression);
void setPropertyValue(String propertyExpression, Object value);
void commitChanges();
void cancelChanges();
  }
  
  Sample use:
  Form form = new Form(formId, new
  EditorCompoundPropertyModel(new ObjectEditorImpl(baseObjectModel)));
  where: baseObjectModel is a model (or can be directly any 
 Serializable
  object) with object to edit.
  Inside EditorCompoundPropertyModel EditorPropertyModel is created 
  (instead of PropertyModel) which plays with ObjectEditor.
  
  When you change value in form component (eg. DropDownChoice with
  wantOnSelectionChangedNotifications=true) then a new value 
 is stored 
  in ObjectEditor (by calling setPropertyValue()) and base 
 edited object 
  stays unchanged. Form components to get value for display use 
  EditorPropertyModel and this model
  getObject() method calls
  ObjectEditor.getPropertyValue() which checks if current 
 property value 
  has been changed: if yes then this value comes from ObjectEditor 
  cache, otherwise it comes directly from edited object. My own 
  implementation of IPropertyResolver would call ObjectEditor 
  getPropertyValue/setPropertyValue methods.
  
  Such ObjectEditor allows me to track changes in my object, original 
  object stays unchanged until I commit changes. When user press 
  Cancel button I can revert all changes by 
  ObjectEditor.cancelChanges(), I can edit non-serializable 
 objects, ...
  
  My proposition with IPropertyResolver is for discussion only. 
  It is not a thing we must have :).
  By now, I have already implemented my own 
 EditorPropertyResolver and 
  EditorCompoundPropertyResolver which play with such ObjectEditor.
  
  Daniel
  
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
  
  
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Wrapping a POJO

2008-01-31 Thread Maeder Thomas
Why insist on a CompoundPropertyModel? My first instinct would be to
create a custom model for the checkboxes (which sets/unsets a single
bit).

Thomas 

 -Original Message-
 From: Markus Strickler [mailto:[EMAIL PROTECTED] 
 Sent: Donnerstag, 31. Januar 2008 13:00
 To: users@wicket.apache.org
 Subject: Re: Wrapping a POJO
 
 Hi-
 
 thanks for the quick reply. My description probably wasn't 
 clear enough.
 My problem is that I have several checkboxes in the interface 
 that all map to a single Integer in the POJO. So there is not 
 accessor that accepts a boolean, which is why I need some way 
 to translate between the POJO and the model that backs the form.
 The wiki actually has an example that is somewhat similar
 (http://cwiki.apache.org/WICKET/listview-with-checkboxes.html
 ) but only wraps a String.
 But coming to think of it, I can probably just access the 
 POJO fields through the wrapper like this: wrapper.pojo.field.
 
 OK, I'll probably try this.
 
 Thanks again,
 -markus
 
 Zitat von Per Newgro [EMAIL PROTECTED]:
 
  Hi Markus,
 
  you simply have to provide the POJO to the CompoundPropertyModel.
  Provide simple PropertyModels related to the compound model 
 for the fields.
 
  You can imagine the whole concept as the path to the value.
 
  Pojo myPojo = new Pojo();
  IModel model = new CompoundPropertyModel(myPojo); IModel 
  aPropertyModel = new PropertyModel(model, 
 theNameOfAccessorInPojo); 
  Label myPojoProperty = new Label(aWicketId, new aPropertyModel);
 
  I use a label. Replace it by your component.
 
  Cheers
  Per
 
  PS: If you new to wicket - checkout the wiki and the examples. They 
  explain alot.
 
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 
 
 
 
 This message was sent using IMP, the Internet Messaging Program.
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: difference between ListView and DefaultDataTable

2008-01-15 Thread Maeder Thomas
If you look at the markup in DataTable.html, you see from 

tbody
tr wicket:id=rows
td wicket:id=cells
span wicket:id=cell[cell]/span
/td
/tr
/tbody

that the markup for cells is a span tag. A link cannot work with this markup, 
so you can either:

a) populate the cell with a panel containing the link (panel can use the span 
tag)
b) make your own data table subclass which has a link in every cell.

Since you probably want to not only show links, you'll have to go with a)

Thomas

 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
 Sent: Dienstag, 15. Januar 2008 07:56
 To: users@wicket.apache.org
 Subject: difference between ListView and DefaultDataTable
 
 Hello:
 
 When I use ListView with each row having an Edit link I use 
 new Link() { callback handler), which is very handy.
 How to do the same in DefaultDataTable?
 I tried to use
  new AbstractDataColumn {
     populateItem{
         item.add(new Link(..) { callback}
 
 but it would not work.  From what I read, a panel has to be 
 used, Can it be done?  
 
 Thanks
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Writing Ajax applications that gracefully degrade

2007-12-20 Thread Maeder Thomas
We are actually implementing such an application. We had to
(re-)implement a couple of components to support AJAX-Fallback. While
that's not trivial sometimes, it's definitely not very hard (we have
about 0.5 years of Wicket experience).

Thomas

 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
 Sent: Mittwoch, 19. Dezember 2007 22:25
 To: users@wicket.apache.org
 Subject: Re: Writing Ajax applications that gracefully degrade
 
 yes it is possible and not too hard. Don't know if we support 
 it thoroughly enough, but start with *ajaxfallback* components.
 
 -igor
 
 On 12/19/07, oliverw [EMAIL PROTECTED] wrote:
 
  Being totally new to Wicket I would like to know if it would be 
  technically feasible to write Ajax applications in Wicket that 
  gracefully fallback to ordinary links and full page loads 
 depended on 
  wether the client supports javascript or not. Would it be 
 possible to 
  implement this cleanly or would it turn the project into a mess?
 
 
  --
  View this message in context:
  
 http://www.nabble.com/Writing-Ajax-applications-that-gracefully-degrad
  e-tp14424670p14424670.html Sent from the Wicket - User mailing list 
  archive at Nabble.com.
 
 
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Matt Raible's ApacheCon presentation

2007-11-16 Thread Maeder Thomas
One BIG plus that I haven't seen mentioned is debuggability. A wicket
application is almost as easy to debug as a regular application. For one
thing the error messages are really great. 90% of the time the nail the
problem. But the biggest plus is that the whole control flow is just in
regular Java classes. No excursions into the templating engine, no
reflection magic, just good ole Java code you actually have half a
chance of debugging. 
Jonathan has mentioned that the API footprint is bigger than he would
like (you started to sound a bit like Steve Northover, there, by the
way; scary! ;-). But I find that wicket actually has a very small
footprint compared to other frameworks, because wicket is all there is.
No templating engine, no bytcode manipulation framework, no expression
language you have to know. I can understand wicket top to bottom. Sweet!

Thomas

 
 -Original Message-
 From: mraible [mailto:[EMAIL PROTECTED] 
 Sent: Donnerstag, 15. November 2007 20:57
 To: users@wicket.apache.org
 Subject: Re: Matt Raible's ApacheCon presentation
 
 
 I didn't say my cons were valid - but I do believe there 
 *are* cons to Wicket. What are they - in your opinion?
 
 matt
 
 
 igor.vaynberg wrote:
  
  * HTML templates live next to Java code
  this is easily changed - just a default
  
  * Need to have a good grasp of OO
  why is this a con? you are saying not knowing oo is a good 
 thing? you 
  can say this is a pro - learning wicket will make you a better 
  developer :)
  
  * The Wicket Way - everything done in Java
  as opposed to embedding logic in views which has been something 
  plaguing other frameworks for ages?
  
  -igor
  
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
  
  
  
 
 --
 View this message in context: 
 http://www.nabble.com/Matt-Raible%27s-ApacheCon-presentation-t
f4815955.html#a13780519
 Sent from the Wicket - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Just 1 hour to introduce Wicket (Friday)

2007-10-31 Thread Maeder Thomas
One thing I always think is totally awesome is this: you develop your
demo application, introduce some AJAX, etc. Just be sure to use stuff
that has non-AJAX fallbacks. Then, at the end you can just turn off
javascript and everything still just works. Dropped my jaw for sure;-)

Thomas

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: IAuthorizationStrategy and DropDownChoice

2007-10-17 Thread Maeder Thomas
I don't think that is what he's getting at, I guess the real questions
are:

1) why is option enablement not forwarded to the authorization strategy?
2) Is there a blessed way to no render options depending on
authorization.

Of course you can hack it, but you'll end up with your authorization
code sprinkled around your project instead of a single point.

Thomas 

 -Original Message-
 From: Maurice Marrink [mailto:[EMAIL PROTECTED] 
 Sent: Mittwoch, 17. Oktober 2007 09:07
 To: users@wicket.apache.org
 Subject: Re: IAuthorizationStrategy and DropDownChoice
 
 Did you notice this method in AbstractChoice?
 protected boolean isDisabled(final Object object, int index, 
 String selected)
 
 It is designed to do exactly what you want. In Wicket 1.3 
 only, in wicket 1.2 you need to override protected void 
 appendOptionHtml(AppendingStringBuffer buffer, Object choice, 
 int index, String selected) and do it yourself.
 
 Maurice
 
 On 10/16/07, Jonas [EMAIL PROTECTED] wrote:
  While implementing a custom IAuthorizationStrategy for our 
 web app, I 
  noticed that DropDownChoice (and any other AbstractChoice) doesn't 
  honor restrictions on Component.RENDER and Component.ENABLE.
 
  Is there a recommended way to make that work?
  Wouldn't it make sense that AbstractChoice did honor those 
  restrictions, as e.g. AbstractLink does?
  That would probably require an extension of the 
 IAuthorizationStrategy 
  interface, since the selectable options are just any kind 
 of objects, 
  not wicket components. Maybe a method like boolean 
  isActionAuthorized(Component component, Object item, Action 
 action); 
  would do the trick?
 
 
  Jonas
 
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: StringResourceModel toString() changed in Beta4 - why??? Must use getString() now.

2007-10-17 Thread Maeder Thomas
Fair enough, was I reading more importance into the second sentence
(useful for debugging...). I still would not rely on toString() for
anything but debugging purposes unless someone passes me an object of a
well known, final class

cheers

Thomas

 -Original Message-
 From: Jan Kriesten [mailto:[EMAIL PROTECTED] 
 Sent: Mittwoch, 17. Oktober 2007 12:40
 To: users@wicket.apache.org
 Subject: Re: StringResourceModel toString() changed in Beta4 
 - why??? Must use getString() now.
 
 
 Hi Thomas,
 
  Yes, but you were relying on an implementation detail which 
 was in no 
  way promised to remain stable. You should not have done 
 that and you 
  got properly burned.
 
 not really. The API of StringResourceModel.toString() says:
 
 Override of the default method to return the resource string 
 represented by this string resource model.
 
 So, I would say it's an unforeseeable API change!
 
 Regards, --- Jan.
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: new class reloading solution JavaRebel

2007-10-10 Thread Maeder Thomas
If you can get your hands on a IBM VM, you can do add/remove methods
already; not fields, though. 

Thomas

 -Original Message-
 From: Matthijs Wensveen [mailto:[EMAIL PROTECTED] 
 Sent: Mittwoch, 10. Oktober 2007 07:12
 To: users@wicket.apache.org
 Subject: Re: new class reloading solution JavaRebel
 
 Looks promising. A lot of people here complain about having 
 to restart jetty or tomcat every time they modify their 
 classes. Too bad it's commercial :(
 
 Eelco Hillenius wrote:
  Hi people,
 
  I haven't tried it myself yet, but Jevgeni Kabanov (from Aranea
  framework[1]) just released 'JavaRebel' which is a 
 transparent class 
  loading solution. It should work well with Wicket, since 
 Wicket is a 
  pure Java framework.
 
  Jevgeni is interested in user experiences and he'd like to write an 
  article about Wicket + JavaRebel if he gets a few confirmations of 
  people successfully using it.
 
  Read more about it here:
  
 http://www.zeroturnaround.com/blog/javarebel-brings-class-reloading-to
  -java/, and let us (this list or Jevgeni) know what your 
 experiences 
  are.
 
  Have fun!
 
  Eelco
 
  [1] 
  
 http://www.google.com/url?sa=tct=rescd=1url=http%3A%2F%2Fwww.aranea
  
 framework.org%2Fei=p5kLR_7lHZPEepmm4ZwFusg=AFQjCNGZ2m5UshrHFf0T40HjE
  F0nOCE8iAsig2=0oAqqHaBEuy2rC256-8t_Q
 
  
 -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 

 
 
 --
 Matthijs Wensveen
 Func. Internet Integration
 W http://www.func.nl
 T +31 20 423
 F +31 20 4223500 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Wicket Meetup Amsterdam: a proposal

2007-10-05 Thread Maeder Thomas
Just and idea

I used to work on Eclipse, and one cool thing (in my opinion) we did at
conferences were the so called plugin clinics. Basically, there would
be a couple of commiters on hand in some conference room for about 2
hours in the evening and you could bring your sick plugin and we would
help you with whatever trouble you had. It was fun for the committers
because you could see what people were doing with your stuff and it was
great for the plugin developers because you could get great advice for
your concrete problems straight from the horses mouth. 

Thomas

 -Original Message-
 From: Erik van Oosten [mailto:[EMAIL PROTECTED] 
 Sent: Freitag, 5. Oktober 2007 00:46
 To: users@wicket.apache.org
 Subject: Re: Wicket Meetup Amsterdam: a proposal
 
 Excellent! That is only 4 blocks from where I work :)
 
 Also, all those dates are fine by me.
 
 Just an opinion: I do not expect any presentations; just a 
 get together for a couple of hours is nice.
 
  Erik.
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Google Maps API

2007-10-02 Thread Maeder Thomas
How does HeaderContributor.forJavaScript(final String location) not fit
your needs?

Thomas


Snip...
 
 At the moment I am stuck on how to reference javascript from 
 an external HTTP url, as opposed to a local js file. 
 
 e.g. http://maps.google.com/maps?file=apiamp;v=2amp;key=ABC;
 
 If anyone has any tips, that would be greatly appreciated :)
 
 Thanks guys, 
 
 Take care,
 Leo!
 --
 View this message in context: 
 http://www.nabble.com/Google-Maps-API-tf4553339.html#a12993967
 Sent from the Wicket - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Google Maps API

2007-10-02 Thread Maeder Thomas
I quickly added the following line to one of my pages:

 
add(HeaderContributor.forJavaScript(http://maps.google.com/maps?file=ap
iamp;v=2amp;key=ABC)); 


It correctly renders in the page's header as

script type=text/javascript
src=http://maps.google.com/maps?file=apiamp;v=2amp;key=ABC;/script

I'm using 1.3 beta-3. Either you're using a different version, or I
don't think the header contribution is the problem. Can you do view
source when the page hangs?

Thomas

 -Original Message-
 From: Ballist1c [mailto:[EMAIL PROTECTED] 
 Sent: Dienstag, 2. Oktober 2007 10:00
 To: users@wicket.apache.org
 Subject: RE: Google Maps API
 
 
 I have tried that...
 
 add(HeaderContributor.forJavaScript(http://maps.google.com/ma
 ps?file=apiamp;v=2amp;key=ABC));
 
 However, when I have that line of code, accessing the page 
 with that HeaderContributor the system hangs, and the page 
 doesn't load, i dont even seem to get an error and the only 
 way i can get out of it is through a manual refresh to the baseURL.
 
 Any thoughts?
 
 
 Thomas Maeder wrote:
  
  How does HeaderContributor.forJavaScript(final String location) not 
  fit your needs?
  
  Thomas
  
  
  Snip...
  
  At the moment I am stuck on how to reference javascript from an 
  external HTTP url, as opposed to a local js file.
  
  e.g. http://maps.google.com/maps?file=apiamp;v=2amp;key=ABC;
  
  If anyone has any tips, that would be greatly appreciated :)
  
  Thanks guys,
  
  Take care,
  Leo!
  --

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Presented Wicket to my Company...

2007-09-28 Thread Maeder Thomas
If it helps: about half a year ago, we started to port a Swing
application to the web. We started with JSF, but after three months we
pulled the plug and switched to Wicket. We had converted everything to
Wicket in two months and about two thirds the code. Oh... and with two
instead of three developers. And did I mention that we added quite a bit
of AJAX bling in the process and EVERYTHING still works when you turn of
Javascript? And that there is none of the POST-only madness? 
I know JSF is supposedly the standard, but so is CORBA, and look where
that went;-)

Thomas

PS: a funny thing happend about 3 weeks into the Wicket port: one
Thursday I noticed that I had not been completely disgusted and ready to
quit (and become a goat farmer) a single time that week. Wicket does not
suck and sometimes it's downright cool.

 -Original Message-
 From: robert.mcguinness [mailto:[EMAIL PROTECTED] 
 Sent: Freitag, 28. September 2007 04:18
 To: users@wicket.apache.org
 Subject: Presented Wicket to my Company...
 
 
 ...to tell you the truth, it impressed the developers but I 
 didn't get that feeling from the top brass.  I am pretty sure 
 we will move towards Seam/JSF/Facelets (we have a 
 presentation on that tech next week given by another 
 developer) since it is standard.
 
 Has anyone here worked with the Seam tech?  All the examples 
 I have seen (including Facelets) is nothing but tag soup with 
 scriptlets in the page (albeit small).  The configuration for 
 a Seam project seems like a pain and was also told that the 
 JSF/Seam/Faclets jsp pages can be previewed in a browser 
 (something I thought was so clever about Wicket html 
 pages...and I was under the impression that Wicket was the 
 only tech that allowed true separation of concerns; allowing 
 the web designer to work independenly of the programmer with 
 no duplication of work between the two).  Maybe I'm blind to 
 Wicket and I'm overlooking Seam and the techs related to it?  
 
 I've worked with Freemarker and Struts before and Wicket 
 feels like natural web development.  I thought I covered 
 all the great concepts about
 Wicket: Ajax, Templating, Inheritance, Reusable Components, 
 OO Concepts...etc...
 
 Bah...just venting.  I'm going to have to win the votes of the 
 developers. 
 I'll keep everyone posted.  Thanks amigos!
 
 - rm3
 
 --
 View this message in context: 
 http://www.nabble.com/Presented-Wicket-to-my-Company...-tf4532
 130.html#a12933638
 Sent from the Wicket - User mailing list archive at Nabble.com.
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: WebSession shutdown

2007-09-20 Thread Maeder Thomas
Thanks Eelco, but...

The trouble is that the lifecycle of a Wicket WebSession object is not the same 
as the HTTPSession. When a session is temporary only, you never get a 
valueUnbound() callback. I'll have to move the resource manager initialization 
into the valueBound() method; inconvenient but not a problem per se.
My second objection is that this works, as you said, with the default 
implmentation of ISessionStore. I would introduce a dependency on the exact 
implementation of ISessionStore used, not any published API. That somehow fills 
me with sombre premonitions ;-)
I still think it would be nice if org.apache.wicket.Session had a proper 
lifecycle (à la WebApplication.onDestroy()). Should I file a feature request or 
start a conversation on the dev list?

Thomas

 -Original Message-
 From: Eelco Hillenius [mailto:[EMAIL PROTECTED] 
 Sent: Donnerstag, 20. September 2007 02:39
 To: users@wicket.apache.org
 Subject: Re: WebSession shutdown
 
  In our WebSession subclass we manage some resources which 
 need to be 
  cleaned up when the session goes away (because of timeout, etc). Is 
  there a recommended way to call a shutdown() method on 
 our session 
  class? I have seen WebApplication.sessionDestroyed(String), but I'm 
  not sure how to get the wicket session from there (since we don't 
  necessarily have an active request at that time). Of 
 course, I could 
  implement my own session store or something like that, but that 
  approach seems to be a bit hackish.
 
 As long as you are putting the Wicket Session object in your 
 HttpSession (like the default session stores do) I think you 
 should be able to just let your session class inplement 
 HttpSessionBindingListener and react on valueUnbound. Can you 
 try that and let the list know whether that worked for you?
 
 Eelco
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



WebSession shutdown

2007-09-19 Thread Maeder Thomas
Hi folks,

In our WebSession subclass we manage some resources which need to be
cleaned up when the session goes away (because of timeout, etc). Is
there a recommended way to call a shutdown() method on our session
class? I have seen WebApplication.sessionDestroyed(String), but I'm not
sure how to get the wicket session from there (since we don't
necessarily have an active request at that time). Of course, I could
implement my own session store or something like that, but that approach
seems to be a bit hackish.

Thomas

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]