Este é um post disponível para assinantes MVPVideo: Desvendando o Struts 2 - Aula 4 - Validação de dados
Nesta vídeo aula estaremos abordando o assunto de validação do lado cliente.
Atenção! Este vídeo necessita do aplicativo DevMedia Player
para ser executada. Para fazer o download do player basta acessar
http://www.devmedia.com.br/player
Título: Desvendando o Struts 2 - Aula 4 -
Validação de dados
Tempo: 00:14:00
Mini-Resumo: Nesta vídeo aula
estaremos abordando o assunto de validação do lado cliente, uma técnica muito
importante para os desenvolvedores que desejam se precaver tanto do lado do
browser quanto do lado do servidor. Abordamos passo a passo como ativar a
validação cliente para o Struts2, abordaremos também o código gerado pelo
struts com uma visão critica do problema.
Tecnologias Utilizadas: Struts 2.1,
Netbeans 6.7, Apache Tomcat
Exemplos construídos: Detalhamos a
criação de um exemplo com validação normal e partimos para ativação da
validação cliente, vídeo aula indispensável para quem trabalha com javascript
do lado cliente para validação.
Palavras chaves: struts struts2 web
java action framework tomcat netbeans

2 COMENTÁRIOS
validate
="true" >12/07/2010 10:55:38 freemarker.log.JDK14LoggerFactory$JDK14Logger error
SEVERE:
Method public java.util.List org.apache.struts2.components.Form.getValidators(java.lang.String) threw an exception when invoked on org.apache.struts2.components.Form@fa578a
The problematic instruction:
----------
==> list tag.getValidators("${tagName}") as validator [on line 46, column 9 in template/xhtml/form-close-validate.ftl]
in include "/${parameters.templateDir}/xhtml/form-close-validate.ftl" [on line 25, column 1 in template/xhtml/form-close.ftl]
----------
Java backtrace for programmers:
----------
freemarker.template.TemplateModelException
: Method public java.util.List org.apache.struts2.components.Form.getValidators(java.lang.String) threw an exception when invoked on org.apache.struts2.components.Form@fa578aat freemarker.ext.beans.SimpleMethodModel.exec(
SimpleMethodModel.java:130)at freemarker.core.MethodCall._getAsTemplateModel(
MethodCall.java:93)at freemarker.core.Expression.getAsTemplateModel(
Expression.java:89)at freemarker.core.IteratorBlock.accept(
IteratorBlock.java:94)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.IteratorBlock$Context.runLoop(
IteratorBlock.java:167)at freemarker.core.Environment.visit(
Environment.java:416)at freemarker.core.IteratorBlock.accept(
IteratorBlock.java:102)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.MixedContent.accept(
MixedContent.java:92)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.ConditionalBlock.accept(
ConditionalBlock.java:79)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.MixedContent.accept(
MixedContent.java:92)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.Environment.include(
Environment.java:1482)at freemarker.core.Include.accept(
Include.java:169)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.MixedContent.accept(
MixedContent.java:92)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.Environment.process(
Environment.java:189)at freemarker.template.Template.process(
Template.java:237)at org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(
FreemarkerTemplateEngine.java:182)at org.apache.struts2.components.UIBean.mergeTemplate(
UIBean.java:559)at org.apache.struts2.components.UIBean.end(
UIBean.java:513)at org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(
ComponentTagSupport.java:42)at org.apache.jsp.people_jsp._jspx_meth_s_005fform_005f0(
people_jsp.java:137)at org.apache.jsp.people_jsp._jspService(
people_jsp.java:74)at org.apache.jasper.runtime.HttpJspBase.service(
HttpJspBase.java:98)at javax.servlet.http.HttpServlet.service(
HttpServlet.java:729)at org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:331)at org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:329)at org.apache.jasper.servlet.JspServlet.service(
JspServlet.java:265)at javax.servlet.http.HttpServlet.service(
HttpServlet.java:729)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:269)at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:188)at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(
FilterDispatcher.java:389)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:215)at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:188)at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:213)at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:172)at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:127)at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:117)at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:108)at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:174)at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java:873)at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(
Http11BaseProtocol.java:665)at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
PoolTcpEndpoint.java:528)at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
LeaderFollowerWorkerThread.java:81)at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
ThreadPool.java:689)at java.lang.Thread.run(
Thread.java:619)Caused by:
java.lang.NullPointerExceptionat com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.buildValidatorKey(
AnnotationActionValidatorManager.java:201)at com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.getValidators(
AnnotationActionValidatorManager.java:58)at com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.getValidators(
AnnotationActionValidatorManager.java:54)at org.apache.struts2.components.Form.getValidators(
Form.java:264)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 freemarker.ext.beans.BeansWrapper.invokeMethod(
BeansWrapper.java:840)at freemarker.ext.beans.SimpleMethodModel.exec(
SimpleMethodModel.java:106)... 50 more
12/07/2010 10:55:38 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.NullPointerException
at com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.buildValidatorKey(
AnnotationActionValidatorManager.java:201)at com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.getValidators(
AnnotationActionValidatorManager.java:58)at com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.getValidators(
AnnotationActionValidatorManager.java:54)at org.apache.struts2.components.Form.getValidators(
Form.java:264)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 freemarker.ext.beans.BeansWrapper.invokeMethod(
BeansWrapper.java:840)at freemarker.ext.beans.SimpleMethodModel.exec(
SimpleMethodModel.java:106)at freemarker.core.MethodCall._getAsTemplateModel(
MethodCall.java:93)at freemarker.core.Expression.getAsTemplateModel(
Expression.java:89)at freemarker.core.IteratorBlock.accept(
IteratorBlock.java:94)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.IteratorBlock$Context.runLoop(
IteratorBlock.java:167)at freemarker.core.Environment.visit(
Environment.java:416)at freemarker.core.IteratorBlock.accept(
IteratorBlock.java:102)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.MixedContent.accept(
MixedContent.java:92)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.ConditionalBlock.accept(
ConditionalBlock.java:79)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.MixedContent.accept(
MixedContent.java:92)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.Environment.include(
Environment.java:1482)at freemarker.core.Include.accept(
Include.java:169)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.MixedContent.accept(
MixedContent.java:92)at freemarker.core.Environment.visit(
Environment.java:209)at freemarker.core.Environment.process(
Environment.java:189)at freemarker.template.Template.process(
Template.java:237)at org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(
FreemarkerTemplateEngine.java:182)at org.apache.struts2.components.UIBean.mergeTemplate(
UIBean.java:559)at org.apache.struts2.components.UIBean.end(
UIBean.java:513)at org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(
ComponentTagSupport.java:42)at org.apache.jsp.people_jsp._jspx_meth_s_005fform_005f0(
people_jsp.java:137)at org.apache.jsp.people_jsp._jspService(
people_jsp.java:74)at org.apache.jasper.runtime.HttpJspBase.service(
HttpJspBase.java:98)at javax.servlet.http.HttpServlet.service(
HttpServlet.java:729)at org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:331)at org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:329)at org.apache.jasper.servlet.JspServlet.service(
JspServlet.java:265)at javax.servlet.http.HttpServlet.service(
HttpServlet.java:729)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:269)at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:188)at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(
FilterDispatcher.java:389)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:215)at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:188)at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:213)at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:172)at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:127)at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:117)at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:108)at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:174)at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java:873)at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(
Http11BaseProtocol.java:665)at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
PoolTcpEndpoint.java:528)at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
LeaderFollowerWorkerThread.java:81)at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
ThreadPool.java:689)at java.lang.Thread.run(
Thread.java:619)Valeu !
Está faltando a biblioteca do freemaker , que está no dir lib do struts2 :D
Obrigadao !
Curso(s):
Formações:
Space do autor

download

1
0
