Yea, I don't think (1) is possible. The validation is still on the fly (that's the way JAXB works), we just store the xml events and replay them if successfull.

For 2, there are a bunch of options (I've read your reply already). You set the property (as a boolean or "true" string in a variety of places. It's just a matter of getting it there.

Couple thoughts:
1) You could create a ServerLifeCycleListener and register it with the manager. Then, you'll get notices when a server starts up. You can record them and wire them into your page or into JMX or something. You're "check box" could just set the validation flag directly on the Server object that is passed in.

2) You could put an Interceptor that runs before the databinding stuff that looks up any custom object or interface or something and calls message.set(Message.SCHEMA_VALIDATION_ENABLED, en.isDoValidation()) The databinding interceptors would get that information without needing to change them. One interesting thing about this: depending on where you stick this in the interceptor chain, you COULD do validation on a per-operation level. The BindingOperationInfo object (stored in the exchange once it's known) could hold your validation object. Your interceptor could also do something like look it up in a JMX control or something.


Dan





On Jun 5, 2008, at 3:39 PM, [EMAIL PROTECTED] wrote:

Hello,

1)
is it somehow possible to get marshaled xml, which was not valid when
schema validation was turned on and fault was generated because of this? In fact i want to log this incorrect XML somehow, because from validation
error message it's sometimes (in very complex schemas) quite hard or
impossible to say what exactly was wrong.
I'm nearly sure that it wasn't possible in 2.1, because validation was
done on the fly as request was serialized. But maybe after Dans fix it's
possible now. .... ok I checked the change, and IMHO also now it's not
simply possible. If i want to do it, i have to hack
AbstractOutDatabindingInterceptor and in case of validation error to write
message once again without validation to temporary XmlStreamWriter and
then store it somewhere, so i can access it later.

2)
it it possible to programatically disable/enable schema validation
individually for each endpoint?

best regards
jano

---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog




Reply via email to