I'm getting the same problem. The problem occurs in the
ValidatorFileParser.addValidatorConfigs method on :

objectFactory.buildValidator(className, new HashMap(), null);

The objectFactory originates from ObjectFactory.getObjectFactory()
where it is set by some Guice DI:

@Inject
   public static void setObjectFactory(ObjectFactory factory) {
       thSelf.set(factory);
   }

My clue of injection stops right around here, so I'll see if anyone
else bites. Could it be that Spring's OF has not been instansiated?

Kind regards

Thomas Ferris Nicolaisen

Stacktrace below:

java.lang.ExceptionInInitializerError
        at 
com.opensymphony.xwork2.validator.ValidatorFileParser.addValidatorConfigs(ValidatorFileParser.java:177)
        at 
com.opensymphony.xwork2.validator.ValidatorFileParser.parseActionValidatorConfigs(ValidatorFileParser.java:72)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.loadFile(AnnotationActionValidatorManager.java:357)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.buildClassValidatorConfigs(AnnotationActionValidatorManager.java:248)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.buildValidatorConfigs(AnnotationActionValidatorManager.java:336)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.getValidators(AnnotationActionValidatorManager.java:69)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.validate(AnnotationActionValidatorManager.java:134)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.validate(AnnotationActionValidatorManager.java:109)
        at 
com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.validate(AnnotationActionValidatorManager.java:96)
        at mailreader2.RegistrationTest.testExecute(RegistrationTest.java:19)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
org.junit.internal.runners.TestMethodRunner.executeMethodBody(TestMethodRunner.java:99)
        at 
org.junit.internal.runners.TestMethodRunner.runUnprotected(TestMethodRunner.java:81)
        at 
org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)
        at 
org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.java:75)
        at 
org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.java:45)
        at 
org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:71)
        at 
org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:35)
        at 
org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42)
        at 
org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)
        at 
org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52)
        at 
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
        at 
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: Unable to load validator class
com.opensymphony.xwork2.validator.validators.RequiredFieldValidator -
validator - 
file:///U:/projects/struts2/apps/mailreader/com/opensymphony/xwork2/validator/validators/default.xml:3:109
        at 
com.opensymphony.xwork2.validator.ValidatorFileParser.parseValidatorDefinitions(ValidatorFileParser.java:128)
        at 
com.opensymphony.xwork2.validator.ValidatorFileParser.parseValidatorDefinitions(ValidatorFileParser.java:99)
        at 
com.opensymphony.xwork2.validator.ValidatorFactory.parseValidators(ValidatorFactory.java:314)
        at 
com.opensymphony.xwork2.validator.ValidatorFactory.<clinit>(ValidatorFactory.java:220)
        ... 30 more
Caused by: java.lang.NullPointerException
        at 
com.opensymphony.xwork2.validator.ValidatorFileParser.parseValidatorDefinitions(ValidatorFileParser.java:125)
        ... 33 more



On 3/23/07, k hall <[EMAIL PROTECTED]> wrote:

I really like Struts 2 but has anyone had any success in testing Struts 2's
action validation logic?

http://struts.apache.org/2.x/docs/how-do-i-unit-test-my-actions-validation-logic.html

I'd like to test the validation messages I receive but get an exception
where the objectFactory is null. I've tried with putting in my own
validators.xml, but it gets hung up on the ObjectFactory and I really can't
figure out how to correct that from a Unit Test.

Any ideas to fix this Struts 2 gurus?

Thanks.

--
View this message in context: 
http://www.nabble.com/Struts-2-and-Validation-Testing-tf3451623.html#a9628117
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to