Author: lukaszlenart
Date: Mon Jan 21 18:13:32 2013
New Revision: 1436526

URL: http://svn.apache.org/viewvc?rev=1436526&view=rev
Log:
WW-3829 adds better logging and improve example in JavaDoc

Modified:
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java?rev=1436526&r1=1436525&r2=1436526&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/annotations/Conversion.java
 Mon Jan 21 18:13:32 2013
@@ -22,13 +22,13 @@ import java.lang.annotation.Target;
 
 /**
  * <!-- START SNIPPET: description -->
- * <p/>A marker annotation for type conversions at Type level.
+ * A marker annotation for type conversions at Type level.
  * <!-- END SNIPPET: description -->
  *
  * <p/> <u>Annotation usage:</u>
  *
  * <!-- START SNIPPET: usage -->
- * <p/>The Conversion annotation must be applied at Type level.
+ * The Conversion annotation must be applied at Type level. Check also 
[TypeConversion Annotation] for more examples!
  * <!-- END SNIPPET: usage -->
  *
  * <p/> <u>Annotation parameters:</u>
@@ -58,8 +58,24 @@ import java.lang.annotation.Target;
  *
  * <pre>
  * <!-- START SNIPPET: example -->
- * &#64;Conversion()
+ * &#64;Conversion(
+ *     conversions = {
+ *          // key must be the name of a property for which converter should 
be used
+ *          &#64;TypeConversion(key = "date", converter = 
"org.demo.converter.DateConverter")
+ *     }
+ * )
  * public class ConversionAction implements Action {
+ *
+ *     private Date date;
+ *
+ *     public setDate(Date date) {
+ *         this.date = date;
+ *     }
+ *
+ *     public Date getDate() {
+ *         return date;
+ *     }
+ *
  * }
  *
  * <!-- END SNIPPET: example -->

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java?rev=1436526&r1=1436525&r2=1436526&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/XWorkConverter.java
 Mon Jan 21 18:13:32 2013
@@ -20,8 +20,8 @@ import com.opensymphony.xwork2.FileManag
 import com.opensymphony.xwork2.FileManagerFactory;
 import com.opensymphony.xwork2.ObjectFactory;
 import com.opensymphony.xwork2.XWorkConstants;
-import com.opensymphony.xwork2.XWorkMessages;
 import com.opensymphony.xwork2.XWorkException;
+import com.opensymphony.xwork2.XWorkMessages;
 import com.opensymphony.xwork2.conversion.TypeConverter;
 import com.opensymphony.xwork2.conversion.annotations.Conversion;
 import com.opensymphony.xwork2.conversion.annotations.ConversionRule;
@@ -29,10 +29,15 @@ import com.opensymphony.xwork2.conversio
 import com.opensymphony.xwork2.conversion.annotations.TypeConversion;
 import com.opensymphony.xwork2.inject.Inject;
 import com.opensymphony.xwork2.ognl.XWorkTypeConverterWrapper;
-import com.opensymphony.xwork2.util.*;
+import com.opensymphony.xwork2.util.AnnotationUtils;
+import com.opensymphony.xwork2.util.ClassLoaderUtil;
+import com.opensymphony.xwork2.util.CompoundRoot;
+import com.opensymphony.xwork2.util.LocalizedTextUtil;
+import com.opensymphony.xwork2.util.ValueStack;
 import com.opensymphony.xwork2.util.logging.Logger;
 import com.opensymphony.xwork2.util.logging.LoggerFactory;
 import com.opensymphony.xwork2.util.reflection.ReflectionContextState;
+import org.apache.commons.lang3.StringUtils;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -40,10 +45,16 @@ import java.lang.annotation.Annotation;
 import java.lang.reflect.Member;
 import java.lang.reflect.Method;
 import java.net.URL;
-import java.util.*;
+import java.text.MessageFormat;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-import java.text.MessageFormat;
 
 
 /**
@@ -587,7 +598,11 @@ public class XWorkConverter extends Defa
                         break;
                     }
                     if (LOG.isDebugEnabled()) {
-                        LOG.debug(key + ":" + key);
+                        if (StringUtils.isEmpty(key)) {
+                            LOG.debug("WARNING! key of @TypeConversion [#0] 
applied to [#1] is empty!", tc.converter(), clazz.getName());
+                        } else {
+                            LOG.debug("TypeConversion [#0] with key: [#1]", 
tc.converter(), key);
+                        }
                     }
 
                     if (key != null) {


Reply via email to