Olá a todos,
estou desenvolvendo um exercicio pra universidade, porém nesse bendito exercicio quando clico no meu botão na página xhtml ele não executa nada na classe, já olhei, olhei de novo e mais uma vez, e não consegui achar o erro, tentei fazer com um botão pra cada método, depois mudei pra um botão com 3 opções, e nada. O que estou fazendo errado e não estou conseguindo ver :shock:
Exer4.xhtml
<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html">
<head>
<title>TODO supply a title</title>
</head>
<f:view>
<h:body>
<h:inputText required="true" value="#{vocabulario.palavra}"
requiredMessage="A palavra precisa ser informada!" /><br />
<h:selectOneRadio value="#{vocabulario.opt}" >
<f:selectItem itemLabel="Adicionar" itemValue="1" />
<f:selectItem itemLabel="Remover" itemValue="2" />
<f:selectItem itemLabel="Consultar" itemValue="3" />
</h:selectOneRadio>
<h:commandButton value="Executar" action="#{vocabulario.tratar()}" />
<br />
<h:messages></h:messages>
<br />
<h:dataTable value="#{vocabulario.arr}" var="x">
<h:column>
<h:outputText value="#{x}" />
</h:column>
</h:dataTable>
</h:body>
</f:view>
</html>
Vocabulario.java
package controle;
import java.util.ArrayList;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
@ManagedBean
@SessionScoped
public class Vocabulario {
private ArrayList<String> arr = new ArrayList<String>();
private String palavra;
private String consulta;
private int opt = 1;
public Vocabulario() {
}
public int getOpt() {
return opt;
}
public void setOpt(int opt) {
this.opt = opt;
}
public String tratar() {
switch (opt) {
case 1:
adicionar();
break;
case 2:
remover();
break;
case 3:
consultar();
break;
}
return null;
}
public String adicionar() {
if (!arr.contains(palavra)) {
arr.add(palavra);
consulta = "Palavra inserida com sucesso!";
} else {
consulta = "Palavra já existe";
}
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Resultado:", consulta));
return null;
}
public String remover() {
if (arr.contains(palavra)) {
arr.remove(palavra);
consulta = "Palavra removida com sucesso!";
} else {
consulta = "Palavra não existe para ser removida";
}
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Resultado:", consulta));
return null;
}
public String consultar() {
if (arr.contains(palavra)) {
consulta = "A palavra existe no vocabulário!";
} else {
consulta = "A palavra não existe no vocabulário!";
}
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Resultado:", consulta));
return null;
}
public String getPalavra() {
return palavra;
}
public void setPalavra(String palavra) {
this.palavra = palavra;
}
public String getConsulta() {
return consulta;
}
public void setConsulta(String consulta) {
this.consulta = consulta;
}
public ArrayList<String> getArr() {
return arr;
}
public void setArr(ArrayList<String> arr) {
this.arr = arr;
}
}