You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2009/10/23 16:44:18 UTC
svn commit: r829079 - in
/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor:
HtmlCoreComponentsValidationExceptionInterceptor.java
ValidationInterceptor.java
Author: gpetracek
Date: Fri Oct 23 14:44:16 2009
New Revision: 829079
URL: http://svn.apache.org/viewvc?rev=829079&view=rev
Log:
EXTVAL-44 minor changes
Modified:
myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/HtmlCoreComponentsValidationExceptionInterceptor.java
myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationInterceptor.java
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/HtmlCoreComponentsValidationExceptionInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/HtmlCoreComponentsValidationExceptionInterceptor.java?rev=829079&r1=829078&r2=829079&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/HtmlCoreComponentsValidationExceptionInterceptor.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/HtmlCoreComponentsValidationExceptionInterceptor.java Fri Oct 23 14:44:16 2009
@@ -34,7 +34,6 @@
import org.apache.commons.logging.LogFactory;
import javax.faces.component.UIComponent;
-import javax.faces.component.EditableValueHolder;
import javax.faces.component.html.HtmlInputText;
import javax.faces.component.html.HtmlInputSecret;
import javax.faces.component.html.HtmlSelectBooleanCheckbox;
@@ -105,12 +104,6 @@
{
//correct severity is e.g. provided by ViolationSeverityValidationExceptionInterceptor
ExtValUtils.tryToBlocksNavigationForComponent(uiComponent, facesMessage);
- if(!FacesContext.getCurrentInstance().getRenderResponse())
- {
- //it's a special case - since validation will continue it's essential to reset it
- ((EditableValueHolder)uiComponent).setRequired(false);
- return false;
- }
}
}
return true;
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationInterceptor.java?rev=829079&r1=829078&r2=829079&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationInterceptor.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationInterceptor.java Fri Oct 23 14:44:16 2009
@@ -26,11 +26,13 @@
import org.apache.myfaces.extensions.validator.core.metadata.MetaDataEntry;
import org.apache.myfaces.extensions.validator.core.property.PropertyInformation;
import org.apache.myfaces.extensions.validator.core.ExtValContext;
+import org.apache.myfaces.extensions.validator.core.renderkit.exception.SkipAfterInterceptorsException;
import org.apache.myfaces.extensions.validator.util.ExtValUtils;
import javax.faces.context.FacesContext;
import javax.faces.component.UIComponent;
import javax.faces.component.EditableValueHolder;
+import javax.faces.render.Renderer;
import java.util.Map;
import java.lang.annotation.Annotation;
@@ -41,6 +43,21 @@
@UsageInformation(UsageCategory.INTERNAL)
public class ValidationInterceptor extends AbstractValidationInterceptor
{
+ @Override
+ public void afterDecode(FacesContext facesContext, UIComponent uiComponent, Renderer wrapped)
+ throws SkipAfterInterceptorsException
+ {
+ /*
+ * component initialization sets a component to required if there are constraints which indicate it
+ * the required flag in a component leads to problems with h:messages (additional message) as well as
+ * incompatibilities with skip validation and severities
+ */
+ if(uiComponent instanceof EditableValueHolder)
+ {
+ ((EditableValueHolder)uiComponent).setRequired(false);
+ }
+ }
+
protected void initComponent(FacesContext facesContext, UIComponent uiComponent)
{
if(logger.isTraceEnabled())
@@ -111,9 +128,6 @@
{
if(skipValidationEvaluator.skipValidation(facesContext, uiComponent, validationStrategy, entry))
{
- //required is a special case - reset it
- ((EditableValueHolder)uiComponent).setRequired(false);
-
//don't break maybe there are constraints which don't support the skip-mechanism
continue;
}