Re: AjaxEditableLabel not saving after migration to 6.3

2013-01-11 Thread N. Metzger
I believe this is a bug in wicket 6.3, because I switched to wicket 6.4 and
it miraculously works again without code changes on my side.



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/AjaxEditableLabel-not-saving-after-migration-to-6-3-tp4654769p4655314.html
Sent from the Users forum mailing list archive at Nabble.com.

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



Re: AjaxEditableLabel not saving after migration to 6.3

2012-12-13 Thread Martin Grigorov
Hi,

By default AEL submits on ENTER key press or blur event. Does it work with
blur ?
Check with Firebug or similar whether an Ajax call is made at all.
Check whether
http://www.wicket-library.com/wicket-examples-6.0.x/ajax/editable-labelhttp://www.wicket-library.com/wicket-examples-6.0.x/ajax/editable-label?0
works
with your browser.


On Thu, Dec 13, 2012 at 4:16 PM, N. Metzger nmetz...@odu.edu wrote:

 Hi all,

 I recently migrated from 1.5.5 to 6.3. My objective is to display a list of
 group members with the ability to insert or update an expiration date for a
 specific member. It worked correctly before, but now I'm having problems
 with my AjaxEditableLabel nested in a PropertyColumn. I can click the label
 and type something, but on hitting enter, nothing changes and the
 onSubmit()
 is never called.  As I said, it worked in 1.5.

 Below is a code excerpt.

 Any pointers would be appreciated,
 Natalie


 private class PersonTabPanel extends Panel
 {
 public PersonTabPanel(String id){
 super(id);

 AjaxFallbackDefaultDataTable dataTable = new
 AjaxFallbackDefaultDataTable(memberTable, definePersonColumns(),
 new
 MemberDataProvider(currentGroup,
 MEMBER, PERSON), ELEMENTS_PER_PAGE);
 dataTable.setItemReuseStrategy(new
 DefaultItemReuseStrategy());
 add(dataTable);
 }
 }

 public ListIColumnlt;MemberInterface, Object definePersonColumns(){
 ListIColumnlt;MemberInterface, Object columns = new
 ArrayListIColumnlt;MemberInterface, Object();

 columns.add(new PropertyColumnMemberInterface, Object(new
 ModelString(Last Name), lastname, lastname));
 columns.add(new PropertyColumnMemberInterface, Object(new
 ModelString(First Name), displayedFirstName, displayedFirstName));
 columns.add(new PropertyColumnMemberInterface, Object(new
 ModelString(Email Address), emailAddress, emailAddress));

 if (isMemberEditAuthorized(currentGroup.getGroupCode()) ){

 columns.add(new PropertyColumnMemberInterface, Object(new
 ModelString(Expiration (MM/DD/YY)), expirationDate, expirationDate)
 {
 @Override
 public void
 populateItem(ItemICellPopulatorlt;MemberInterface cellItem, String
 componentId,
  final IModelMemberInterface
 rowModel)
 {
 AjaxEditableLabelDate editableLabel = new
 AjaxEditableLabelDate(componentId,
 new
 PropertyModelDate(rowModel, expirationDate)){
 @Override
 protected void onSubmit(AjaxRequestTarget target){
 int groupCode = currentGroup.getGroupCode();
 Date expiration = (Date)
 getDefaultModelObject();
 if (expiration != null)
 expiration = new Date(expiration.getTime()
 +
 86399000L); //expires at 23:59:59 on the given date

 MemberInterface selectedMember =
 (MemberInterface) rowModel.getObject();
 int gidm = selectedMember.getGidm();
 String memberType =
 selectedMember.getMemberType();

 try {
 expireMember(sessionId, midm, groupCode,
 gidm, memberType, expiration);
 logger.debug({}:{}: Set a member
 expiration
 date to +
 expiration+ for GIDM  +gidm,
 sessionId, midm);
 } catch (Exception e) {
 logger.error(Caught an exception while
 updating a group member expiration, e);
 error(An error occurred while updating the
 expiration date.);
 }

 getLabel().setVisible(true);
 getEditor().setVisible(false);
 target.add(this);
 target.appendJavaScript(window.status='';);
 target.add(feedback);
 }

 @Override
 protected String defaultNullLabel(){
 return ([click to edit]);
 }

 @Override
 protected void onError(AjaxRequestTarget target){

 target.add(feedback);
 }
 };
 cellItem.add(editableLabel);
 }
 });

 [Rest of code omitted]




 --
 View this message in context:
 http://apache-wicket.1842946.n4.nabble.com/AjaxEditableLabel-not-saving-after-migration-to-6-3-tp4654769.html
 Sent from the Users forum mailing list