2013-10-26 2 views
0

Я новичок в калитки. Я хочу показать дату, которую я получаю из базы данных с помощью hibernate, и отобразить ее с помощью простой метки.Удалить временную часть, когда модель отображения даты по Wicket Label

Label("nextCallDate",new PropertyModel(contact, "nextCallDate")) 

Но проблема в том, что я хочу только показать дату и опустить временную часть. Есть ли способы сделать это? Или еще дальше, есть ли способы форматирования вывода компонентов Label?

Благодаря

ответ

0

Вы можете подкласс PropertyModel и создать модель, которая будет возвращать отформатированную строку, используя DateFormatUtils из Apache Commons. Это имеет то преимущество, что вам не нужно изменять свои объекты, и это проще для повторного использования.

public class DatePropertyModel extends PropertyModel{ 

    public DatePropertyModel(Object modelObject, String expression) { 
     super(modelObject, expression); 
    } 

    @Override 
    public Object getObject() { 
     return DateFormatUtils.format((Date)super.getObject(), "dd-MM-yyyy"); 
    } 

} 

Затем вы определяете метку с помощью этой модели класса

Label("nextCallDate",new DatePropertyModel(contact, "nextCallDate")) 
3

Используйте IConverter для этого. Вы можете зарегистрировать его в своем приложении или переопределить #getConverter() на своем компоненте.

+0

Пример источника? – powder366

Смежные вопросы