Hii Guys,

i’am stuck with Validation in Struts2 using struts2-spring plugin. 
struts version : 2.5.22
spring version : 5.2.1.RELEASE

my validators.xml in classpath:

<?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="conversion" 
class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/>
</validators>


my struts.xml config form constant Struts-spring:


    <constant name="struts.devMode" value="true"/>
    <constant name="struts.objectFactory" value="spring" />
    <constant name="struts.objectFactory.spring.autoWire" value="name" />


my validation method using Annotation


        //validation
        @Validations( requiredFields = {
                        @RequiredFieldValidator(type = ValidatorType.SIMPLE, 
fieldName = "parameterString1", message = "You must enter a value for field.")
                        }
        )
        @Action(value = "testingValidation", results = {
                        @Result(name = "success", location = 
"/pages/blank.jsp"),
                        @Result(name = "input", location = "/pages/blank.jsp"),
                        @Result(name = "error", location = "/pages/blank.jsp") 
},
        interceptorRefs = {
                        @InterceptorRef("validation")
        })
        public String testingValidation() {
                List<String> a = new ArrayList<String>();
                a.add("salah field");
                setActionMessages(a);
                return SUCCESS;
        }

when i hit the URL http://localhost:8080/baseapp/example/testingValidation 
<http://localhost:8080/baseapp/example/testingValidation>(without parameter) it 
does’t show my error message, the error should shown using <s:actionerror/> tag 
in JSP.

when i trace the log, here i found:


[http-nio-8080-exec-6] DEBUG 
com.opensymphony.xwork2.validator.ValidationInterceptor - Validating 
/example/testingValidation with method testingValidation.
[http-nio-8080-exec-6] TRACE 
org.springframework.beans.factory.support.DefaultListableBeanFactory - Not 
autowiring property 'textProviderFactory' of bean 
'com.opensymphony.xwork2.validator.validators.RequiredFieldValidator' by name: 
no matching bean found
[http-nio-8080-exec-6] TRACE 
org.springframework.beans.factory.support.DefaultListableBeanFactory - Not 
autowiring property 'validatorContext' of bean 
'com.opensymphony.xwork2.validator.validators.RequiredFieldValidator' by name: 
no matching bean found
[http-nio-8080-exec-6] TRACE 
org.springframework.beans.factory.support.DefaultListableBeanFactory - Not 
autowiring property 'valueStack' of bean 
'com.opensymphony.xwork2.validator.validators.RequiredFieldValidator' by name: 
no matching bean found

the spring nt autowiring validation.







Reply via email to