У меня проблема с реализацией пользовательского конвертера ...
мой xhtml:
...
<span class="cien">
<h:outputLabel value="Director de Area Correspondiente:"
styleClass="negritas" />
<h:selectOneMenu value="#{ordenBO.director}" id="director-area"
converter="superiorAuditoriaConverter"
converterMessage="Error al seleccionar el Director">
<f:selectItems value="#{ordenBO.directores}"></f:selectItems>
</h:selectOneMenu>
<p:message for="director-area"></p:message>
</span>
...
вот как я заполняю свой ч: SelectOneMenu:
...
this.directores = new ArrayList<SelectItem>();
for (SuperiorAuditoriaDTO sup: daoSuperiorAuditoria.getDirectoresASM())
this.directores.add(new SelectItem(sup, sup.getProfesion() + " " +
sup.getNombre_completo()));
...
это мой пользовательский конвертер:
....
@FacesConverter(forClass = SuperiorAuditoriaDTO.class, value =
"superiorAuditoriaConverter")
public class SuperiorAuditoriaConverter implements Converter {
private static SuperiorAuditoriaDAO dao = new SuperiorAuditoriaDAO();
public Object getAsObject(FacesContext arg0, UIComponent arg1, String id_persona) {
SuperiorAuditoriaDTO s = null;
try {
s = dao.getSuperiorASM(Integer.parseInt(id_persona));
} catch(Exception e) {
e.printStackTrace();
}
return s;
}
public String getAsString(FacesContext arg0, UIComponent arg1, Object auditor) {
return String.valueOf(((SuperiorAuditoriaDTO) auditor).getId_persona());
}
}
Может кто-нибудь помочь мне ?? Я всегда получаю сообщение об ошибке, в котором говорится, что значение, которое я пытаюсь преобразовать, недопустимо ..
Я использую JSF 2 Моджарра ...
у меня также есть метод equals и hashCode ...
спасибо ..