Bom, vou ser breve. Sou iniciante na área e to fazendo um crud ( que era pra ja ter sido entregue ao prof, mas não deu) , ja consegui abrir caminho até o banco e gerar as tabelas. O problema aqui é que quando preencho os campos e clico em salvar, cada campo dá NULL. Já revisei tudo mas algo tá passando despercebido e eu não sei o que.rs Segue print da tela
Alguém poderia me dar uma mãozinha aqui ? rs [ RESOLVIDO ]
5 Respostas
Poderia postar o começo do erro?
Posta o erro, o seu bean e o codigo da pagina xhtml
ERRO: jun 24, 2018 11:11:07 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
ADVERTÊNCIA: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property ‘source’ to ‘org.eclipse.jst.jee.server:projeto1’ did not find a matching property.
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Server version: Apache Tomcat/8.5.30
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Server built: Apr 3 2018 20:04:09 UTC
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Server number: 8.5.30.0
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: OS Name: Windows 10
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: OS Version: 10.0
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Architecture: amd64
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Java Home: E:\JDK
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: JVM Version: 1.8.0_144-b01
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: JVM Vendor: Oracle Corporation
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: CATALINA_BASE: E:\ECPLIPSE.metadata.plugins\org.eclipse.wst.server.core\tmp0
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: CATALINA_HOME: E:\ECPLIPSE\apache-tomcat-8.5.30
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dcatalina.base=E:\ECPLIPSE.metadata.plugins\org.eclipse.wst.server.core\tmp0
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dcatalina.home=E:\ECPLIPSE\apache-tomcat-8.5.30
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dwtp.deploy=E:\ECPLIPSE.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Djava.endorsed.dirs=E:\ECPLIPSE\apache-tomcat-8.5.30\endorsed
jun 24, 2018 11:11:07 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dfile.encoding=Cp1252
jun 24, 2018 11:11:07 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFORMAÇÕES: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [E:\JDK\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;E:/JDK/bin/server;E:/JDK/bin;E:/JDK/lib/amd64;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Users\dinho\AppData\Local\Microsoft\WindowsApps;E:\ECPLIPSE;;.]
jun 24, 2018 11:11:08 PM org.apache.coyote.AbstractProtocol init
INFORMAÇÕES: Initializing ProtocolHandler [“http-nio-8080”]
jun 24, 2018 11:11:08 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFORMAÇÕES: Using a shared selector for servlet write/read
jun 24, 2018 11:11:08 PM org.apache.coyote.AbstractProtocol init
INFORMAÇÕES: Initializing ProtocolHandler [“ajp-nio-8009”]
jun 24, 2018 11:11:08 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFORMAÇÕES: Using a shared selector for servlet write/read
jun 24, 2018 11:11:08 PM org.apache.catalina.startup.Catalina load
INFORMAÇÕES: Initialization processed in 1800 ms
jun 24, 2018 11:11:08 PM org.apache.catalina.core.StandardService startInternal
INFORMAÇÕES: Starting service [Catalina]
jun 24, 2018 11:11:08 PM org.apache.catalina.core.StandardEngine startInternal
INFORMAÇÕES: Starting Servlet Engine: Apache Tomcat/8.5.30
jun 24, 2018 11:11:15 PM org.apache.jasper.servlet.TldScanner scanJars
INFORMAÇÕES: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
jun 24, 2018 11:11:26 PM org.apache.jasper.servlet.TldScanner scanJars
INFORMAÇÕES: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
jun 24, 2018 11:11:26 PM com.sun.faces.config.ConfigureListener contextInitialized
INFORMAÇÕES: Inicializando Mojarra 2.2.5 ( 20140108-1427 https://svn.java.net/svn/mojarra~svn/tags/2.2.5@12761) para o contexto '/p’
jun 24, 2018 11:11:27 PM com.sun.faces.spi.InjectionProviderFactory createInstance
INFORMAÇÕES: JSF1048: Anotações PostConstruct/PreDestroy presentes. Os métodos ManagedBeans marcados com essas anotações informarão as anotações processadas.
jun 24, 2018 11:11:28 PM com.sun.faces.config.ConfigureListener$WebConfigResourceMonitor$Monitor
INFORMAÇÕES: Monitoring file:/E:/ECPLIPSE/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/projeto1/WEB-INF/faces-config.xml for modifications
jun 24, 2018 11:11:28 PM org.primefaces.webapp.PostConstructApplicationEventListener processEvent
INFORMAÇÕES: Running on PrimeFaces 6.2
jun 24, 2018 11:11:28 PM org.apache.coyote.AbstractProtocol start
INFORMAÇÕES: Starting ProtocolHandler [“http-nio-8080”]
jun 24, 2018 11:11:28 PM org.apache.coyote.AbstractProtocol start
INFORMAÇÕES: Starting ProtocolHandler [“ajp-nio-8009”]
jun 24, 2018 11:11:28 PM org.apache.catalina.startup.Catalina start
INFORMAÇÕES: Server startup in 19919 ms
Story [nome=null, abstrato=null, abstrato1=null, unico=false] <----- AQUI
======================================================
BEAN:
package Mb;
import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import util.jsf.FacesUtil;
import Dao.Dao;
import Entidade.Story;
@ManagedBean(name=“story”)
public class StoryBean {
private Story story = new Story();
private ArrayList<Story> listaStoryes = new ArrayList<Story>();
@SuppressWarnings("unchecked")
public ArrayList<Story> getListaStoryes() {
return (ArrayList<Story>) Dao.getInstance().listarObjetos(Story.class);
}
public void setListaStory(ArrayList<Story> listaStoryes) {
this.listaStoryes = listaStoryes;
}
public Story getStory() {
return story;
}
public void setStory(Story story) {
this.story = story;
}
public String salvar() {
try {
if (story.getId() == 0L || story.getId() == null) {
Dao.getInstance().salvarObjeto(story);
} else {
Dao.getInstance().salvarOuAtualizarObjeto(story);
}
} catch (Exception e) {
System.out.println(e);
}
return "listaStory.xhtml?faces-redirect=true";
}
public String edit(Story story) {
this.story = story;
return "insereStory.xhtml";
}
public void delete(Story story) {
Dao.getInstance().deletarObjeto(story);
}
public String create() {
try {
Dao.getInstance().salvarObjeto(story);
} catch (Exception e) {
System.out.println(e);
}
return "listaStory.xhtml?faces-redirect=true";
}
=============================================
pagina :
<?xml version="1.0" encoding="ISO-8859-1" ?><h:head>
Inserir Novo Jogo</h:head>
<h:body>
Insira um Novo Story
<p:submenu label="Economico" icon="ui-icon ui-icon-document" url="listaEconomico.xhtml" ajax="false">
<p:menuitem value="Inserir Novo" url="insereEconomico.xhtml" ajax="false"/>
<p:menuitem value="Listar" url="listaEconomico.xhtml" ajax="false"/>
</p:submenu>
<p:submenu label="Sair" icon="ui-icon ui-icon-document" url="index.xhtml" ajax="false">
<p:menuitem value="Início" url="index.xhtml" ajax="false"/>
</p:submenu>
</p:menubar>
<h:form>
<h:inputHidden value="#{<a href="http://story.story.id">story.story.id</a>}"/>
Nome:
<p:inputText name=“nome” id=“nome” value="#{story.story.nome}"/>
Abstrato:
<h:inputText id=“abstrato” name="" value="#{story.story.abstrato}"/>
Abstrato
<h:inputText id=“abstrato1” value="#{story.story.abstrato1}"/>
Unico
<h:inputText id=“unico” value="#{story.story.unico}"/>
<h:commandButton id=“salvar” name=“salvar” class=“btn btn-sucess” value=“Salvar"
action=”#{story.salvar}" immediate=“true”/>
</h:form>
Por enquanto não da para ajudar ainda.
Você não postou a stacktrace (mensagem de erro), ai eu não sei onde vai estar o erro, se é no bean ou no xhtml.
Eu não sei se você postou a página toda ou não, mas se não, falta fechar a tag body, colocar a tag html e importar os namespaces
BEAN:
package Mb;
import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
import util.jsf.FacesUtil;
import Dao.Dao;
import Entidade.Story;
@ManagedBean(name="story")
public class StoryBean {
private Story story = new Story();
/*
Story story = new Story();
public Story getStory() {
return story;
}
public void setStory(Story story) {
this.story = story;
}
public void cadastrar() {
System.out.println(story.toString());
}
*/
private ArrayList<Story> listaStoryes = new ArrayList<Story>();
@SuppressWarnings("unchecked")
public ArrayList<Story> getListaStoryes() {
return (ArrayList<Story>) Dao.getInstance().listarObjetos(Story.class);
}
public void setListaStory(ArrayList<Story> listaStoryes) {
this.listaStoryes = listaStoryes;
}
public Story getStory() {
return story;
}
public void setStory(Story story) {
this.story = story;
}
public String salvar() {
try {
if (story.getId() == 0L || story.getId() == null) {
Dao.getInstance().salvarObjeto(story);
} else {
Dao.getInstance().salvarOuAtualizarObjeto(story);
}
} catch (Exception e) {
System.out.println(e);
}
return "listaStory.xhtml?faces-redirect=true";
}
public String edit(Story story) {
this.story = story;
return "insereStory.xhtml";
}
public void delete(Story story) {
Dao.getInstance().deletarObjeto(story);
}
public String create() {
try {
Dao.getInstance().salvarObjeto(story);
} catch (Exception e) {
System.out.println(e);
}
return "listaStory.xhtml?faces-redirect=true";
}
}
