Opa, quase me esqueço: Aqui vão minhas classes DAO e EJB + o JSP:
Classe DAO:
[code]package dados;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.Stateless;
import javax.faces.component.UIData;
import javax.faces.event.ValueChangeEvent;
import util.ConexaoMySql;
import basicas.Sprint;
import basicas.Status;
@Stateless
public class SprintDAO {
private Sprint sprint = new Sprint();
private List<Sprint> sprints = new ArrayList<Sprint>();
private UIData objDataTableSprint;
ConexaoMySql con = new ConexaoMySql();
@SuppressWarnings("static-access")
public String salvar(Sprint sprint) {
try {
if(sprint.getId() > 0){
con.conecta();
con.executeSql("update sprint set nome = '" + sprint.getNome()
+ "', descricao = '" + sprint.getDescricao()
+ "', status = '" + sprint.getStatus()
+ "' where id = " + sprint.getId());
}else{
con.conecta();
con.executeSql("insert into sprint (nome, descricao, status) values ('"
+ sprint.getNome()
+ "', '"
+ sprint.getDescricao()
+ "', '" + sprint.getStatus() + "')");
}
} catch (Exception e) {
System.out.println(e);
} finally {
con.fecharCon();
}
return null;
}
// public String alterar() {
// sprint = (Sprint) objDataTableSprint.getRowData();
// return "alterarSprint";
// }
//
// public List<Sprint> listarTodos() {
// return sprints;
// }
public Sprint getSprint() {
return sprint;
}
public void setSprint(Sprint sprint) {
this.sprint = sprint;
}
@SuppressWarnings("static-access")
public List<Sprint> getSprints() {
sprints.clear();
try {
con.conecta();
con.rs = con.executeSqlQuery("select * from sprint");
while (con.rs.next()) {
sprints.add(new Sprint(con.rs.getInt("id"), con.rs
.getString("nome"), con.rs.getString("descricao"),
con.rs.getString("status")));
}
} catch (Exception e) {
System.out.println(e);
} finally {
con.fecharCon();
}
return sprints;
}
public void setSprints(List<Sprint> sprints) {
this.sprints = sprints;
}
@SuppressWarnings("static-access")
public void valueChangeMethod(ValueChangeEvent e, UIData objDataTableSprint) {
sprint = (Sprint) objDataTableSprint.getRowData();
System.out.println(sprint.getStatus());
try{
con.conecta();
con.executeSql("update sprint set status = '" + e.getNewValue().toString()
+ "' where id = " + sprint.getId());
}catch(Exception ex){
System.out.println(ex);
}finally{
con.fecharCon();
}
}
public String outcome(){
return "result";
}
public String limpar() {
sprint = new Sprint();
return null;
}
}
[/code]
Classe EJB:
[code]package beans;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.component.UIData;
import javax.faces.event.ValueChangeEvent;
import util.ConexaoMySql;
import dados.SprintDAO;
import basicas.Sprint;
import basicas.Status;
public class SprintBean {
@EJB
private SprintDAO sprintDAO;
private Sprint sprint = new Sprint();
private UIData objDataTableSprint;
private List<Sprint> sprints = new ArrayList<Sprint>();
public String salvar(Sprint sprint) {
return sprintDAO.salvar(sprint);
}
public List<Sprint> getSprints() {
return sprintDAO.getSprints();
}
public void setSprints(List<Sprint> sprints) {
this.sprints = sprints;
}
public void valueChangeMethod(ValueChangeEvent e, UIData objDataTableSprint) {
sprintDAO.valueChangeMethod(e, objDataTableSprint);
}
public Sprint getSprint() {
return sprint;
}
public void setSprint(Sprint sprint) {
this.sprint = sprint;
}
public UIData getObjDataTableSprint() {
return objDataTableSprint;
}
public void setObjDataTableSprint(UIData objDataTableSprint) {
this.objDataTableSprint = objDataTableSprint;
}
public String limpar() {
sprint = new Sprint();
return null;
}
public SprintDAO getSprintDAO() {
return sprintDAO;
}
public void setSprintDAO(SprintDAO sprintDAO) {
this.sprintDAO = sprintDAO;
}
}
[/code]
A PArte do JSP que ele ta mostrando o erro:
<r:dataTable id="sprint" border="1" value="#{sprintBean.sprints }"
var="s" rendered="#{not empty sprintBean.sprints }" rows="10"
binding="#{sprintBean.objDataTableSprint }">