북마크 가능 URL 및 GET 메소드를 사용합니다.사용자 정의 JSF EL 함수, 날짜 변환기 및 현재 컴포넌트
날짜가 포함 된 매개 변수가 있으며 기본 DateTime 변환기를 사용하여 변환됩니다.
<f:viewParam name = "parameter" value = "#{model.parameter}" converter = "javax.faces.DateTime" />
로 (이 완벽하게 작동하고 우리는 우리가 올바른 형식의 문자열로 Date
매개 변수를 변환 할 필요가이 페이지로 연결되는 링크 (예 : <h:link>
로)를 생성 할 때 매개 변수는 문자열
과에서 컨버터입니다 <f:param>
태그는 변환기를 지원하지 않습니다. Date.toString()
의 기본 형식은 javax.faces.converter.DateTimeConverter
으로 구문 분석되지 않습니다.
다음 해결책을 생각해 냈지만 더 우아하게 할 수 있다고 생각합니다.
나는 사용자 정의 EL 기능 convertDate
public static String convertDate(Date date, UIComponent uiComponent)
{
DateTimeConverter dateTimeConverter = new DateTimeConverter();
return dateTimeConverter.getAsString(FacesContext.getCurrentInstance(), uiComponent, date);
}
아이디어는 날짜를 변환 할 기본 javax.faces.convert.DateTimeConverter
을 사용하는 것입니다와
<f:param name="parameter" value="#{ func:convertDate(model.someDate, component) }" />
를 정의하지만 난 UIComponent
대응에 대한 참조가 필요합니다 .
#{component}
의 사용법이 맞습니까? 더 좋은 방법이 있습니까?