哪個「p:calendar」組件被假定爲綁定的Java類類型? (爲了實現它的轉換器)。jsf轉換器p:日曆日期
我認爲這是java.util.Date
,所以我有以下幾點:
<p:calendar id="fecha" value="#{catalogoController.criterios.fecha}"
maxlength="10"
size="10"
locale="es"
pattern="dd/MM/yyyy"
navigator="true"
showOn="button"
showButtonPanel="true" />
和物業catalogoController.criterios.fecha
是java.util.Date
。
我的自定義轉換器:
@FacesConverter(forClass = java.util.Date.class)
public class FechaDateConverter implements Converter {
...
public Object getAsObject(FacesContext context, UIComponent component, String value) {
log.info("getAsObject");
...
}
...
}
,因爲它是大我不把這裏的方法的代碼。它檢查條件並使用自定義facesmessages引發ConverterException,這是從自定義屬性文件(「msjsConversion」)中獲取的。
但它不起作用。當我輸入不正確的日期時(例如「01/032011」),我的getAsObject
方法沒有被觸發(我知道,因爲它的第一條日誌行從未到達)。默認的轉換信息顯示爲facesmessage,而不是我從我的包「msjsConversion」中獲得的信息。
我認爲它沒有被觸發的原因是因爲p:calendar
綁定到的Java類不是java.util.Date
(這是我聲明的轉換器的類)。
所以,我檢查了,如果我宣佈我的轉換器的ID:
@FacesConverter("fechaDateConverter")
public class FechaDateConverter implements Converter {
,我把這個在p:calendar
組件:
<f:converter converterId="fechaDateConverter" />
它的工作原理。
因此,任何人都知道哪一個是Java類p:calendar
?這樣我可以爲我的類聲明我的轉換器,而不使用converterId?
預先感謝您。
爲什麼你需要一個轉換器FO號碼:日曆值?它是一個簡單的日期http://www.primefaces.org/showcase/ui/calendarBasic.jsf < - 看看java代碼... – Daniel 2012-01-28 08:47:08
我的轉換器是一個簡單的日期(請參閱我的問題)。但是,如果我將它聲明爲任何日期對象'@FacesConverter(forClass = java.util.Date.class)',它就不起作用。如果我明確聲明組件爲' ' –
choquero70
2012-01-30 17:34:22