Problemas com o struts

3 respostas
E

bom dia a todos,

estou precisando de ajuda, sou novo em java e estou começando um projeto novo aqui na empresa e estou transformando as páginas html do protótipo em páginas jsp mas quando executo a página esta dando o seguinte erro.

org.apache.jasper.JasperException

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:207)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)

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:534)

root cause

java.lang.NullPointerException

at org.apache.commons.beanutils.PropertyUtils.getSimpleProperty(PropertyUtils.java:1162)

at org.apache.commons.beanutils.PropertyUtils.getNestedProperty(PropertyUtils.java:772)

at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:801)

at org.apache.struts.util.RequestUtils.lookup(RequestUtils.java:952)

at org.apache.struts.taglib.html.BaseFieldTag.doStartTag(BaseFieldTag.java:176)

at org.apache.jsp.FNIG_Funcao_Inclusao_jsp._jspx_meth_html_text_0(FNIG_Funcao_Inclusao_jsp.java:240)

at org.apache.jsp.FNIG_Funcao_Inclusao_jsp._jspx_meth_html_form_0(FNIG_Funcao_Inclusao_jsp.java:171)

at org.apache.jsp.FNIG_Funcao_Inclusao_jsp._jspService(FNIG_Funcao_Inclusao_jsp.java:85)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)

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:534)

não sei pq do NullPointerException, estou desde ontem pesquisando e não consegui resolver, conto com a ajuda da comunidade

o meu struts-config esta assim:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
                               "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

<struts-config>

	<!-- Origens de Dados -->
	<data-sources>
	</data-sources>

	<!-- Beans de Formulário -->
	<form-beans>
			
	    <form-bean name="fnigFuncaoForm" type="org.apache.struts.validator.DynaValidatorActionForm">
	    	<form-property name="cdFuncao" 		type="java.lang.String"/>                                   
	        <form-property name="descFuncao" 	type="java.lang.String"/>                                   
	    </form-bean>	
	
	</form-beans>

	<!-- Exceções Globais -->
	<global-exceptions>
	</global-exceptions>

	<!-- Avanços Globais -->
	<global-forwards>
	</global-forwards>

	<!-- Mapeamentos de Ações -->
	<action-mappings>

	    <action path="/funcao" name="fnigFuncaoForm" scope="session" parameter="parAcao" type="actions.FuncaoAction">
	    	<forward name="incluir" 		path="/fnig/jsp/funcao/FNIG_Funcao_Inclusao.jsp"></forward>
	    </action>
	
	
	</action-mappings>

	<!-- Recursos da Mensagem -->
	<message-resources parameter="fnig.resources.ApplicationResources"/>
	
  <plug-in className="org.apache.struts.validator.ValidatorPlugIn">

    <set-property

        property="pathnames"

        value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>

  </plug-in>	

</struts-config>

minha página esta assim:

<HTML>
  <%@include file="../cabecalho/cabecalho.jsp"%>
  <html:base/>
  <HEAD>
	<TITLE>Controle Acesso / Fun&ccedil;&atilde;o / Incluir</TITLE>
	<META content="text/html; charset=ISO-8859-1" http-equiv=Content-Type>
	<LINK href="../../componentes/estilosApp.css" rel="stylesheet" type="text/css">
	<SCRIPT src="../../componentes/FNIG.js"></SCRIPT>
	<SCRIPT language="JavaScript" src="../../componentes/funcao/funcao_incluir.js"></SCRIPT>
  </HEAD>
  <BODY class="fnd1" onLoad="createTable(oNewForm)">
    <!--<FORM id="frm1">-->
    <html:form name="fnigFuncaoForm" action="funcao.do?parAcao=incluir" method="post" type="org.apache.struts.validator.DynaValidatorForm">
	  <SPAN id="label1"></SPAN>
  	  <TABLE border="0" cellpadding="0" cellspacing="0" width="748">
	    <TR><TD colspan="2" height="5"></TD></TR>
		<TR>
		  <TD width="21"></TD>
		  <TD>
		    <P><FONT class="ttl2">Controle Acesso / Fun&ccedil;&atilde;o</FONT><BR>
			<SPAN class="ttl1">Incluir</SPAN> 
      		</P>
  		 	<!-- Início da codificação do desenvolvedor -->
	        <TABLE width="100%" border="0" cellpadding="0" cellspacing="0" valign="top">
        	  <TR>
          		<TD colspan="2" align="left" class="ttl1">&nbsp;</TD>
        	  </TR>
       	 	  <TR>
         	    <TD colspan="2">
		  	  	  <DIV id="oNewForm"></DIV>
		  	    </TD>
          	  </TR>
        	  <TR>
          		<TD colspan="2" align="left" class="ttl1">&nbsp;</TD>
        	  </TR>
        	  <TR id="linha01">
          		<TD width="16%" align="left" class="ttl1">
          		  <DIV align="right">
              		<P class="lbl1">C&oacute;digo: &nbsp;</P>
              	  </DIV>
              	</TD>
          		<TD width="84%" align="left" class="ttl1">
		  		  <html:text property="cdFuncao"></html:text>
		  		  <!--<INPUT type="text" class="frmTxt1" value="" id="txtCodigo" name="txtCodigo" maxlength="9" style="width:156" size="20">-->
		  		</TD>
        	  </TR>
        	  <TR id="linha02">
          		<TD align="left" class="ttl1">
          		  <DIV align="right">
              		<P class="lbl1">Descri&ccedil;&atilde;o: &nbsp;</P>
                  </DIV>
                </TD>
          		<TD align="left" class="ttl1">

          		  <INPUT type="text" class="frmTxt1" value="" name="txtDescricao" id="txtDescricao" style="width:256" maxlength="255" size="20">
          		</TD>
              </TR>
        	  <TR>
          		<TD colspan="2" align="left" class="ttl1">&nbsp;</TD>
        	  </TR>
        	  <TR>
          	    <TD colspan="2" align="left" class="ttl1">&nbsp;</TD>
              </TR>
        	  <TR id="linha03">
          		<TD colspan="2" align="center" class="ttl1">
		          <INPUT type="BUTTON" value="Incluir" class="bto1" onClick="incluir();">
		  		</TD>
        	  </TR>
        	  <TR>
        		  <TD colspan="2" align="left" class="ttl1">&nbsp;</TD>
       		  </TR>
        	  <TR>
          		<TD colspan="2" align="center" class="ttl1">
          		  <SPAN id="Mensagem"></SPAN>
          		</TD>
        	  </TR>
			</TABLE>
			<!-- Fim da codificação do desenvolvedor -->
		 	<P>&nbsp;</P>
		  </TD>
		</TR>
	  </TABLE>
	<!--</FORM>-->
	</html:form>	
  </BODY>
</HTML>

3 Respostas

wilsonrf

Nem olhei direito seu código, mas só de bater os olhos já vi um possível erro:
a tag html:form não possui o atributo “name”.
Não acredito que o erro seja esse, mas provavelmente vc vai ter problemas futuros ai.

E

pessoal acho que evolui um pouco.
tirei o dynaform e criei uma classe que extend ActionForm e deu certo.
Então eu acho que o meu form não estava sendo criado dinamicamente.
Alguem sabe como faço ou onde configuro isso.

bonfarj

Tem q mover isso pro fórum web, mais fácil te ajudarem lá. :wink:

Criado 2 de março de 2007
Ultima resposta 2 de mar. de 2007
Respostas 3
Participantes 3