Boa noite estou ralando com esse erro alguem sabe o que significa.
Acontece erro quando busco por parâmetro obrigado pela ajuda
meus códigos
Manage bean
package br.com.livraria.controller;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
import br.com.livraria.DAO.DAO;
import br.com.livraria.DAO.LivroDaoImpl;
import br.com.livraria.pojo.Livro;
@ManagedBean
@SessionScoped
public class LivroController {
private Livro livro = new Livro();
private DataModel listalivros;
public DataModel getListaLivros(){
List<Livro> lista = new LivroDaoImpl().list();
listalivros = new ListDataModel(lista);
return listalivros;
}
public Livro getLivro() {
return livro;
}
public String getLivroByTitulo(){
DAO dao = new LivroDaoImpl();
dao.list2(this.livro.getTitulo());
return "busca";
}
public void setLivro(Livro livro) {
this.livro = livro;
}
public String preparaAdcionarLivro(){
livro = new Livro();
return "gerenciarLivro";
}
public String preparaAlterarLivro(){
livro = (Livro)(listalivros.getRowData());
return "gerenciarLivro";
}
public String excluirLivro(){
Livro livroTemp = (Livro)(listalivros.getRowData());
DAO dao = new LivroDaoImpl();
dao.remove(livroTemp);
return "index";
}
public String adcionarLivro(){
DAO dao = new LivroDaoImpl();
dao.save(livro);
return "index";
}
public String alterarLivro(){
DAO dao = new LivroDaoImpl();
dao.update(livro);
return "index";
}
@SuppressWarnings("rawtypes")
public List suggest(Object begin) {
String sKeyed = ((String)begin).trim();
ArrayList<String> alResult = new ArrayList<String>();
LivroDaoImpl livros = new LivroDaoImpl();
Iterator<Livro> iterator = livros.list().iterator();
while (iterator.hasNext()){
String sElem = (String)iterator.next().getTitulo();
if (sElem.toLowerCase().startsWith(sKeyed) )
{ alResult.add(sElem); }
}
return alResult;
}
}
Impl
package br.com.livraria.DAO;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.Transaction;
import br.com.livraria.Util.HibernateUtil;
import br.com.livraria.pojo.Livro;
public class LivroDaoImpl implements DAO {
public void save(Livro livro) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction t = session.beginTransaction();
session.save(livro);
t.commit();
}
public Livro getLivro(long id) {
Session session = HibernateUtil.getSessionFactory().openSession();
return (Livro) session.load(Livro.class, id);
}
@SuppressWarnings("unchecked")
public List<Livro> list() {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction t = session.beginTransaction();
@SuppressWarnings("rawtypes")
List lista = session.createQuery("from Livro").list();
t.commit();
return lista;
}
public void remove(Livro livro) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction t = session.beginTransaction();
session.delete(livro);
t.commit();
}
public void update(Livro livro) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction t = session.beginTransaction();
session.update(livro);
t.commit();
}
public Livro list2 (String titulo){
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction t = session.beginTransaction();
Livro livro = (Livro) session.createQuery("from Livro where titulo =?");
t.commit();
return livro;
}
}
jsp
<?xml version="1.0" encoding="ISO-8859-1" ?>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="a4j" uri="http://richfaces.org/a4j"%>
<%@taglib prefix="rich" uri="http://richfaces.org/rich"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<head>
<title>Gerenciador de Livros</title>
<style type="text/css">
* {
/*Define que todos os elementos da página, ficarão em negrito e com a fonte arial */
font-weight: bold;
font-family: arial;
/*Define a tamanho da fonte para todos os elementos */
font-size: 10px;
}
.edit {
/*Define a borda do elemento, com um efeito de baixo-relevo menor que o padrão */
border: 1px inset;
/*Especifica a cor cinza, como pano de fundo do elemento */
background-color: #D3D3D3;
/*Especifica como preta a cor da fonte do elemento */
color: #000000;
}
.botoes {
/*Especifica a cor chocolate, como pano de fundo do elemento */
background-color: #D2691E;
/*Especifica como preta a cor da fonte do elemento */
color: #FFFFFF;
/*Define a borda do elemento, com um efeito de alto-relevo menor que o padrão */
border: 1px outset;
}
.rotulos { /*Especifica preta a cor da fonte do elemento */
color: #000000;
}
legend { /*Define a tamanho da fonte para a legenda do FieldSet */
font-size: 12px
}
</style>
</head>
<body>
<f:view>
<h1><h:outputText value="Gerenciador de Livros" /></h1>
<h:form>
<fieldset><rich:panel header="Buscar Livro"
style="width:315px">
<h:outputText value="Titulo:" styleClass="rotulo" />
<h:inputText id="titulo" value="#{livroController.livro.titulo}"
styleClass="edit" />
<rich:suggestionbox for="titulo" var="result"
suggestionAction="#{livroController.suggest}">
<h:column>
<h:outputText value="#{result}" />
</h:column>
</rich:suggestionbox>
</rich:panel> <a4j:form>
<h:commandButton value="Buscar"
action="#{livroController.getLivroByTitulo}" />
</a4j:form></fieldset>
</h:form>
</f:view>
</body>
</html>