Erro java.lang.NullPointerException com struts 1.2.9

1 resposta
E

Pessoal, estou com uma aplicação aqui com o struts e quero q ao digitar o http://localhost:8080/aplicacao apareca os menus e tals, mas sem nenhuma tipo de cadastro aparecendo entendem? somente os menus, para então clicarmos nos cadastros…

mas utilizando o struts 1.2.9 eu consigo, roda blz, mas no console do eclipse aparece o seguinte erro:

java.lang.NullPointerException
	at br.com.eit.sgt.struts.action.InicioAction.execute(InicioAction.java:32)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:704)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:474)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
	at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:670)
	at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:637)
	at org.apache.jsp.index_jsp._jspService(index_jsp.java:43)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
	at java.lang.Thread.run(Thread.java:595)

no index.jsp tem uma única linha: <jsp:forward page="/Inicio.do?method=execute" />
oq pode ser? aí vai o código do action, ja q nesse erro ele acusa o action:

public class InicioAction extends DispatchAction {
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {

		InicioForm inicioForm = (InicioForm) form;
		inicioForm.setState("execute");
		inicioForm.setMethod("execute");
		return mapping.findForward("inicio");
	}
}

a linha 32 é justamente o inicioForm.setState(“execute”);. não criei um form-bean pra ele no struts-config. qdo o crio, nao aparece nada, somente uma pag em branco. alguém pode dar uma luz?

1 Resposta

D

Cara, vc te, que definir o formBean. Talvez seria interessante vc alterar o parameter da DispatcherAction para “command”, ou outro qualquer, menos “method”.

Lembre-se que o form do html possui uma propriedade method[GET-POST]

O seu método não vai ser chamado mesmo!!! Isso já me aconteceu!!!

Boa sorte!!!

Criado 23 de janeiro de 2007
Ultima resposta 23 de jan. de 2007
Respostas 1
Participantes 2