Yes I reenabled DMI but javascript validation is not working when using DMI. If you use action!method the javascript field validations won't appear.
On Sun, Sep 22, 2013 at 2:47 AM, Chris Pratt <thechrispr...@gmail.com>wrote: > I believe one of the recent changes was to change the default to disabling > DMI, but you can re-enable it if you understand the risks. > (*Chris*) > > > On Sat, Sep 21, 2013 at 6:20 PM, Néstor Boscán <nesto...@gmail.com> wrote: > > > Hi > > > > <s:form name="login" method="post" action="login!login.action" > > validate="true"> > > <s:hidden name="request_id" value="%{#parameters.request_id}"/> > > <s:textfield name="username" key="username" size="25" > > cssClass="mystyle1"/> > > <s:password name="password" key="password" size="25" > > cssClass="mystyle1"/> > > </s:form> > > > > It looks like this version of Struts 2 doesn't like the Dynamic Method > > Invocation in login!login.action. If I don't use DMI it works. Older > > versions of the framework worked with DMI. > > > > Regards, > > > > Néstor > > > > > > On Sat, Sep 21, 2013 at 5:24 PM, <jlm...@gmail.com> wrote: > > > > > Can you provide the jsp snipset for the form? > > > Sent via BlackBerry from T-Mobile > > > > > > -----Original Message----- > > > From: Néstor Boscán <nesto...@gmail.com> > > > Date: Sat, 21 Sep 2013 16:15:23 > > > To: Struts Users Mailing List<user@struts.apache.org> > > > Reply-To: "Struts Users Mailing List" <user@struts.apache.org> > > > Subject: S2: Not generating javascript validation > > > > > > Hi > > > > > > I'm using the latest 2.3.15.2 version of struts 2 on weblogic 10.3.6. > > This > > > are my files: > > > > > > LoginAction-validation.xml: > > > > > > <!DOCTYPE validators PUBLIC > > > "-//Apache Struts//XWork Validator 1.0.3//EN" > > > "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> > > > <validators> > > > <field name="username"> > > > <field-validator type="required"> > > > <message>El usuario es requerido</message> > > > </field-validator> > > > </field> > > > <field name="password"> > > > <field-validator type="required"> > > > <message>La contrasenia es requerida</message> > > > </field-validator> > > > </field> > > > </validators> > > > > > > validators.xml: > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > > <!DOCTYPE validators PUBLIC > > > "-//Apache Struts//XWork Validator Definition 1.0//EN" > > > " > > http://struts.apache.org/dtds/xwork-validator-definition-1.0.dtd > > > "> > > > <validators> > > > <validator name="required" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/> > > > <validator name="requiredstring" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/> > > > <validator name="int" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/> > > > <validator name="long" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.LongRangeFieldValidator"/> > > > <validator name="short" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.ShortRangeFieldValidator"/> > > > <validator name="double" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator"/> > > > <validator name="date" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator"/> > > > <validator name="expression" > > > > > > class="com.opensymphony.xwork2.validator.validators.ExpressionValidator"/> > > > <validator name="fieldexpression" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/> > > > <validator name="email" > > > class="com.opensymphony.xwork2.validator.validators.EmailValidator"/> > > > <validator name="url" > > > class="com.opensymphony.xwork2.validator.validators.URLValidator"/> > > > <validator name="visitor" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.VisitorFieldValidator"/> > > > <validator name="conversion" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/> > > > <validator name="stringlength" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/> > > > <validator name="regex" > > > > > > class="com.opensymphony.xwork2.validator.validators.RegexFieldValidator"/> > > > <validator name="conditionalvisitor" > > > > > > > > > class="com.opensymphony.xwork2.validator.validators.ConditionalVisitorFieldValidator"/> > > > </validators> > > > > > > The form tag has validate="true". > > > > > > When I generate the login page I get: > > > > > > <script type="text/javascript"> > > > function validateForm_login() { > > > var getFieldValue = function(field) { > > > var type = field.type ? field.type : field[0].type; > > > if (type == 'select-one' || type == 'select-multiple') { > > > return (field.selectedIndex == -1 ? "" : > > > field.options[field.selectedIndex].value); > > > } else if (type == 'checkbox' || type == 'radio') { > > > if (!field.length) { > > > field = [field]; > > > } > > > for (var i = 0; i < field.length; i++) { > > > if (field[i].checked) { > > > return field[i].value; > > > } > > > } > > > return ""; > > > } > > > return field.value; > > > } > > > form = document.getElementById("login"); > > > clearErrorMessages(form); > > > clearErrorLabels(form); > > > > > > var errors = false; > > > var continueValidation = true; > > > > > > return !errors; > > > } > > > </script> > > > > > > It's like the validation framework is not detecting the fields. > > > > > > Regards, > > > > > > Nestor Boscan > > > > > > > > >