瀏覽代碼

Created command package.

Moved TrackCommand to new package.
Added simple Validator for TrackCommands.
Jesper Hammarbäck 19 年之前
父節點
當前提交
9edfb509f2

dddsample/src/main/java/se/citerus/dddsample/web/TrackCommand.java → dddsample/src/main/java/se/citerus/dddsample/web/command/TrackCommand.java 查看文件

@@ -1,4 +1,4 @@
1
-package se.citerus.dddsample.web;
1
+package se.citerus.dddsample.web.command;
2 2
 
3 3
 public class TrackCommand {
4 4
 

+ 34
- 0
dddsample/src/main/java/se/citerus/dddsample/web/command/TrackCommandValidator.java 查看文件

@@ -0,0 +1,34 @@
1
+package se.citerus.dddsample.web.command;
2
+
3
+import org.apache.commons.lang.StringUtils;
4
+import org.apache.commons.logging.Log;
5
+import org.apache.commons.logging.LogFactory;
6
+import org.springframework.validation.Errors;
7
+import org.springframework.validation.Validator;
8
+
9
+/**
10
+ * Validator for {@link se.citerus.dddsample.web.command.TrackCommand}s.
11
+ */
12
+public class TrackCommandValidator implements Validator {
13
+
14
+  /**
15
+   * Logger for this class and subclasses
16
+   */
17
+  private final Log logger = LogFactory.getLog(getClass());
18
+
19
+  public boolean supports(Class clazz) {
20
+    return TrackCommand.class.isAssignableFrom(clazz);
21
+  }
22
+
23
+  public void validate(Object object, Errors errors) {
24
+    final TrackCommand command = (TrackCommand) object;
25
+
26
+    if (StringUtils.isEmpty(command.getTrackingId())) {
27
+      final String msg = "Illegal id!";
28
+      logger.warn(msg);
29
+      errors.rejectValue("trackingId", "track.illegal-id", msg);
30
+    }
31
+  }
32
+
33
+}
34
+

+ 1
- 0
dddsample/src/main/resources/log4j.properties 查看文件

@@ -17,3 +17,4 @@ log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
17 17
 
18 18
 # Mute some packages
19 19
 log4j.logger.org=warn
20
+log4j.logger.net.sf.ehcache=warn

+ 3
- 0
dddsample/src/main/webapp/WEB-INF/dispatch-servlet.xml 查看文件

@@ -9,8 +9,11 @@
9 9
     <property name="formView" value="start"/>
10 10
     <property name="successView" value="cargo"/>
11 11
     <property name="cargoService" ref="cargoService"/>
12
+    <property name="validator" ref="trackCommandValidator"/>
12 13
   </bean>
13 14
 
15
+  <bean id="trackCommandValidator" class="se.citerus.dddsample.web.command.TrackCommandValidator"/>
16
+
14 17
   <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
15 18
     <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
16 19
     <property name="prefix" value="/WEB-INF/jsp/"/>