Estou tendo problema com o converter
segue abaixo meu código
Estou usando:
App server: Glassfish 3.1
jsf 2.0
[code]@FacesConverter(value=“produtoConverter”,forClass=produtoConverter)
public class ProdutoConverter implements Converter{
ProdutoSessao produtoSessao;
@Override
public Object getAsObject(FacesContext context, UIComponent component,
String value) {
if(value !=null && value.trim().length() >0){
Integer id = Integer.valueOf(value);
try {
return produtoSessao.getProdutoById(id);
}catch (Exception err) {
throw new ConverterException("Não foi possível encontrar o produto do id" + value + "." + err.getMessage());
}
}
return null;
}
@Override
public String getAsString(FacesContext context, UIComponent component,
Object value) {
if(value != null) {
Produto produto = (Produto) value;
return produto.getId().toString();
}
return "";
}
}
[/code]
[code] private List produtos;
private List produtoSelect;
public List getProdutoSelect() {
if(this.produtoSelect == null){
this.produtoSelect = new ArrayList();
produtos = bean.listarProdutos();
this.montaDadosSelect(this.produtoSelect,produtos);
}
return produtoSelect;
}
private void montaDadosSelect(List<SelectItem> select, List<Produto> produtos){
SelectItem item = null;
if(produtos != null) {
for (Produto produto : produtos) {
item = new SelectItem(produto, produto.getNome());
select.add(item);
}
}
}
[/code]
<p:selectOneMenu label="Nome do Produto" value="#{pedidoFace.beanSelecionado.nome}" converter="produtoConverter">
<f:selectItem itemValue="#{null}" itemLabel="Selecione" />
<f:selectItems value="#{pedidoFace.produtoSelect}" var="prod" itemLabel="#{prod.description}" itemValue="#{prod.value}"/>
</p:selectOneMenu>
no log aparece isso:
AVISO: Não foi possível encontrar o componente com a ID nomeProduto na exibição.
Obrigado desde de já