Hi,

We recently upgraded from Struts 1.1b1 to the nightly build from 20021105. After a couple of days, we realised that validation wasn't working because of a format change to setting the properties in struts-config.xml for the filenames.

Once we fixed this, validation *sometimes* didn't work.

The symptom is that in the output, where the <html:javascript> tag is placed (with only a formName attribute), we now render a whole bunch of Javascript - the static validation functions only, without the dynamic part, or any start or end tags to hide it.

Now, Browser A (Mozilla 1.1, linux) works on server X, Browser B (IE6 on winXP) fails. However, Browser A fails on server Y, yet Browser B works.

Checking the doStartTag() code showed me that these symptoms occur when the formName definition can't be found in the config data, utilising some locale info. Our logs show that the definition was found at startup, and this definition used to work in the older version of struts.

Seeing a recent problem with a french locale, we checked. Browser A is using the en_US locale, while Browser B uses en_GB. We then swapped the locales used by the browsers, and the failure swaps round too. On checking, server X is in locale en_US while server Y is in locale en_GB. So... the browser/server combination worked when locales matched, and failed otherwise.

We only have a single formset in the validation.xml, unqualified by country or language. However, if we do try to specify country or language, we get a NullPointerException in the commons-validator.

2002-11-13 17:22:24,104 [ main] ERROR he.struts.validator.ValidatorPlugIn -
java.lang.NullPointerException
at org.apache.commons.validator.ValidatorResources.processForms(ValidatorResources.java:355)
at org.apache.commons.validator.ValidatorResources.process(ValidatorResources.java:319)
at org.apache.struts.validator.ValidatorPlugIn.initResources(ValidatorPlugIn.java:234)
at org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:165)
at org.apache.struts.action.ActionServlet.initApplicationPlugIns(ActionServlet.java:983)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:450)
at javax.servlet.GenericServlet.init(GenericServlet.java)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:918)

We have tried deploying the struts-validator example from the same nightly build. At least it's more consistent - it fails in each combination of browser & server.

Seems like a fault. Is this enough to help track it down? Anything else we can do?

Cheers,

Mike



--
To unsubscribe, e-mail: <mailto:struts-user-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:struts-user-help@;jakarta.apache.org>

Reply via email to