Olá,
tenho uma página (resposta )jsf 1.2 onde é uma enquete onde existe dez perguntas onde leio
essas perguntas de um objeto e tento colocar essa pergunta na página de resposta.
E fica nulo na página resposta não entendi pois debugando pego o valor mais não vai para página
-- o campo está nulo
<h:inputText value="#{respostaAluno.desPerguntaAluno}" />
04/03/2011 09:09:19 org.apache.myfaces.shared_tomahawk.config.MyfacesConfig createAndInitializeMyFacesConfig
INFO : Starting up Tomahawk on the RI-JSF-Implementation.
04/03/2011 09:09:29 com.sun.faces.application.ActionListenerImpl processAction
GRAVE: java.lang.NullPointerException
javax.faces.el.EvaluationException: java.lang.NullPointerException
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at javax.faces.component.UICommand.broadcast(UICommand.java:387)
at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:184)
at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:162)
at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:350)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:246)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:558)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NullPointerException
at ao.edu.imag.avalia.view.managedbean.RespostaAlunoMB.incluir_nome(RespostaAlunoMB.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
... 32 more
04/03/2011 09:09:29 com.sun.faces.lifecycle.InvokeApplicationPhase execute
AVISO: #{respostaAlunoMB.incluir_nome}: java.lang.NullPointerException
javax.faces.FacesException: #{respostaAlunoMB.incluir_nome}: java.lang.NullPointerException
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
at javax.faces.component.UICommand.broadcast(UICommand.java:387)
at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:184)
at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:162)
at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:350)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:246)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:558)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
... 31 more
Caused by: java.lang.NullPointerException
at ao.edu.imag.avalia.view.managedbean.RespostaAlunoMB.incluir_nome(RespostaAlunoMB.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
... 32 more
04/03/2011 09:09:29 com.sun.faces.lifecycle.Phase doPhase
GRAVE: JSF1054: (Phase ID: INVOKE_APPLICATION 5, View ID: /private/pages/resposta_aluno_nome.xhtml) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@1fcd402]
04/03/2011 09:09:29 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet Faces Servlet threw exception
java.lang.NullPointerException
at ao.edu.imag.avalia.view.managedbean.RespostaAlunoMB.incluir_nome(RespostaAlunoMB.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at javax.faces.component.UICommand.broadcast(UICommand.java:387)
at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:184)
at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:162)
at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:350)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:246)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:558)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
resposta_aluno_responde.xhtm (2.pagina)
</demoiselle:useJs>
<rich:panel styleClass="richPanelStyleClass" bodyClass="richPanelBodyClass" headerClass="richPanelHeaderClass">
<div>
<br/>
<br/>
<h:outputLabel value="Pergunta"/>
<br/>
<br/>
<h:inputText value="#{respostaAluno.desPerguntaAluno}" />
<h:selectOneMenu value="#{respostaAluno.pontuacao}" >
<f:selectItem itemLabel="Peso 1" itemValue="1" />
<f:selectItem itemLabel="Peso 2" itemValue="2"/>
<f:selectItem itemLabel="Peso 3" itemValue="3"/>
<f:selectItem itemLabel="Peso 4" itemValue="4"/>
</h:selectOneMenu>
</div>
</rich:panel>
<rich:panel styleClass="richPanelStyleClass" bodyClass="richPanelBodyClass" headerClass="richPanelHeaderClass">
<rich:tabPanel styleClass="richTabPanelStyleClass" headerClass="richTabPanelHeaderClass" tabClass="richTabPanelTabClass" activeTabClass="richTabPanelActiveTabClass" inactiveTabClass="richTabPanelInactiveTabClass" disabledTabClass="richTabPanelDisabledTabClass" contentClass="richTabPanelContentClass" switchType="client">
<rich:tab tabindex="2"/>
</rich:tabPanel>
</rich:panel>
<div style="padding: 10px; text-align: right;">
<t:commandButton title="Próxima Pergunta" value="Próxima Pergunta" action="#{respostaAluno.inclui_resposta}"/>
</div>
</h:form>
</ui:define>
</ui:composition>
</html>
<navigation-rule>
<!--RegraPerguntaAluno-->
<navigation-case>
<from-outcome>pergunta_aluno_listar</from-outcome>
<to-view-id>/private/pages/pergunta_aluno_listar.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>pergunta_aluno_editar</from-outcome>
<to-view-id>/private/pages/pergunta_aluno_editar.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>pergunta_aluno_visualizar</from-outcome>
<to-view-id>/private/pages/pergunta_aluno_visualizar.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>testar</from-outcome>
<to-view-id>/private/pages/testar.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
<!--RegraPerguntaProfessor-->
<navigation-rule>
<navigation-case>
<from-outcome>pergunta_professor_listar</from-outcome>
<to-view-id>/private/pages/pergunta_professor_listar.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>pergunta_professor_editar</from-outcome>
<to-view-id>/private/pages/pergunta_professor_editar.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>pergunta_professor_visualizar</from-outcome>
<to-view-id>/private/pages/pergunta_professor_visualizar.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
<!--RegraPerguntaProfessor-->
<navigation-rule>
<navigation-case>
<from-outcome>resposta_aluno_nome</from-outcome>
<to-view-id>/private/pages/resposta_aluno_nome.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>resposta_aluno_responde</from-outcome>
<to-view-id>/private/pages/resposta_aluno_responde.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
<!-- Logout -->
<navigation-rule>
<navigation-case>
<from-outcome>logout</from-outcome>
<to-view-id>/public/pages/security/logout.xhtml</to-view-id>
<redirect/>
</navigation-case>
</navigation-rule>
<managed-bean>
<managed-bean-name>perguntaAlunoMB</managed-bean-name>
<managed-bean-class>ao.edu.imag.avalia.view.managedbean.PerguntaAlunoMB</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>perguntaProfessorMB</managed-bean-name>
<managed-bean-class>ao.edu.imag.avalia.view.managedbean.PerguntaProfessorMB</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
[b] <managed-bean>
<managed-bean-name>respostaAlunoMB</managed-bean-name>
<managed-bean-class>ao.edu.imag.avalia.view.managedbean.RespostaAlunoMB</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
[/b]
</faces-config>
public class RespostaAlunoMB extends AbstractManagedBean {
@Injection
private IRespostaAlunoBC respostaAlunoBC;
@Injection
private IPerguntaAlunoBC perguntaAlunoBC;
private RespostaAluno respostaAluno ;
private List<RespostaAluno> listRespostaAluno = new ArrayList<RespostaAluno>();
private String pontuacao = "2";
private Long contador =0l;
/* Pergunta Aluno*/
private String desPerguntaAluno = "Pergunat XXXXX";
private Long idPerguntaAluno=1l;
private PerguntaAluno perguntaAluno ;
private PerguntaAluno perguntaAlunoUsado;
public RespostaAlunoMB() {
respostaAluno = new RespostaAluno();
perguntaAlunoUsado = new PerguntaAluno();
respostaAluno = new RespostaAluno();
desPerguntaAluno = "Pergunat XXXXX";
}
public RespostaAluno getRespostaAluno() {
return this.respostaAluno;
}
public void setRespostaAluno(RespostaAluno arg0) {
this.respostaAluno = arg0;
}
public List<RespostaAluno> getListRespostaAluno() {
return this.listRespostaAluno;
}
public void setListRespostaAluno(List<RespostaAluno> arg0) {
this.listRespostaAluno = arg0;
}
public String digitar_nome() {
return AliasNavigationRule.ALIAS_RESPOSTA_ALUNO_NOME;
}
public String incluir_nome() {
validarNome(respostaAluno);
try {
if (getIdPerguntaAluno() == null){
contador = 1l;
perguntaAluno.setId(contador);
perguntaAlunoUsado= perguntaAlunoBC.buscar(perguntaAluno);
}else{
contador = contador +1;
perguntaAluno.setId(contador);
perguntaAlunoUsado= perguntaAlunoBC.buscar(perguntaAluno);
}
desPerguntaAluno = perguntaAlunoUsado.getPergunta();
idPerguntaAluno = perguntaAlunoUsado.getId();
for (IMessage imsg : WebMessageContext.getInstance().getMessages()) {
addMessage(imsg);
}
} catch (ApplicationRuntimeException e) {
addMessage(e.getObjectMessage(), e);
}
WebMessageContext.getInstance().clear();
return AliasNavigationRule.ALIAS_RESPOSTA_ALUNO_RESPONDE;
}
public String incluir_reposta() {
try {
//respostaAlunoBC.incluir(respostaAluno);
if (getIdPerguntaAluno() == null){
contador = 1l;
perguntaAluno.setId(contador);
perguntaAlunoUsado= perguntaAlunoBC.buscar(perguntaAluno);
}else{
contador = contador +1;
perguntaAluno.setId(contador);
perguntaAlunoUsado= perguntaAlunoBC.buscar(perguntaAluno);
}
desPerguntaAluno = perguntaAlunoUsado.getPergunta();
idPerguntaAluno = perguntaAlunoUsado.getId();
for (IMessage imsg : WebMessageContext.getInstance().getMessages()) {
addMessage(imsg);
}
} catch (ApplicationRuntimeException e) {
addMessage(e.getObjectMessage(), e);
}
WebMessageContext.getInstance().clear();
return AliasNavigationRule.ALIAS_RESPOSTA_ALUNO_RESPONDE;
}
resposta_aluno_nome.xhtml (1pagina)
<rich:panel styleClass="richPanelStyleClass" bodyClass="richPanelBodyClass" headerClass="richPanelHeaderClass">
<h:outputLabel value="INFORMAÇÕES PESSOAIS" />
<table summary="Formulário para Resposta do Aluno">
<br/>
<br/>
<tr>
<td>
<h:outputLabel for="nomeAluno" styleClass="outputLabel" value="Nome do Aluno"/>
</td>
</tr>
<tr>
<td>
<t:inputText id="nomeAluno" tabindex="1" styleClass="inputText" value="#{respostaAlunoMB.respostaAluno.nomeAluno}" />
</td>
</tr>
</table>
</rich:panel>
<rich:panel styleClass="richPanelStyleClass" bodyClass="richPanelBodyClass" headerClass="richPanelHeaderClass">
<rich:tabPanel styleClass="richTabPanelStyleClass" headerClass="richTabPanelHeaderClass" tabClass="richTabPanelTabClass" activeTabClass="richTabPanelActiveTabClass" inactiveTabClass="richTabPanelInactiveTabClass" disabledTabClass="richTabPanelDisabledTabClass" contentClass="richTabPanelContentClass" switchType="client">
<rich:tab tabindex="2"/>
</rich:tabPanel>
</rich:panel>
<div style="padding: 10px; text-align: right;">
<t:commandButton title="Avançar" value="Avançar" action="#{respostaAlunoMB.incluir_nome}"/>
</div>
</h:form>
</ui:define>
</ui:composition>
</html>