You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Metal KoRn <me...@gmail.com> on 2005/05/05 06:56:52 UTC
My OWN VALIDATOR
Hey guys Im having a bit of problems by applying my own validators.
The thing is that I create my validator class, for testing reasons the
calling method returns a false, this only for checkin if the validator
is working good.
But Im getting the following Exception.
Im using Struts 1.2.4 version and my validator rules and validation
XML are as the following
VALIDATOR RULES
<validator name="licencia"
classname="validator.ValidatorLicenciaMaestro"
method="validateLicenciaMaestro"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.licencia"/>
VALIDATION
<field property="licencia" depends="required,licencia">
<arg0 key="licencia"/>
</field>
my ActionForm has a "licencia" property.
Hope some one could help me with this thanx.
THE ERROR:
**********************ENtRa a LEER XML ****************************************
**********************salir a LEER XML ****************************************
May 4, 2005 11:41:58 PM org.apache.struts.validator.ValidatorForm validate
SEVERE: validator.ValidatorLicenciaMaestro.validateLicenciaMaestro(java.lang.Obj
ect, org.apache.commons.validator.ValidatorAction, org.apache.commons.validator.
Field, org.apache.struts.action.ActionMessages, javax.servlet.http.HttpServletRe
quest)
org.apache.commons.validator.ValidatorException: validator.ValidatorLicenciaMaes
tro.validateLicenciaMaestro(java.lang.Object, org.apache.commons.validator.Valid
atorAction, org.apache.commons.validator.Field, org.apache.struts.action.ActionM
essages, javax.servlet.http.HttpServletRequest)
at org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
idatorAction.java:627)
at org.apache.commons.validator.ValidatorAction.executeValidationMethod(
ValidatorAction.java:557)
at org.apache.commons.validator.Field.validateForRule(Field.java:811)
at org.apache.commons.validator.Field.validate(Field.java:890)
at org.apache.commons.validator.Form.validate(Form.java:174)
at org.apache.commons.validator.Validator.validate(Validator.java:367)
at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
:112)
at org.apache.struts.action.RequestProcessor.processValidate(RequestProc
essor.java:921)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:206)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
4)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
0)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:534)
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
Im having a problem with validating a password field .
THIS IS MY CODE infe validator.FMValidator class
public static boolean validatePassword(
Object bean,
ValidatorAction va,
Field field,
ActionMessages errors,
org.apache.commons.validator.Validator validator,
HttpServletRequest request){
//testing message
System.out.println("ENTRO AL VALIDATOR");
return true;
}
MY VALIDATION XML is like this
<field property="password" depends="required,password">
<arg0 key="password"/>
</field>
and the VALIDATOR RULES
<validator name="password"
classname="validator.FMvalidator"
method="validatePassword"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.twofields"/>
IM having this error
May 14, 2005 1:27:36 PM org.apache.struts.validator.ValidatorForm validate
SEVERE: validator.FMvalidator
org.apache.commons.validator.ValidatorException: validator.FMvalidator
at org.apache.commons.validator.ValidatorAction.loadValidationClass(Vali
datorAction.java:646)
at org.apache.commons.validator.ValidatorAction.executeValidationMethod(
ValidatorAction.java:555)
at org.apache.commons.validator.Field.validateForRule(Field.java:811)
at org.apache.commons.validator.Field.validate(Field.java:890)
at org.apache.commons.validator.Form.validate(Form.java:174)
at org.apache.commons.validator.Validator.validate(Validator.java:367)
at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
:112)
at org.apache.struts.action.RequestProcessor.processValidate(RequestProc
essor.java:921)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:206)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
4)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDisp
atcher.java:704)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(Applica
tionDispatcher.java:474)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationD
ispatcher.java:409)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDis
patcher.java:312)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.
java:1056)
at org.apache.struts.action.RequestProcessor.internalModuleRelativeForwa
rd(RequestProcessor.java:994)
at org.apache.struts.action.RequestProcessor.processValidate(RequestProc
essor.java:959)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:206)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
4)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
0)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:534)
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
OK but I really dont know when to use all of them or some of them can
u explain me
thnx
On 5/12/05, Niall Pemberton <ni...@blueyonder.co.uk> wrote:
> This is the same problem you had with your other custom validation method -
> the parameters you've defined in the validation configuration file don't
> match your method signature.
>
> http://www.mail-archive.com/user@struts.apache.org/msg26221.html
> http://www.mail-archive.com/user@struts.apache.org/msg26175.html
>
> Niall
>
> ----- Original Message -----
> From: "Metal KoRn" <me...@gmail.com>
> Sent: Thursday, May 12, 2005 5:42 AM
>
> VALIDATION FAILED
> May 11, 2005 11:29:09 PM org.apache.struts.validator.ValidatorForm validate
> SEVERE: validator.FMValidator.validateList(java.lang.Object,
> org.apache.commons.
> validator.ValidatorAction, org.apache.commons.validator.Field,
> org.apache.struts
> .action.ActionMessages, javax.servlet.http.HttpServletRequest)
> org.apache.commons.validator.ValidatorException:
> validator.FMValidator.validateL
> ist(java.lang.Object, org.apache.commons.validator.ValidatorAction,
> org.apache.c
> ommons.validator.Field, org.apache.struts.action.ActionMessages,
> javax.servlet.h
> ttp.HttpServletRequest)
> at
> org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
> idatorAction.java:627)
> at
> org.apache.commons.validator.ValidatorAction.executeValidationMethod(
> ValidatorAction.java:557)
> at
> org.apache.commons.validator.Field.validateForRule(Field.java:811)
> at org.apache.commons.validator.Field.validate(Field.java:890)
> at org.apache.commons.validator.Form.validate(Form.java:174)
> at
> org.apache.commons.validator.Validator.validate(Validator.java:367)
> at
> org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
> :112)
>
> I want to validate that the lists value of my form arent 0
>
> this is the validation method in my FMValidation class
>
> public static boolean validateList(
> Object bean,
> ValidatorAction va,
> Field field,
> ActionErrors errors,
> HttpServletRequest request) {
>
> the validation rules is this
> <!-- VALIDADOR DE LOS VALORES DE LAS LISTAS-->
> <validator name="listas"
> classname="validator.FMValidator"
> method="validateList"
> methodParams="java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> org.apache.commons.validator.Validator,
> javax.servlet.http.HttpServletRequest"
> depends=""
> msg="errors.list"/>
>
> and my validation is the following (NOTE: the list name Im validating
> is escuela)
>
> <field property="escuela" depends="listas">
> <arg0 key="escuela"/>
> </field>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Niall Pemberton <ni...@blueyonder.co.uk>.
This is the same problem you had with your other custom validation method -
the parameters you've defined in the validation configuration file don't
match your method signature.
http://www.mail-archive.com/user@struts.apache.org/msg26221.html
http://www.mail-archive.com/user@struts.apache.org/msg26175.html
Niall
----- Original Message -----
From: "Metal KoRn" <me...@gmail.com>
Sent: Thursday, May 12, 2005 5:42 AM
VALIDATION FAILED
May 11, 2005 11:29:09 PM org.apache.struts.validator.ValidatorForm validate
SEVERE: validator.FMValidator.validateList(java.lang.Object,
org.apache.commons.
validator.ValidatorAction, org.apache.commons.validator.Field,
org.apache.struts
.action.ActionMessages, javax.servlet.http.HttpServletRequest)
org.apache.commons.validator.ValidatorException:
validator.FMValidator.validateL
ist(java.lang.Object, org.apache.commons.validator.ValidatorAction,
org.apache.c
ommons.validator.Field, org.apache.struts.action.ActionMessages,
javax.servlet.h
ttp.HttpServletRequest)
at
org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
idatorAction.java:627)
at
org.apache.commons.validator.ValidatorAction.executeValidationMethod(
ValidatorAction.java:557)
at
org.apache.commons.validator.Field.validateForRule(Field.java:811)
at org.apache.commons.validator.Field.validate(Field.java:890)
at org.apache.commons.validator.Form.validate(Form.java:174)
at
org.apache.commons.validator.Validator.validate(Validator.java:367)
at
org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
:112)
I want to validate that the lists value of my form arent 0
this is the validation method in my FMValidation class
public static boolean validateList(
Object bean,
ValidatorAction va,
Field field,
ActionErrors errors,
HttpServletRequest request) {
the validation rules is this
<!-- VALIDADOR DE LOS VALORES DE LAS LISTAS-->
<validator name="listas"
classname="validator.FMValidator"
method="validateList"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.list"/>
and my validation is the following (NOTE: the list name Im validating
is escuela)
<field property="escuela" depends="listas">
<arg0 key="escuela"/>
</field>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
Hi Im having a problem with validators
this is the error
VALIDATION FAILED
May 11, 2005 11:29:09 PM org.apache.struts.validator.ValidatorForm validate
SEVERE: validator.FMValidator.validateList(java.lang.Object, org.apache.commons.
validator.ValidatorAction, org.apache.commons.validator.Field, org.apache.struts
.action.ActionMessages, javax.servlet.http.HttpServletRequest)
org.apache.commons.validator.ValidatorException: validator.FMValidator.validateL
ist(java.lang.Object, org.apache.commons.validator.ValidatorAction, org.apache.c
ommons.validator.Field, org.apache.struts.action.ActionMessages, javax.servlet.h
ttp.HttpServletRequest)
at org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
idatorAction.java:627)
at org.apache.commons.validator.ValidatorAction.executeValidationMethod(
ValidatorAction.java:557)
at org.apache.commons.validator.Field.validateForRule(Field.java:811)
at org.apache.commons.validator.Field.validate(Field.java:890)
at org.apache.commons.validator.Form.validate(Form.java:174)
at org.apache.commons.validator.Validator.validate(Validator.java:367)
at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
:112)
at org.apache.struts.action.RequestProcessor.processValidate(RequestProc
essor.java:921)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:206)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
4)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
0)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:534)
I want to validate that the lists value of my form arent 0
this is the validation method in my FMValidation class
public static boolean validateList(
Object bean,
ValidatorAction va,
Field field,
ActionErrors errors,
HttpServletRequest request) {
String value = ValidatorUtils.getValueAsString(bean,
field.getProperty());
System.out.println("VALOR:["+value+"]");
if (!GenericValidator.isBlankOrNull(value)) {
try {
if (value.equalsIgnoreCase("0")) {
System.out.println("VALOR 0");
errors.add(field.getKey(),
Resources.getActionMessage(request, va, field));
return false;
}
} catch (Exception e) {
errors.add(field.getKey(),
Resources.getActionMessage(request, va, field));
return false;
}
}
return true;
}
the validation rules is this
<!-- VALIDADOR DE LOS VALORES DE LAS LISTAS-->
<validator name="listas"
classname="validator.FMValidator"
method="validateList"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.list"/>
and my validation is the following (NOTE: the list name Im validating
is escuela)
<field property="escuela" depends="listas">
<arg0 key="escuela"/>
</field>
Can u help me please??
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Niall Pemberton <ni...@blueyonder.co.uk>.
You should have declared them in a <message-resources> element in your
struts-config.xml - if you have it will find them.
Niall
----- Original Message -----
From: "Metal KoRn" <me...@gmail.com>
Sent: Friday, May 06, 2005 3:48 AM
OK I got it but i have a doubt with this
errors.add(field.getKey(), Resources.getActionMessage(request, va, field));
Where is declared the object Resources Im getting a cannot resolve
symbol with the method getActionMessage
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
OK I got it but i have a doubt with this
errors.add(field.getKey(), Resources.getActionMessage(request, va, field));
Where is declared the object Resources Im getting a cannot resolve
symbol with the method getActionMessage
On 5/5/05, Niall Pemberton <ni...@blueyonder.co.uk> wrote:
> In your validateLicenciaMaestro() you need to add a message to the
> ActionMessages object (if validation fails) - look at Strut's FieldChecks
> class if you want an example.
>
> Niall
> ----- Original Message -----
> From: "Metal KoRn" <me...@gmail.com>
> Sent: Friday, May 06, 2005 3:29 AM
>
> IT WORKS , but im not getting the error sent by the validator
>
> On 5/5/05, Niall Pemberton <ni...@blueyonder.co.uk> wrote:
> > As I said the method signatures don't match - you're missing the
> "Validator"
> > parameter. Change your config file to the following:
> >
> > <validator name="licencia"
> > classname="validator.ValidatorLicenciaMaestro"
> > method="validateLicenciaMaestro"
> > methodParams="java.lang.Object,
> > org.apache.commons.validator.ValidatorAction,
> > org.apache.commons.validator.Field,
> > org.apache.struts.action.ActionMessages,
> > org.apache.commons.validator.Validator,
> > javax.servlet.http.HttpServletRequest"
> > depends=""
> > msg="errors.licencia"/>
> >
> > Niall
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Niall Pemberton <ni...@blueyonder.co.uk>.
In your validateLicenciaMaestro() you need to add a message to the
ActionMessages object (if validation fails) - look at Strut's FieldChecks
class if you want an example.
Niall
----- Original Message -----
From: "Metal KoRn" <me...@gmail.com>
Sent: Friday, May 06, 2005 3:29 AM
IT WORKS , but im not getting the error sent by the validator
On 5/5/05, Niall Pemberton <ni...@blueyonder.co.uk> wrote:
> As I said the method signatures don't match - you're missing the
"Validator"
> parameter. Change your config file to the following:
>
> <validator name="licencia"
> classname="validator.ValidatorLicenciaMaestro"
> method="validateLicenciaMaestro"
> methodParams="java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> org.apache.commons.validator.Validator,
> javax.servlet.http.HttpServletRequest"
> depends=""
> msg="errors.licencia"/>
>
> Niall
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
IT WORKS , but im not getting the error sent by the validator
On 5/5/05, Niall Pemberton <ni...@blueyonder.co.uk> wrote:
> As I said the method signatures don't match - you're missing the "Validator"
> parameter. Change your config file to the following:
>
> <validator name="licencia"
> classname="validator.ValidatorLicenciaMaestro"
> method="validateLicenciaMaestro"
> methodParams="java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> org.apache.commons.validator.Validator,
> javax.servlet.http.HttpServletRequest"
> depends=""
> msg="errors.licencia"/>
>
> Niall
>
> ----- Original Message -----
> From: "Metal KoRn" <me...@gmail.com>
> Sent: Friday, May 06, 2005 2:50 AM
>
> This is the code for the validator form
>
> public class ValidatorLicenciaMaestro implements Serializable{
>
> public static boolean validateLicenciaMaestro(Object
> bean,ValidatorAction va, Field field,ActionMessages
> errors,org.apache.commons.validator.Validator
> validator,HttpServletRequest request) {
>
> String value = null;
> if (isString(bean)) {
> value = (String) bean;
> } else {
> value = ValidatorUtils.getValueAsString(bean,
> field.getProperty());
> }
>
> System.out.println("This is value for validator "+value);
>
> return false;
>
> }
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Niall Pemberton <ni...@blueyonder.co.uk>.
As I said the method signatures don't match - you're missing the "Validator"
parameter. Change your config file to the following:
<validator name="licencia"
classname="validator.ValidatorLicenciaMaestro"
method="validateLicenciaMaestro"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.licencia"/>
Niall
----- Original Message -----
From: "Metal KoRn" <me...@gmail.com>
Sent: Friday, May 06, 2005 2:50 AM
This is the code for the validator form
public class ValidatorLicenciaMaestro implements Serializable{
public static boolean validateLicenciaMaestro(Object
bean,ValidatorAction va, Field field,ActionMessages
errors,org.apache.commons.validator.Validator
validator,HttpServletRequest request) {
String value = null;
if (isString(bean)) {
value = (String) bean;
} else {
value = ValidatorUtils.getValueAsString(bean,
field.getProperty());
}
System.out.println("This is value for validator "+value);
return false;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
This is the code for the validator form
public class ValidatorLicenciaMaestro implements Serializable{
public static boolean validateLicenciaMaestro(Object
bean,ValidatorAction va, Field field,ActionMessages
errors,org.apache.commons.validator.Validator
validator,HttpServletRequest request) {
String value = null;
if (isString(bean)) {
value = (String) bean;
} else {
value = ValidatorUtils.getValueAsString(bean, field.getProperty());
}
System.out.println("This is value for validator "+value);
return false;
}
/**
* Return <code>true</code> if the specified object is a String
or a <code>null</code>
* value.
*
* @param o Object to be tested
* @return The string value
*/
protected static boolean isString(Object o) {
return (o == null) ? true : String.class.isInstance(o);
}
}
On 5/5/05, Niall Pemberton <ni...@blueyonder.co.uk> wrote:
> Looks like the method signature you've defined in the validaot-rules.xml
> doesn't match whats actually in your java class. How about you show us
> validateLicenciaMaestro() method in the ValidatorLicenciaMaestro class?
>
> ----- Original Message -----
> From: "Metal KoRn" <me...@gmail.com>
> To: <us...@struts.apache.org>
> Sent: Thursday, May 05, 2005 5:56 AM
> Subject: My OWN VALIDATOR
>
> Hey guys Im having a bit of problems by applying my own validators.
>
> The thing is that I create my validator class, for testing reasons the
> calling method returns a false, this only for checkin if the validator
> is working good.
>
> But Im getting the following Exception.
>
> Im using Struts 1.2.4 version and my validator rules and validation
> XML are as the following
>
> VALIDATOR RULES
> <validator name="licencia"
> classname="validator.ValidatorLicenciaMaestro"
> method="validateLicenciaMaestro"
> methodParams="java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> javax.servlet.http.HttpServletRequest"
> depends=""
> msg="errors.licencia"/>
>
> VALIDATION
> <field property="licencia" depends="required,licencia">
> <arg0 key="licencia"/>
> </field>
>
> my ActionForm has a "licencia" property.
>
> Hope some one could help me with this thanx.
>
> THE ERROR:
> **********************ENtRa a LEER XML
> ****************************************
> **********************salir a LEER XML
> ****************************************
> May 4, 2005 11:41:58 PM org.apache.struts.validator.ValidatorForm validate
> SEVERE:
> validator.ValidatorLicenciaMaestro.validateLicenciaMaestro(java.lang.Obj
> ect, org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.
> Field, org.apache.struts.action.ActionMessages,
> javax.servlet.http.HttpServletRe
> quest)
> org.apache.commons.validator.ValidatorException:
> validator.ValidatorLicenciaMaes
> tro.validateLicenciaMaestro(java.lang.Object,
> org.apache.commons.validator.Valid
> atorAction, org.apache.commons.validator.Field,
> org.apache.struts.action.ActionM
> essages, javax.servlet.http.HttpServletRequest)
> at
> org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
> idatorAction.java:627)
> at
> org.apache.commons.validator.ValidatorAction.executeValidationMethod(
> ValidatorAction.java:557)
> at
> org.apache.commons.validator.Field.validateForRule(Field.java:811)
> at org.apache.commons.validator.Field.validate(Field.java:890)
> at org.apache.commons.validator.Form.validate(Form.java:174)
> at
> org.apache.commons.validator.Validator.validate(Validator.java:367)
> at
> org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
> :112)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Metal KoRn <me...@gmail.com>.
Hey guys Im having a bit of problems by applying my own validators.
The thing is that I create my validator class, for testing reasons the
calling method returns a false, this only for checkin if the validator
is working good.
But Im getting the following Exception.
Im using Struts 1.2.4 version and my validator rules and validation
XML are as the following
VALIDATOR RULES
<validator name="licencia"
classname="validator.ValidatorLicenciaMaestro"
method="validateLicenciaMaestro"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.licencia"/>
VALIDATION
<field property="licencia" depends="required,licencia">
<arg0 key="licencia"/>
</field>
my ActionForm has a "licencia" property.
Hope some one could help me with this thanx.
THE ERROR:
**********************ENtRa a LEER XML ****************************************
**********************salir a LEER XML ****************************************
May 4, 2005 11:41:58 PM org.apache.struts.validator.ValidatorForm validate
SEVERE: validator.ValidatorLicenciaMaestro.validateLicenciaMaestro(java.lang.Obj
ect, org.apache.commons.validator.ValidatorAction, org.apache.commons.validator.
Field, org.apache.struts.action.ActionMessages, javax.servlet.http.HttpServletRe
quest)
org.apache.commons.validator.ValidatorException: validator.ValidatorLicenciaMaes
tro.validateLicenciaMaestro(java.lang.Object, org.apache.commons.validator.Valid
atorAction, org.apache.commons.validator.Field, org.apache.struts.action.ActionM
essages, javax.servlet.http.HttpServletRequest)
at org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
idatorAction.java:627)
at org.apache.commons.validator.ValidatorAction.executeValidationMethod(
ValidatorAction.java:557)
at org.apache.commons.validator.Field.validateForRule(Field.java:811)
at org.apache.commons.validator.Field.validate(Field.java:890)
at org.apache.commons.validator.Form.validate(Form.java:174)
at org.apache.commons.validator.Validator.validate(Validator.java:367)
at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
:112)
at org.apache.struts.action.RequestProcessor.processValidate(RequestProc
essor.java:921)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:206)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
4)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
0)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:534)
THE CLASS CODE IS THE FOLLOWING
public class ValidatorLicenciaMaestro implements Serializable{
public static boolean validateLicenciaMaestro(Object
bean,ValidatorAction va, Field field,ActionMessages
errors,org.apache.commons.validator.Validator
validator,HttpServletRequest request) {
String value = null;
if (isString(bean)) {
value = (String) bean;
} else {
value = ValidatorUtils.getValueAsString(bean, field.getProperty());
}
System.out.println("This is value for validator "+value);
return false;
}
/**
* Return <code>true</code> if the specified object is a String
or a <code>null</code>
* value.
*
* @param o Object to be tested
* @return The string value
*/
protected static boolean isString(Object o) {
return (o == null) ? true : String.class.isInstance(o);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: My OWN VALIDATOR
Posted by Niall Pemberton <ni...@blueyonder.co.uk>.
Looks like the method signature you've defined in the validaot-rules.xml
doesn't match whats actually in your java class. How about you show us
validateLicenciaMaestro() method in the ValidatorLicenciaMaestro class?
----- Original Message -----
From: "Metal KoRn" <me...@gmail.com>
To: <us...@struts.apache.org>
Sent: Thursday, May 05, 2005 5:56 AM
Subject: My OWN VALIDATOR
Hey guys Im having a bit of problems by applying my own validators.
The thing is that I create my validator class, for testing reasons the
calling method returns a false, this only for checkin if the validator
is working good.
But Im getting the following Exception.
Im using Struts 1.2.4 version and my validator rules and validation
XML are as the following
VALIDATOR RULES
<validator name="licencia"
classname="validator.ValidatorLicenciaMaestro"
method="validateLicenciaMaestro"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
javax.servlet.http.HttpServletRequest"
depends=""
msg="errors.licencia"/>
VALIDATION
<field property="licencia" depends="required,licencia">
<arg0 key="licencia"/>
</field>
my ActionForm has a "licencia" property.
Hope some one could help me with this thanx.
THE ERROR:
**********************ENtRa a LEER XML
****************************************
**********************salir a LEER XML
****************************************
May 4, 2005 11:41:58 PM org.apache.struts.validator.ValidatorForm validate
SEVERE:
validator.ValidatorLicenciaMaestro.validateLicenciaMaestro(java.lang.Obj
ect, org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.
Field, org.apache.struts.action.ActionMessages,
javax.servlet.http.HttpServletRe
quest)
org.apache.commons.validator.ValidatorException:
validator.ValidatorLicenciaMaes
tro.validateLicenciaMaestro(java.lang.Object,
org.apache.commons.validator.Valid
atorAction, org.apache.commons.validator.Field,
org.apache.struts.action.ActionM
essages, javax.servlet.http.HttpServletRequest)
at
org.apache.commons.validator.ValidatorAction.loadValidationMethod(Val
idatorAction.java:627)
at
org.apache.commons.validator.ValidatorAction.executeValidationMethod(
ValidatorAction.java:557)
at
org.apache.commons.validator.Field.validateForRule(Field.java:811)
at org.apache.commons.validator.Field.validate(Field.java:890)
at org.apache.commons.validator.Form.validate(Form.java:174)
at
org.apache.commons.validator.Validator.validate(Validator.java:367)
at
org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java
:112)
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org