You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2008/08/15 04:17:05 UTC
svn commit: r686111 [2/5] - in /myfaces/extensions/validator/trunk: ./ core/
core/src/main/java/org/apache/myfaces/extensions/validator/
core/src/main/java/org/apache/myfaces/extensions/validator/core/
core/src/main/java/org/apache/myfaces/extensions/v...
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/CustomConventionConverterToAdapterNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/CustomConventionConverterToAdapterNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/CustomConventionConverterToAdapterNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/CustomConventionConverterToAdapterNameMapper.java Thu Aug 14 19:17:02 2008
@@ -27,9 +27,13 @@
* @author Gerhard Petracek
*/
@Deprecated
-public class CustomConventionConverterToAdapterNameMapper extends AbstractCustomNameMapper<Converter> {
+public class CustomConventionConverterToAdapterNameMapper extends
+ AbstractCustomNameMapper<Converter>
+{
- protected String getCustomNameMapperClassName() {
- return ExtValUtils.getInformationProviderBean().getCustomAdapterNameMapper();
+ protected String getCustomNameMapperClassName()
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getCustomAdapterNameMapper();
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/DefaultConverterToAdapterNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/DefaultConverterToAdapterNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/DefaultConverterToAdapterNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/DefaultConverterToAdapterNameMapper.java Thu Aug 14 19:17:02 2008
@@ -26,8 +26,11 @@
* @author Gerhard Petracek
*/
@Deprecated
-public class DefaultConverterToAdapterNameMapper implements NameMapper<Converter> {
- public String createName(Converter converter) {
+public class DefaultConverterToAdapterNameMapper implements
+ NameMapper<Converter>
+{
+ public String createName(Converter converter)
+ {
return converter.getClass().getName() + "Adapter";
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/SimpleConverterToAdapterNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/SimpleConverterToAdapterNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/SimpleConverterToAdapterNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/adapter/mapper/SimpleConverterToAdapterNameMapper.java Thu Aug 14 19:17:02 2008
@@ -27,8 +27,13 @@
* @author Gerhard Petracek
*/
@Deprecated
-public class SimpleConverterToAdapterNameMapper implements NameMapper<Converter> {
- public String createName(Converter converter) {
- return ExtValInformation.EXTENSIONS_VALIDATOR_BASE_PACKAGE_NAME + ".adapter." + converter.getClass().getSimpleName() + "Adapter";
+public class SimpleConverterToAdapterNameMapper implements
+ NameMapper<Converter>
+{
+ public String createName(Converter converter)
+ {
+ return ExtValInformation.EXTENSIONS_VALIDATOR_BASE_PACKAGE_NAME
+ + ".adapter." + converter.getClass().getSimpleName()
+ + "Adapter";
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/AnnotationEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/AnnotationEntry.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/AnnotationEntry.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/AnnotationEntry.java Thu Aug 14 19:17:02 2008
@@ -23,7 +23,8 @@
/**
* @author Gerhard Petracek
*/
-public class AnnotationEntry {
+public class AnnotationEntry
+{
private Annotation annotation;
private String valueBindingExpression;
//e.g. valueBindingName, DefaultValueBindingScanningAnnotationExtractor uses it for the variable-/method-name
@@ -31,42 +32,51 @@
private Class entityClass;
//requested by bernhard huemer
- public <T> T getAnnotation(Class<T> targetClass) {
+ public <T> T getAnnotation(Class<T> targetClass)
+ {
return (T) annotation;
}
/*
* generated
*/
- public Annotation getAnnotation() {
+ public Annotation getAnnotation()
+ {
return annotation;
}
- public void setAnnotation(Annotation annotation) {
+ public void setAnnotation(Annotation annotation)
+ {
this.annotation = annotation;
}
- public String getValueBindingExpression() {
+ public String getValueBindingExpression()
+ {
return valueBindingExpression;
}
- public void setValueBindingExpression(String valueBindingExpression) {
+ public void setValueBindingExpression(String valueBindingExpression)
+ {
this.valueBindingExpression = valueBindingExpression;
}
- public String getBoundTo() {
+ public String getBoundTo()
+ {
return boundTo;
}
- public void setBoundTo(String boundTo) {
+ public void setBoundTo(String boundTo)
+ {
this.boundTo = boundTo;
}
- public Class getEntityClass() {
+ public Class getEntityClass()
+ {
return entityClass;
}
- public void setEntityClass(Class entityClass) {
+ public void setEntityClass(Class entityClass)
+ {
this.entityClass = entityClass;
}
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractor.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractor.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractor.java Thu Aug 14 19:17:02 2008
@@ -26,6 +26,8 @@
/**
* @author Gerhard Petracek
*/
-public interface AnnotationExtractor {
- List<AnnotationEntry> extractAnnotations(FacesContext facesContext, Object object);
+public interface AnnotationExtractor
+{
+ List<AnnotationEntry> extractAnnotations(FacesContext facesContext,
+ Object object);
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractorFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractorFactory.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractorFactory.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/AnnotationExtractorFactory.java Thu Aug 14 19:17:02 2008
@@ -21,6 +21,7 @@
/**
* @author Gerhard Petracek
*/
-public interface AnnotationExtractorFactory {
+public interface AnnotationExtractorFactory
+{
AnnotationExtractor create();
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultAnnotationExtractorFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultAnnotationExtractorFactory.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultAnnotationExtractorFactory.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultAnnotationExtractorFactory.java Thu Aug 14 19:17:02 2008
@@ -28,22 +28,33 @@
/**
* @author Gerhard Petracek
*/
-public class DefaultAnnotationExtractorFactory implements AnnotationExtractorFactory {
+public class DefaultAnnotationExtractorFactory implements
+ AnnotationExtractorFactory
+{
private static AnnotationExtractor annotationExtractor = null;
- public AnnotationExtractor create() {
- if (annotationExtractor == null) {
+ public AnnotationExtractor create()
+ {
+ if (annotationExtractor == null)
+ {
List<String> annotationExtractorClassNames = new ArrayList<String>();
- annotationExtractorClassNames.add(WebXmlParameter.CUSTOM_ANNOTATION_EXTRACTOR);
- annotationExtractorClassNames.add(ExtValUtils.getInformationProviderBean().getCustomAnnotationExtractor());
- annotationExtractorClassNames.add(DefaultComponentAnnotationExtractor.class.getName());
+ annotationExtractorClassNames
+ .add(WebXmlParameter.CUSTOM_ANNOTATION_EXTRACTOR);
+ annotationExtractorClassNames.add(ExtValUtils
+ .getInformationProviderBean()
+ .getCustomAnnotationExtractor());
+ annotationExtractorClassNames
+ .add(DefaultComponentAnnotationExtractor.class.getName());
+
+ for (String className : annotationExtractorClassNames)
+ {
+ annotationExtractor = (AnnotationExtractor) ClassUtils
+ .tryToInstantiateClassForName(className);
- for (String className : annotationExtractorClassNames) {
- annotationExtractor = (AnnotationExtractor) ClassUtils.tryToInstantiateClassForName(className);
-
- if (annotationExtractor != null) {
+ if (annotationExtractor != null)
+ {
//TODO logging
break;
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultComponentAnnotationExtractor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultComponentAnnotationExtractor.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultComponentAnnotationExtractor.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/annotation/extractor/DefaultComponentAnnotationExtractor.java Thu Aug 14 19:17:02 2008
@@ -18,14 +18,6 @@
*/
package org.apache.myfaces.extensions.validator.core.annotation.extractor;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.extensions.validator.core.annotation.AnnotationEntry;
-import org.apache.myfaces.extensions.validator.util.ELUtils;
-import org.apache.myfaces.extensions.validator.util.FaceletsTaglibExpressionUtils;
-
-import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
@@ -33,15 +25,27 @@
import java.util.Arrays;
import java.util.List;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.extensions.validator.core.annotation.AnnotationEntry;
+import org.apache.myfaces.extensions.validator.util.ELUtils;
+
/**
* @author Gerhard Petracek
*/
-public class DefaultComponentAnnotationExtractor implements AnnotationExtractor {
+public class DefaultComponentAnnotationExtractor implements AnnotationExtractor
+{
protected final Log logger = LogFactory.getLog(getClass());
- public List<AnnotationEntry> extractAnnotations(FacesContext facesContext, Object object) {
+ public List<AnnotationEntry> extractAnnotations(FacesContext facesContext,
+ Object object)
+ {
//should never occur
- if (!(object instanceof UIComponent)) {
+ if (!(object instanceof UIComponent))
+ {
//TODO
return new ArrayList<AnnotationEntry>();
}
@@ -50,9 +54,11 @@
List<AnnotationEntry> annotationEntries = new ArrayList<AnnotationEntry>();
- String valueBindingExpression = ELUtils.getReliableValueBindingExpression(uiComponent);
+ String valueBindingExpression = ELUtils
+ .getReliableValueBindingExpression(uiComponent);
- if (valueBindingExpression == null) {
+ if (valueBindingExpression == null)
+ {
return new ArrayList<AnnotationEntry>();
}
@@ -61,15 +67,19 @@
*/
int beanPropertyBorder = valueBindingExpression.lastIndexOf('.');
- if (beanPropertyBorder < 0) {
+ if (beanPropertyBorder < 0)
+ {
return new ArrayList<AnnotationEntry>();
}
- String beans = valueBindingExpression.substring(valueBindingExpression.indexOf('{') + 1, beanPropertyBorder);
+ String beans = valueBindingExpression.substring(valueBindingExpression
+ .indexOf('{') + 1, beanPropertyBorder);
- String property = valueBindingExpression.substring(beanPropertyBorder + 1, valueBindingExpression.indexOf('}'));
+ String property = valueBindingExpression.substring(
+ beanPropertyBorder + 1, valueBindingExpression.indexOf('}'));
- Class entityClass = ELUtils.getTypeOfValueBindingForExpression(facesContext, "#{" + beans + "}");
+ Class entityClass = ELUtils.getTypeOfValueBindingForExpression(
+ facesContext, "#{" + beans + "}");
//create template entry
AnnotationEntry templateEntry = new AnnotationEntry();
@@ -84,18 +94,24 @@
*/
Class currentClass = entityClass;
- while (!Object.class.getName().equals(currentClass.getName())) {
- addPropertyAccessAnnotations(currentClass, property, annotationEntries, templateEntry);
- addFieldAccessAnnotations(currentClass, property, annotationEntries, templateEntry);
+ while (!Object.class.getName().equals(currentClass.getName()))
+ {
+ addPropertyAccessAnnotations(currentClass, property,
+ annotationEntries, templateEntry);
+ addFieldAccessAnnotations(currentClass, property,
+ annotationEntries, templateEntry);
currentClass = currentClass.getSuperclass();
}
- for (Class currentInterface : entityClass.getInterfaces()) {
+ for (Class currentInterface : entityClass.getInterfaces())
+ {
currentClass = currentInterface;
- while (currentClass != null) {
- addPropertyAccessAnnotations(currentClass, property, annotationEntries, templateEntry);
+ while (currentClass != null)
+ {
+ addPropertyAccessAnnotations(currentClass, property,
+ annotationEntries, templateEntry);
currentClass = currentClass.getSuperclass();
}
@@ -104,55 +120,87 @@
return annotationEntries;
}
- protected void addPropertyAccessAnnotations(Class entity, String property, List<AnnotationEntry> annotationEntries, AnnotationEntry templateEntry) {
- property = property.substring(0, 1).toUpperCase() + property.substring(1);
+ protected void addPropertyAccessAnnotations(Class entity, String property,
+ List<AnnotationEntry> annotationEntries,
+ AnnotationEntry templateEntry)
+ {
+ property = property.substring(0, 1).toUpperCase()
+ + property.substring(1);
Method method;
- try {
+ try
+ {
method = entity.getDeclaredMethod("get" + property);
- } catch (NoSuchMethodException e) {
- try {
+ }
+ catch (NoSuchMethodException e)
+ {
+ try
+ {
method = entity.getDeclaredMethod("is" + property);
- } catch (NoSuchMethodException e1) {
- logger.debug("method not found - class: " + entity.getName() + " - methods: " + "get" + property + " " + "is" + property);
+ }
+ catch (NoSuchMethodException e1)
+ {
+ logger.debug("method not found - class: " + entity.getName()
+ + " - methods: " + "get" + property + " " + "is"
+ + property);
return;
}
}
- addAnnotationToAnnotationEntries(annotationEntries, Arrays.asList(method.getAnnotations()), templateEntry);
+ addAnnotationToAnnotationEntries(annotationEntries, Arrays
+ .asList(method.getAnnotations()), templateEntry);
}
- protected void addFieldAccessAnnotations(Class entity, String property, List<AnnotationEntry> annotationEntries, AnnotationEntry templateEntry) {
+ protected void addFieldAccessAnnotations(Class entity, String property,
+ List<AnnotationEntry> annotationEntries,
+ AnnotationEntry templateEntry)
+ {
Field field;
- try {
+ try
+ {
field = entity.getDeclaredField(property);
- } catch (Exception e) {
- try {
+ }
+ catch (Exception e)
+ {
+ try
+ {
field = entity.getDeclaredField("_" + property);
- } catch (NoSuchFieldException e1) {
- logger.debug("field " + property + " or _" + property + " not found");
+ }
+ catch (NoSuchFieldException e1)
+ {
+ logger.debug("field " + property + " or _" + property
+ + " not found");
return;
}
}
- addAnnotationToAnnotationEntries(annotationEntries, Arrays.asList(field.getAnnotations()), templateEntry);
+ addAnnotationToAnnotationEntries(annotationEntries, Arrays.asList(field
+ .getAnnotations()), templateEntry);
}
- protected void addAnnotationToAnnotationEntries(List<AnnotationEntry> annotationEntries, List<Annotation> annotations, AnnotationEntry templateEntry) {
- for (Annotation annotation : annotations) {
- annotationEntries.add(createAnnotationEntry(annotation, templateEntry));
+ protected void addAnnotationToAnnotationEntries(
+ List<AnnotationEntry> annotationEntries,
+ List<Annotation> annotations, AnnotationEntry templateEntry)
+ {
+ for (Annotation annotation : annotations)
+ {
+ annotationEntries.add(createAnnotationEntry(annotation,
+ templateEntry));
}
}
- protected AnnotationEntry createAnnotationEntry(Annotation foundAnnotation, AnnotationEntry templateEntry) {
+ protected AnnotationEntry createAnnotationEntry(Annotation foundAnnotation,
+ AnnotationEntry templateEntry)
+ {
AnnotationEntry entry = new AnnotationEntry();
entry.setAnnotation(foundAnnotation);
entry.setEntityClass(templateEntry.getEntityClass());
- entry.setValueBindingExpression(templateEntry.getValueBindingExpression());
+ entry.setValueBindingExpression(templateEntry
+ .getValueBindingExpression());
entry.setBoundTo(templateEntry.getBoundTo());
return entry;
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/AbstractCustomNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/AbstractCustomNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/AbstractCustomNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/AbstractCustomNameMapper.java Thu Aug 14 19:17:02 2008
@@ -25,19 +25,25 @@
*
* @author Gerhard Petracek
*/
-public abstract class AbstractCustomNameMapper<T> implements NameMapper<T> {
+public abstract class AbstractCustomNameMapper<T> implements NameMapper<T>
+{
private NameMapper<T> customNameMapper;
- public String createName(T source) {
- if (customNameMapper == null) {
+ public String createName(T source)
+ {
+ if (customNameMapper == null)
+ {
String className = getCustomNameMapperClassName();
- if (className != null) {
- customNameMapper = (NameMapper<T>) ClassUtils.tryToInstantiateClassForName(className);
+ if (className != null)
+ {
+ customNameMapper = (NameMapper<T>) ClassUtils
+ .tryToInstantiateClassForName(className);
}
}
- return (customNameMapper != null) ? customNameMapper.createName(source) : null;
+ return (customNameMapper != null) ? customNameMapper.createName(source)
+ : null;
}
protected abstract String getCustomNameMapperClassName();
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java Thu Aug 14 19:17:02 2008
@@ -21,6 +21,7 @@
/**
* @author Gerhard Petracek
*/
-public interface NameMapper<T> {
+public interface NameMapper<T>
+{
String createName(T source);
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/AbstractValidationErrorMessageResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/AbstractValidationErrorMessageResolver.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/AbstractValidationErrorMessageResolver.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/AbstractValidationErrorMessageResolver.java Thu Aug 14 19:17:02 2008
@@ -31,7 +31,9 @@
/**
* @author Gerhard Petracek
*/
-public abstract class AbstractValidationErrorMessageResolver implements MessageResolver {
+public abstract class AbstractValidationErrorMessageResolver implements
+ MessageResolver
+{
private static String deactivateDefaultConvention = WebXmlParameter.DEACTIVATE_DEFAULT_CONVENTION;
private static ResourceBundle defaultBundle = null;
private String messageBundleBaseName;
@@ -40,8 +42,10 @@
protected final Log logger = LogFactory.getLog(getClass());
- public String getMessage(String key, Locale locale) {
- if (key == null || key.equals("")) {
+ public String getMessage(String key, Locale locale)
+ {
+ if (key == null || key.equals(""))
+ {
return null;
}
@@ -49,26 +53,35 @@
String customMessage = null;
//only in case of a ValidationErrorMessageResolver which is configured as bean
- if(this.messageBundleBaseName != null) {
+ if(this.messageBundleBaseName != null)
+ {
resourceBundle = ResourceBundle.getBundle(this.messageBundleBaseName, locale);
- if(resourceBundle != null) {
+ if(resourceBundle != null)
+ {
customMessage = resourceBundle.getString(key);
- } else {
+ }
+ else
+ {
logger.warn("message bundle " + this.messageBundleBaseName + " not found");
}
}
//only in case of a ValidationErrorMessageResolver which is configured as bean
- if(this.messageBundleVarName != null && customMessage == null) {
+ if(this.messageBundleVarName != null && customMessage == null)
+ {
resourceBundle = (ResourceBundle)ELUtils.getBean(messageBundleVarName);
- if(resourceBundle != null) {
+ if(resourceBundle != null)
+ {
customMessage = resourceBundle.getString(key);
- } else {
+ }
+ else
+ {
logger.warn("message bundle var name " + this.messageBundleVarName + " not found");
}
}
- if (customMessage != null) {
+ if (customMessage != null)
+ {
return customMessage;
}
@@ -77,7 +90,8 @@
*/
customMessage = tryToUseMessageBundleConvention(key, locale);
- if (customMessage != null) {
+ if (customMessage != null)
+ {
return customMessage;
}
@@ -86,45 +100,66 @@
*/
//try to load custom messages
- try {
- resourceBundle = ResourceBundle.getBundle(getCustomBaseName(), locale);
+ try
+ {
+ resourceBundle = ResourceBundle.getBundle(getCustomBaseName(),
+ locale);
}
- catch (Throwable t) {
+ catch (Throwable t)
+ {
//do nothing - it was just a try
}
- if (resourceBundle != null) {
- try {
+ if (resourceBundle != null)
+ {
+ try
+ {
customMessage = resourceBundle.getString(key);
}
- catch (MissingResourceException e) {
- logger.trace("no custom message for " + key + " within " + getCustomBaseName());
+ catch (MissingResourceException e)
+ {
+ logger.trace("no custom message for " + key + " within "
+ + getCustomBaseName());
}
}
//use custom name (if possible) otherwise: fallback to default message (if possible)
- return (customMessage != null) ? customMessage : (getBaseName() != null) ? ResourceBundle.getBundle(getBaseName(), locale).getString(key) : null;
+ return (customMessage != null) ? customMessage
+ : (getBaseName() != null) ? ResourceBundle.getBundle(
+ getBaseName(), locale).getString(key) : null;
}
- private String tryToUseMessageBundleConvention(String key, Locale locale) {
+ private String tryToUseMessageBundleConvention(String key, Locale locale)
+ {
String customMessage = null;
- if ((deactivateDefaultConvention == null || !deactivateDefaultConvention.equalsIgnoreCase("true")) &&
- isDefaultMessageBundleConventionActive()) {
- if (defaultBundle == null) {
- try {
- defaultBundle = ResourceBundle.getBundle(ExtValUtils.getInformationProviderBean().getConventionForMessageBundle(), locale);
- } catch (Throwable t) {
+ if ((deactivateDefaultConvention == null || !deactivateDefaultConvention
+ .equalsIgnoreCase("true"))
+ && isDefaultMessageBundleConventionActive())
+ {
+ if (defaultBundle == null)
+ {
+ try
+ {
+ defaultBundle = ResourceBundle.getBundle(ExtValUtils
+ .getInformationProviderBean()
+ .getConventionForMessageBundle(), locale);
+ }
+ catch (Throwable t)
+ {
//do nothing
deactivateDefaultConvention = "true";
}
}
- if (defaultBundle != null) {
- try {
+ if (defaultBundle != null)
+ {
+ try
+ {
customMessage = defaultBundle.getString(key);
}
- catch (MissingResourceException e) {
+ catch (MissingResourceException e)
+ {
//do nothing
}
}
@@ -133,21 +168,25 @@
return customMessage;
}
- protected boolean isDefaultMessageBundleConventionActive() {
+ protected boolean isDefaultMessageBundleConventionActive()
+ {
return true;
}
protected abstract String getBaseName();
- protected String getCustomBaseName() {
+ protected String getCustomBaseName()
+ {
return null;
}
- public void setMessageBundleBaseName(String messageBundleBaseName) {
+ public void setMessageBundleBaseName(String messageBundleBaseName)
+ {
this.messageBundleBaseName = messageBundleBaseName;
}
- public void setMessageBundleVarName(String messageBundleVarName) {
+ public void setMessageBundleVarName(String messageBundleVarName)
+ {
this.messageBundleVarName = messageBundleVarName;
}
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultMessageResolverFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultMessageResolverFactory.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultMessageResolverFactory.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultMessageResolverFactory.java Thu Aug 14 19:17:02 2008
@@ -18,66 +18,96 @@
*/
package org.apache.myfaces.extensions.validator.core.validation.message.resolver;
-import org.apache.myfaces.extensions.validator.core.ClassMappingFactory;
-import org.apache.myfaces.extensions.validator.core.mapper.NameMapper;
-import org.apache.myfaces.extensions.validator.core.validation.message.resolver.mapper.*;
-import org.apache.myfaces.extensions.validator.core.validation.strategy.ValidationStrategy;
-import org.apache.myfaces.extensions.validator.util.ClassUtils;
-
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import org.apache.myfaces.extensions.validator.core.ClassMappingFactory;
+import org.apache.myfaces.extensions.validator.core.mapper.NameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.message.
+ resolver.mapper.CustomConfiguredValidationStrategyToMsgResolverNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.message.
+ resolver.mapper.CustomConventionValidationStrategyToMsgResolverNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.message.
+ resolver.mapper.DefaultModuleValidationStrategyToMsgResolverNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.message.
+ resolver.mapper.DefaultValidationStrategyToMsgResolverNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.message.
+ resolver.mapper.SimpleValidationStrategyToMsgResolverNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.strategy.ValidationStrategy;
+import org.apache.myfaces.extensions.validator.util.ClassUtils;
+
/**
* @author Gerhard Petracek
*/
//TODO add generic java api (de-/register mapping)
-public class DefaultMessageResolverFactory implements ClassMappingFactory<ValidationStrategy, MessageResolver> {
- private static Map<String, String> strategyMessageResolverMapping = new HashMap<String, String>();
- private static List<NameMapper<ValidationStrategy>> nameMapperList = new ArrayList<NameMapper<ValidationStrategy>>();
-
- static {
- nameMapperList.add(new CustomConfiguredValidationStrategyToMsgResolverNameMapper());
- nameMapperList.add(new CustomConventionValidationStrategyToMsgResolverNameMapper());
- nameMapperList.add(new DefaultValidationStrategyToMsgResolverNameMapper());
- nameMapperList.add(new DefaultModuleValidationStrategyToMsgResolverNameMapper());
- nameMapperList.add(new SimpleValidationStrategyToMsgResolverNameMapper());
+public class DefaultMessageResolverFactory implements
+ ClassMappingFactory<ValidationStrategy, MessageResolver>
+{
+ private static Map<String, String> strategyMessageResolverMapping =
+ new HashMap<String, String>();
+ private static List<NameMapper<ValidationStrategy>> nameMapperList =
+ new ArrayList<NameMapper<ValidationStrategy>>();
+
+ static
+ {
+ nameMapperList
+ .add(new CustomConfiguredValidationStrategyToMsgResolverNameMapper());
+ nameMapperList
+ .add(new CustomConventionValidationStrategyToMsgResolverNameMapper());
+ nameMapperList
+ .add(new DefaultValidationStrategyToMsgResolverNameMapper());
+ nameMapperList
+ .add(new DefaultModuleValidationStrategyToMsgResolverNameMapper());
+ nameMapperList
+ .add(new SimpleValidationStrategyToMsgResolverNameMapper());
}
- public MessageResolver create(ValidationStrategy validationStrategy) {
+ public MessageResolver create(ValidationStrategy validationStrategy)
+ {
String strategyName = validationStrategy.getClass().getName();
- if (strategyMessageResolverMapping.containsKey(strategyName)) {
- return (MessageResolver) ClassUtils.tryToInstantiateClassForName(strategyMessageResolverMapping.get(strategyName));
+ if (strategyMessageResolverMapping.containsKey(strategyName))
+ {
+ return (MessageResolver) ClassUtils
+ .tryToInstantiateClassForName(strategyMessageResolverMapping
+ .get(strategyName));
}
MessageResolver messageResolver;
String resolverName;
- for (NameMapper<ValidationStrategy> nameMapper : nameMapperList) {
+ for (NameMapper<ValidationStrategy> nameMapper : nameMapperList)
+ {
//build convention (ValidationErrorMessageResolver)
resolverName = nameMapper.createName(validationStrategy);
//name wasn't mapped
- if(validationStrategy.getClass().getName().equals(resolverName)) {
+ if(validationStrategy.getClass().getName().equals(resolverName))
+ {
continue;
}
messageResolver = (MessageResolver) ClassUtils.tryToInstantiateClassForName(resolverName);
- if (messageResolver != null) {
+ if (messageResolver != null)
+ {
addMapping(strategyName, resolverName);
return messageResolver;
}
}
- addMapping(strategyName, DefaultValidationErrorMessageResolver.class.getName());
+ addMapping(strategyName, DefaultValidationErrorMessageResolver.class
+ .getName());
return new DefaultValidationErrorMessageResolver();
}
- private void addMapping(String strategyName, String messageResolverName) {
- synchronized (DefaultMessageResolverFactory.class) {
- strategyMessageResolverMapping.put(strategyName, messageResolverName);
+ private void addMapping(String strategyName, String messageResolverName)
+ {
+ synchronized (DefaultMessageResolverFactory.class)
+ {
+ strategyMessageResolverMapping.put(strategyName,
+ messageResolverName);
}
//TODO logging
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultValidationErrorMessageResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultValidationErrorMessageResolver.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultValidationErrorMessageResolver.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/DefaultValidationErrorMessageResolver.java Thu Aug 14 19:17:02 2008
@@ -24,15 +24,21 @@
/**
* @author Gerhard Petracek
*/
-public class DefaultValidationErrorMessageResolver extends AbstractValidationErrorMessageResolver {
+public class DefaultValidationErrorMessageResolver extends
+ AbstractValidationErrorMessageResolver
+{
private static final String CUSTOM_BUNDLE = WebXmlParameter.CUSTOM_MESSAGE_BUNDLE;
//not used at the moment - just for a convention
- protected String getBaseName() {
- return ExtValUtils.getInformationProviderBean().getConventionForModuleMessageBundle(getClass().getPackage().getName());
+ protected String getBaseName()
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getConventionForModuleMessageBundle(
+ getClass().getPackage().getName());
}
- protected String getCustomBaseName() {
+ protected String getCustomBaseName()
+ {
return CUSTOM_BUNDLE;
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/MessageResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/MessageResolver.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/MessageResolver.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/MessageResolver.java Thu Aug 14 19:17:02 2008
@@ -23,6 +23,7 @@
/**
* @author Gerhard Petracek
*/
-public interface MessageResolver {
+public interface MessageResolver
+{
String getMessage(String key, Locale locale);
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConfiguredValidationStrategyToMsgResolverNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConfiguredValidationStrategyToMsgResolverNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConfiguredValidationStrategyToMsgResolverNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConfiguredValidationStrategyToMsgResolverNameMapper.java Thu Aug 14 19:17:02 2008
@@ -25,9 +25,12 @@
/**
* @author Gerhard Petracek
*/
-public class CustomConfiguredValidationStrategyToMsgResolverNameMapper extends AbstractCustomNameMapper<ValidationStrategy> {
+public class CustomConfiguredValidationStrategyToMsgResolverNameMapper extends
+ AbstractCustomNameMapper<ValidationStrategy>
+{
- protected String getCustomNameMapperClassName() {
+ protected String getCustomNameMapperClassName()
+ {
return WebXmlParameter.CUSTOM_STRATEGY_TO_MESSAGE_RESOLVER_NAME_MAPPER;
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConventionValidationStrategyToMsgResolverNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConventionValidationStrategyToMsgResolverNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConventionValidationStrategyToMsgResolverNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/CustomConventionValidationStrategyToMsgResolverNameMapper.java Thu Aug 14 19:17:02 2008
@@ -25,9 +25,13 @@
/**
* @author Gerhard Petracek
*/
-public class CustomConventionValidationStrategyToMsgResolverNameMapper extends AbstractCustomNameMapper<ValidationStrategy> {
+public class CustomConventionValidationStrategyToMsgResolverNameMapper extends
+ AbstractCustomNameMapper<ValidationStrategy>
+{
- protected String getCustomNameMapperClassName() {
- return ExtValUtils.getInformationProviderBean().getCustomValidationStrategyToMsgResolverNameMapper();
+ protected String getCustomNameMapperClassName()
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getCustomValidationStrategyToMsgResolverNameMapper();
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultModuleValidationStrategyToMsgResolverNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultModuleValidationStrategyToMsgResolverNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultModuleValidationStrategyToMsgResolverNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultModuleValidationStrategyToMsgResolverNameMapper.java Thu Aug 14 19:17:02 2008
@@ -23,10 +23,13 @@
/**
* @author Gerhard Petracek
*/
-public class DefaultModuleValidationStrategyToMsgResolverNameMapper extends DefaultValidationStrategyToMsgResolverNameMapper {
+public class DefaultModuleValidationStrategyToMsgResolverNameMapper extends
+ DefaultValidationStrategyToMsgResolverNameMapper
+{
@Override
- protected String getClassName(String strategyClassName) {
+ protected String getClassName(String strategyClassName)
+ {
return DefaultValidationErrorMessageResolver.class.getSimpleName();
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultValidationStrategyToMsgResolverNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultValidationStrategyToMsgResolverNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultValidationStrategyToMsgResolverNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/DefaultValidationStrategyToMsgResolverNameMapper.java Thu Aug 14 19:17:02 2008
@@ -25,12 +25,21 @@
/**
* @author Gerhard Petracek
*/
-public class DefaultValidationStrategyToMsgResolverNameMapper implements NameMapper<ValidationStrategy> {
- public String createName(ValidationStrategy validationStrategy) {
- return ExtValUtils.getInformationProviderBean().getConventionNameForMessageResolverPackage(validationStrategy.getClass(), getClassName(validationStrategy.getClass().getSimpleName()));
+public class DefaultValidationStrategyToMsgResolverNameMapper implements
+ NameMapper<ValidationStrategy>
+{
+ public String createName(ValidationStrategy validationStrategy)
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getConventionNameForMessageResolverPackage(
+ validationStrategy.getClass(),
+ getClassName(validationStrategy.getClass()
+ .getSimpleName()));
}
- protected String getClassName(String strategyClassName) {
- return ExtValUtils.getInformationProviderBean().getConventionNameForMessageResolverClass(strategyClassName);
+ protected String getClassName(String strategyClassName)
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getConventionNameForMessageResolverClass(strategyClassName);
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/SimpleValidationStrategyToMsgResolverNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/SimpleValidationStrategyToMsgResolverNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/SimpleValidationStrategyToMsgResolverNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/mapper/SimpleValidationStrategyToMsgResolverNameMapper.java Thu Aug 14 19:17:02 2008
@@ -24,10 +24,14 @@
/**
* @author Gerhard Petracek
*/
-public class SimpleValidationStrategyToMsgResolverNameMapper implements NameMapper<ValidationStrategy> {
- public String createName(ValidationStrategy validationStrategy) {
+public class SimpleValidationStrategyToMsgResolverNameMapper implements
+ NameMapper<ValidationStrategy>
+{
+ public String createName(ValidationStrategy validationStrategy)
+ {
String resolverName = validationStrategy.getClass().getName();
- return resolverName.substring(0, resolverName.lastIndexOf(".")) + ".DefaultValidationErrorMessageResolver";
+ return resolverName.substring(0, resolverName.lastIndexOf("."))
+ + ".DefaultValidationErrorMessageResolver";
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidationStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidationStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidationStrategy.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidationStrategy.java Thu Aug 14 19:17:02 2008
@@ -30,37 +30,54 @@
/**
* @author Gerhard Petracek
*/
-public abstract class AbstractValidationStrategy extends AbstractValidatorAdapter {
+public abstract class AbstractValidationStrategy extends
+ AbstractValidatorAdapter
+{
protected static final String DETAIL_MESSAGE_KEY_POSTFIX = "_details";
private MessageResolver messageResolver;
- protected String resolveMessage(String key) {
- Locale locale = FacesContext.getCurrentInstance().getViewRoot().getLocale();
+ protected String resolveMessage(String key)
+ {
+ Locale locale = FacesContext.getCurrentInstance().getViewRoot()
+ .getLocale();
- return this.messageResolver != null ? this.messageResolver.getMessage(key, locale) : FactoryUtils.getMessageResolverFactory().create(this).getMessage(key, locale);
+ return this.messageResolver != null ? this.messageResolver.getMessage(key, locale) :
+ FactoryUtils.getMessageResolverFactory().create(this).getMessage(key, locale);
}
- protected String getErrorMessageSummary(Annotation annotation) {
+ protected String getErrorMessageSummary(Annotation annotation)
+ {
return resolveMessage(getValidationErrorMsgKey(annotation));
}
- protected String getErrorMessageDetails(Annotation annotation) {
- try {
+ protected String getErrorMessageDetails(Annotation annotation)
+ {
+ try
+ {
String key = getValidationErrorMsgKey(annotation);
- return (key != null) ? resolveMessage(key + DETAIL_MESSAGE_KEY_POSTFIX) : null;
- } catch (MissingResourceException e) {
- logger.warn("couldn't find key " + getValidationErrorMsgKey(annotation) + DETAIL_MESSAGE_KEY_POSTFIX, e);
+ return (key != null) ? resolveMessage(key
+ + DETAIL_MESSAGE_KEY_POSTFIX) : null;
+ }
+ catch (MissingResourceException e)
+ {
+ logger.warn("couldn't find key "
+ + getValidationErrorMsgKey(annotation)
+ + DETAIL_MESSAGE_KEY_POSTFIX, e);
}
return null;
}
- protected FacesMessage getValidationErrorFacesMassage(Annotation annotation) {
- return new FacesMessage(FacesMessage.SEVERITY_ERROR, getErrorMessageSummary(annotation), getErrorMessageDetails(annotation));
+ protected FacesMessage getValidationErrorFacesMassage(Annotation annotation)
+ {
+ return new FacesMessage(FacesMessage.SEVERITY_ERROR,
+ getErrorMessageSummary(annotation),
+ getErrorMessageDetails(annotation));
}
protected abstract String getValidationErrorMsgKey(Annotation annotation);
- public void setMessageResolver(MessageResolver messageResolver) {
+ public void setMessageResolver(MessageResolver messageResolver)
+ {
this.messageResolver = messageResolver;
}
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidatorAdapter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidatorAdapter.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidatorAdapter.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidatorAdapter.java Thu Aug 14 19:17:02 2008
@@ -30,30 +30,47 @@
/**
* @author Gerhard Petracek
*/
-public abstract class AbstractValidatorAdapter implements ValidationStrategy {
+public abstract class AbstractValidatorAdapter implements ValidationStrategy
+{
protected final Log logger = LogFactory.getLog(getClass());
- public void validate(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject) {
- initValidation(facesContext, uiComponent, annotationEntry, convertedObject);
+ public void validate(FacesContext facesContext, UIComponent uiComponent,
+ AnnotationEntry annotationEntry, Object convertedObject)
+ {
+ initValidation(facesContext, uiComponent, annotationEntry,
+ convertedObject);
- try {
- processValidation(facesContext, uiComponent, annotationEntry, convertedObject);
+ try
+ {
+ processValidation(facesContext, uiComponent, annotationEntry,
+ convertedObject);
}
- catch (ValidatorException e) {
- if (processAfterValidatorException(facesContext, uiComponent, annotationEntry, convertedObject, e)) {
+ catch (ValidatorException e)
+ {
+ if (processAfterValidatorException(facesContext, uiComponent,
+ annotationEntry, convertedObject, e))
+ {
throw new ConverterException(e.getFacesMessage(), e);
}
}
}
- protected void initValidation(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject) {
+ protected void initValidation(FacesContext facesContext,
+ UIComponent uiComponent, AnnotationEntry annotationEntry,
+ Object convertedObject)
+ {
//override if needed
}
//override if needed
- protected boolean processAfterValidatorException(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject, ValidatorException e) {
+ protected boolean processAfterValidatorException(FacesContext facesContext,
+ UIComponent uiComponent, AnnotationEntry annotationEntry,
+ Object convertedObject, ValidatorException e)
+ {
return true;
}
- protected abstract void processValidation(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject) throws ValidatorException;
+ protected abstract void processValidation(FacesContext facesContext,
+ UIComponent uiComponent, AnnotationEntry annotationEntry,
+ Object convertedObject) throws ValidatorException;
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java Thu Aug 14 19:17:02 2008
@@ -18,62 +18,98 @@
*/
package org.apache.myfaces.extensions.validator.core.validation.strategy;
+import java.lang.annotation.Annotation;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
import org.apache.myfaces.extensions.validator.core.ClassMappingFactory;
import org.apache.myfaces.extensions.validator.core.WebXmlParameter;
import org.apache.myfaces.extensions.validator.core.mapper.NameMapper;
-import org.apache.myfaces.extensions.validator.core.validation.strategy.mapper.*;
+import org.apache.myfaces.extensions.validator.core.validation.strategy.
+ mapper.CustomConfiguredAnnotationToValidationStrategyNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.strategy.
+ mapper.CustomConventionAnnotationToValidationStrategyNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.strategy.
+ mapper.DefaultAnnotationToValidationStrategyNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.strategy.
+ mapper.SimpleAnnotationToValidationStrategyNameMapper;
+import org.apache.myfaces.extensions.validator.core.validation.strategy.
+ mapper.AnnotationToValidationStrategyBeanNameMapper;
import org.apache.myfaces.extensions.validator.util.ClassUtils;
import org.apache.myfaces.extensions.validator.util.ExtValUtils;
import org.apache.myfaces.extensions.validator.util.ELUtils;
-import java.lang.annotation.Annotation;
-import java.util.*;
/**
* @author Gerhard Petracek
*/
//TODO add generic java api (de-/register mapping)
-public class DefaultValidationStrategyFactory implements ClassMappingFactory<Annotation, ValidationStrategy> {
+public class DefaultValidationStrategyFactory implements
+ ClassMappingFactory<Annotation, ValidationStrategy>
+{
private static Map<String, String> annotationStrategyMapping = null;
private static List<NameMapper<Annotation>> nameMapperList = new ArrayList<NameMapper<Annotation>>();
- static {
- nameMapperList.add(new CustomConfiguredAnnotationToValidationStrategyNameMapper());
- nameMapperList.add(new CustomConventionAnnotationToValidationStrategyNameMapper());
- nameMapperList.add(new DefaultAnnotationToValidationStrategyNameMapper());
- nameMapperList.add(new SimpleAnnotationToValidationStrategyNameMapper());
+ static
+ {
+ nameMapperList
+ .add(new CustomConfiguredAnnotationToValidationStrategyNameMapper());
+ nameMapperList
+ .add(new CustomConventionAnnotationToValidationStrategyNameMapper());
+ nameMapperList
+ .add(new DefaultAnnotationToValidationStrategyNameMapper());
+ nameMapperList
+ .add(new SimpleAnnotationToValidationStrategyNameMapper());
//TODO if jsr 303 doesn't change:
//nameMapperList.add(new BeanValidationAnnotationStrategyNameMapper());
- nameMapperList.add(new AnnotationToValidationStrategyBeanNameMapper(new CustomConfiguredAnnotationToValidationStrategyNameMapper()));
- nameMapperList.add(new AnnotationToValidationStrategyBeanNameMapper(new CustomConventionAnnotationToValidationStrategyNameMapper()));
- nameMapperList.add(new AnnotationToValidationStrategyBeanNameMapper(new DefaultAnnotationToValidationStrategyNameMapper()));
- nameMapperList.add(new AnnotationToValidationStrategyBeanNameMapper(new SimpleAnnotationToValidationStrategyNameMapper()));
- }
-
- public ValidationStrategy create(Annotation annotation) {
- if (annotationStrategyMapping == null) {
+ nameMapperList
+ .add(new AnnotationToValidationStrategyBeanNameMapper(
+ new CustomConfiguredAnnotationToValidationStrategyNameMapper()));
+ nameMapperList
+ .add(new AnnotationToValidationStrategyBeanNameMapper(
+ new CustomConventionAnnotationToValidationStrategyNameMapper()));
+ nameMapperList.add(new AnnotationToValidationStrategyBeanNameMapper(
+ new DefaultAnnotationToValidationStrategyNameMapper()));
+ nameMapperList.add(new AnnotationToValidationStrategyBeanNameMapper(
+ new SimpleAnnotationToValidationStrategyNameMapper()));
+ }
+
+ public ValidationStrategy create(Annotation annotation)
+ {
+ if (annotationStrategyMapping == null)
+ {
initStaticStrategyMappings();
}
String annotationName = annotation.annotationType().getName();
- if (annotationStrategyMapping.containsKey(annotationName)) {
- return (ValidationStrategy) getValidationStrategyInstance(annotationStrategyMapping.get(annotationName));
+ if (annotationStrategyMapping.containsKey(annotationName))
+ {
+ return (ValidationStrategy) getValidationStrategyInstance(annotationStrategyMapping
+ .get(annotationName));
}
ValidationStrategy validationStrategy;
String strategyName;
//null -> use name mappers
- for (NameMapper<Annotation> nameMapper : nameMapperList) {
+ for (NameMapper<Annotation> nameMapper : nameMapperList)
+ {
strategyName = nameMapper.createName(annotation);
- if(strategyName == null) {
+ if (strategyName == null)
+ {
continue;
}
validationStrategy = getValidationStrategyInstance(strategyName);
- if (validationStrategy != null) {
+ if (validationStrategy != null)
+ {
addMapping(annotationName, strategyName);
return validationStrategy;
}
@@ -82,46 +118,69 @@
return null;
}
- private ValidationStrategy getValidationStrategyInstance(String validationStrategyName) {
- if(validationStrategyName.startsWith(AnnotationToValidationStrategyBeanNameMapper.PREFIX_FOR_BEAN_MAPPING)) {
- return (ValidationStrategy) ELUtils.getBean(validationStrategyName.substring(AnnotationToValidationStrategyBeanNameMapper.PREFIX_FOR_BEAN_MAPPING.length()));
- } else {
- return (ValidationStrategy) ClassUtils.tryToInstantiateClassForName(validationStrategyName);
+ private ValidationStrategy getValidationStrategyInstance(
+ String validationStrategyName)
+ {
+ if (validationStrategyName
+ .startsWith(AnnotationToValidationStrategyBeanNameMapper.PREFIX_FOR_BEAN_MAPPING))
+ {
+ return (ValidationStrategy) ELUtils
+ .getBean(validationStrategyName
+ .substring(AnnotationToValidationStrategyBeanNameMapper.PREFIX_FOR_BEAN_MAPPING
+ .length()));
+ }
+ else
+ {
+ return (ValidationStrategy) ClassUtils
+ .tryToInstantiateClassForName(validationStrategyName);
}
}
- private void addMapping(String annotationName, String strategyName) {
- synchronized (DefaultValidationStrategyFactory.class) {
+ private void addMapping(String annotationName, String strategyName)
+ {
+ synchronized (DefaultValidationStrategyFactory.class)
+ {
annotationStrategyMapping.put(annotationName, strategyName);
}
//TODO logging
}
- private void initStaticStrategyMappings() {
- synchronized (DefaultValidationStrategyFactory.class) {
+ private void initStaticStrategyMappings()
+ {
+ synchronized (DefaultValidationStrategyFactory.class)
+ {
annotationStrategyMapping = new HashMap<String, String>();
//setup internal static mappings
- for (String internalMappingSource : ExtValUtils.getInformationProviderBean().getStaticStrategyMappingSources()) {
+ for (String internalMappingSource : ExtValUtils
+ .getInformationProviderBean()
+ .getStaticStrategyMappingSources())
+ {
setupStrategyMappings(internalMappingSource);
}
//try to setup mapping with base name by convention - overrides default mapping
- try {
+ try
+ {
//build convention (strategy mapping)
- setupStrategyMappings(ExtValUtils.getInformationProviderBean().getCustomStaticStrategyMappingSource());
+ setupStrategyMappings(ExtValUtils.getInformationProviderBean()
+ .getCustomStaticStrategyMappingSource());
}
- catch (Throwable t) {
+ catch (Throwable t)
+ {
//do nothing - it was just a try
}
//setup custom mapping - overrides all other mappings
String customMappingBaseName = WebXmlParameter.CUSTOM_VALIDATIONSTRATEGY_MAPPING;
- if (customMappingBaseName != null) {
- try {
+ if (customMappingBaseName != null)
+ {
+ try
+ {
setupStrategyMappings(customMappingBaseName);
}
- catch (MissingResourceException e) {
+ catch (MissingResourceException e)
+ {
//TODO logging
e.printStackTrace();
}
@@ -129,10 +188,12 @@
}
}
- private void setupStrategyMappings(String bundle) {
+ private void setupStrategyMappings(String bundle)
+ {
ResourceBundle strategyMapping = ResourceBundle.getBundle(bundle);
- if (strategyMapping == null) {
+ if (strategyMapping == null)
+ {
return;
}
@@ -141,11 +202,13 @@
String annotationClassName;
String validationStrategyClassName;
- while (keys.hasMoreElements()) {
+ while (keys.hasMoreElements())
+ {
annotationClassName = (String) keys.nextElement();
- validationStrategyClassName = strategyMapping.getString(annotationClassName);
+ validationStrategyClassName = strategyMapping
+ .getString(annotationClassName);
addMapping(annotationClassName, validationStrategyClassName);
}
}
-}
\ No newline at end of file
+}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/ValidationStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/ValidationStrategy.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/ValidationStrategy.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/ValidationStrategy.java Thu Aug 14 19:17:02 2008
@@ -26,6 +26,8 @@
/**
* @author Gerhard Petracek
*/
-public interface ValidationStrategy {
- void validate(FacesContext facesContext, UIComponent uiComponent, AnnotationEntry annotationEntry, Object convertedObject);
+public interface ValidationStrategy
+{
+ void validate(FacesContext facesContext, UIComponent uiComponent,
+ AnnotationEntry annotationEntry, Object convertedObject);
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/AnnotationToValidationStrategyBeanNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/AnnotationToValidationStrategyBeanNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/AnnotationToValidationStrategyBeanNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/AnnotationToValidationStrategyBeanNameMapper.java Thu Aug 14 19:17:02 2008
@@ -26,29 +26,37 @@
* @author Gerhard Petracek
*
* Name Mapper which delegates the name mapping, extract the name and convert it to a bean name + prefix
- * target: configure a validation strategy via a managed bean facility -> allows to inject other beans instead of api calls + hardcoded bean names
+ * target: configure a validation strategy via a managed bean facility -> allows to inject other beans
+ * instead of api calls + hardcoded bean names
*
* allowed bean scopes:
* the validation strategy is stateless: application/singleton
* the validation strategy is stateful: none/prototype
* don't use the session or a conversation scope
*/
-public class AnnotationToValidationStrategyBeanNameMapper implements NameMapper<Annotation> {
+public class AnnotationToValidationStrategyBeanNameMapper implements
+ NameMapper<Annotation>
+{
public static final String PREFIX_FOR_BEAN_MAPPING = "bean:";
private NameMapper<Annotation> wrapped;
- public AnnotationToValidationStrategyBeanNameMapper(NameMapper<Annotation> nameMapper) {
+ public AnnotationToValidationStrategyBeanNameMapper(
+ NameMapper<Annotation> nameMapper)
+ {
this.wrapped = nameMapper;
}
- public String createName(Annotation source) {
+ public String createName(Annotation source)
+ {
String name = wrapped.createName(source);
- if(name == null) {
+ if (name == null)
+ {
return null;
}
name = name.substring(name.lastIndexOf(".") + 1);
- return PREFIX_FOR_BEAN_MAPPING + name.substring(0, 1).toLowerCase() + name.substring(1);
+ return PREFIX_FOR_BEAN_MAPPING + name.substring(0, 1).toLowerCase()
+ + name.substring(1);
}
}
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConfiguredAnnotationToValidationStrategyNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConfiguredAnnotationToValidationStrategyNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConfiguredAnnotationToValidationStrategyNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConfiguredAnnotationToValidationStrategyNameMapper.java Thu Aug 14 19:17:02 2008
@@ -27,9 +27,12 @@
* @author Gerhard Petracek
*/
@Deprecated
-public class CustomConfiguredAnnotationToValidationStrategyNameMapper extends AbstractCustomNameMapper<Annotation> {
+public class CustomConfiguredAnnotationToValidationStrategyNameMapper extends
+ AbstractCustomNameMapper<Annotation>
+{
- protected String getCustomNameMapperClassName() {
+ protected String getCustomNameMapperClassName()
+ {
return WebXmlParameter.CUSTOM_ANNOTATION_TO_VALIDATION_STRATEGY_NAME_MAPPER;
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConventionAnnotationToValidationStrategyNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConventionAnnotationToValidationStrategyNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConventionAnnotationToValidationStrategyNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/CustomConventionAnnotationToValidationStrategyNameMapper.java Thu Aug 14 19:17:02 2008
@@ -28,9 +28,13 @@
*
* @author Gerhard Petracek
*/
-public class CustomConventionAnnotationToValidationStrategyNameMapper extends AbstractCustomNameMapper<Annotation> {
+public class CustomConventionAnnotationToValidationStrategyNameMapper extends
+ AbstractCustomNameMapper<Annotation>
+{
- protected String getCustomNameMapperClassName() {
- return ExtValUtils.getInformationProviderBean().getCustomAnnotationToValidationStrategyNameMapper();
+ protected String getCustomNameMapperClassName()
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getCustomAnnotationToValidationStrategyNameMapper();
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/DefaultAnnotationToValidationStrategyNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/DefaultAnnotationToValidationStrategyNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/DefaultAnnotationToValidationStrategyNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/DefaultAnnotationToValidationStrategyNameMapper.java Thu Aug 14 19:17:02 2008
@@ -26,8 +26,12 @@
/**
* @author Gerhard Petracek
*/
-public class DefaultAnnotationToValidationStrategyNameMapper implements NameMapper<Annotation> {
- public String createName(Annotation annotation) {
- return ExtValUtils.getInformationProviderBean().getConventionNameForValidationStrategy(annotation);
+public class DefaultAnnotationToValidationStrategyNameMapper implements
+ NameMapper<Annotation>
+{
+ public String createName(Annotation annotation)
+ {
+ return ExtValUtils.getInformationProviderBean()
+ .getConventionNameForValidationStrategy(annotation);
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/SimpleAnnotationToValidationStrategyNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/SimpleAnnotationToValidationStrategyNameMapper.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/SimpleAnnotationToValidationStrategyNameMapper.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/mapper/SimpleAnnotationToValidationStrategyNameMapper.java Thu Aug 14 19:17:02 2008
@@ -26,8 +26,12 @@
/**
* @author Gerhard Petracek
*/
-public class SimpleAnnotationToValidationStrategyNameMapper implements NameMapper<Annotation> {
- public String createName(Annotation annotation) {
- return annotation.annotationType().getName() + ExtValUtils.getInformationProviderBean().getValidationStrategyPostfix();
+public class SimpleAnnotationToValidationStrategyNameMapper implements
+ NameMapper<Annotation>
+{
+ public String createName(Annotation annotation)
+ {
+ return annotation.annotationType().getName() +
+ ExtValUtils.getInformationProviderBean().getValidationStrategyPostfix();
}
}
\ No newline at end of file
Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/util/ClassUtils.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/util/ClassUtils.java?rev=686111&r1=686110&r2=686111&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/util/ClassUtils.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/util/ClassUtils.java Thu Aug 14 19:17:02 2008
@@ -21,41 +21,55 @@
/**
* @author Gerhard Petracek
*/
-public class ClassUtils {
- public static Class loadClassForName(String name) throws ClassNotFoundException {
- try {
+public class ClassUtils
+{
+ public static Class loadClassForName(String name)
+ throws ClassNotFoundException
+ {
+ try
+ {
// Try WebApp ClassLoader first
- return Class.forName(name,
- false, // do not initialize for faster startup
+ return Class.forName(name, false, // do not initialize for faster startup
Thread.currentThread().getContextClassLoader());
}
- catch (ClassNotFoundException ignore) {
+ catch (ClassNotFoundException ignore)
+ {
// fallback: Try ClassLoader for ClassUtils (i.e. the myfaces.jar lib)
- return Class.forName(name,
- false, // do not initialize for faster startup
+ return Class.forName(name, false, // do not initialize for faster startup
ClassUtils.class.getClassLoader());
}
}
- public static Object tryToInstantiateClass(Class targetClass) {
- try {
+ public static Object tryToInstantiateClass(Class targetClass)
+ {
+ try
+ {
return targetClass.newInstance();
- } catch (Throwable t) {
+ }
+ catch (Throwable t)
+ {
//do nothing - it was just a try
}
return null;
}
- public static Object tryToInstantiateClassForName(String className) {
- try {
+ public static Object tryToInstantiateClassForName(String className)
+ {
+ try
+ {
return instantiateClassForName(className);
- } catch (Throwable t) {
+ }
+ catch (Throwable t)
+ {
//do nothing - it was just a try
}
return null;
}
- public static Object instantiateClassForName(String className) throws ClassNotFoundException, IllegalAccessException, InstantiationException {
+ public static Object instantiateClassForName(String className)
+ throws ClassNotFoundException, IllegalAccessException,
+ InstantiationException
+ {
return loadClassForName(className).newInstance();
}
}