我在selectOneMenu中列出了一个专辑实体的转换器,如果有,需要什么修改才能与selectManyMenu一起使用?
最后给出了一个与selectManyMenu相结合的转换器的工作实例。
SelectOneMenu变换器
package converter;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.ConverterException;
import javax.faces.convert.FacesConverter;
import javax.persistence.EntityManager;
import entities.Album;
import util.EntityUtil;
@FacesConverter("albumconverter")
public class AlbumConverter implements Converter {
EntityManager em = EntityUtil.getEntityManager();
public Object getAsObject(FacesContext context, UIComponent component, String value) {
if (value == null || value.length() == 0) {
return null;
}
Album album = em.find(
Album.class,
Long.parseLong(value));
return album;
}
public String getAsString(FacesContext context, UIComponent component, Object value) {
return value instanceof Album ?
((Album) value).getAlbumId().toString() : "";
}
}发布于 2012-10-13 12:58:02
不需要改变。转换器是基于每项应用的,而不是基于每个列表/数组的。
https://stackoverflow.com/questions/12872389
复制相似问题