You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by mr...@apache.org on 2007/11/08 00:43:14 UTC
svn commit: r592959 - in /struts/sandbox/trunk/struts2-rest-plugin:
showcase/src/main/java/org/apache/struts2/rest/example/
showcase/src/main/resources/ showcase/src/main/webapp/WEB-INF/
src/main/resources/
Author: mrdon
Date: Wed Nov 7 15:43:12 2007
New Revision: 592959
URL: http://svn.apache.org/viewvc?rev=592959&view=rev
Log:
Adding service obj to example, minimizing config, making xhtml default extension
Added:
struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersService.java
Removed:
struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/resources/
Modified:
struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/Order.java
struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersController.java
struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/webapp/WEB-INF/web.xml
struts/sandbox/trunk/struts2-rest-plugin/src/main/resources/struts-plugin.xml
Modified: struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/Order.java
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/Order.java?rev=592959&r1=592958&r2=592959&view=diff
==============================================================================
--- struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/Order.java (original)
+++ struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/Order.java Wed Nov 7 15:43:12 2007
@@ -1,7 +1,5 @@
package org.apache.struts2.rest.example;
-import com.thoughtworks.xstream.annotations.XStreamAlias;
-
public class Order implements Cloneable {
String id;
String clientName;
Modified: struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersController.java
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersController.java?rev=592959&r1=592958&r2=592959&view=diff
==============================================================================
--- struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersController.java (original)
+++ struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersController.java Wed Nov 7 15:43:12 2007
@@ -1,10 +1,6 @@
package org.apache.struts2.rest.example;
-import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
import org.apache.struts2.config.Result;
import org.apache.struts2.config.Results;
@@ -22,30 +18,10 @@
public class OrdersController extends ValidationAwareSupport implements ModelDriven<Object>, Validateable{
private Order model = new Order();
- private static Map<String,Order> orders = new HashMap<String,Order>();
- private static int nextId = 6;
private String id;
-
- static {
- orders.put("3", new Order("3", "Bob", 33));
- orders.put("4", new Order("4", "Sarah", 44));
- orders.put("5", new Order("5", "Jim", 66));
- }
private Collection<Order> list;
+ private OrdersService ordersService = new OrdersService();
- public void setId(String id) {
- if (id != null && orders.containsKey(id)) {
- this.model = orders.get(id);
- }
- this.id = id;
- }
-
- public void validate() {
- if (model.getClientName() == null || model.getClientName().length() ==0) {
- addFieldError("clientName", "The client name is empty");
- }
- }
-
public HttpHeaders show() {
return new DefaultHttpHeaders("show");
}
@@ -62,32 +38,44 @@
public String deleteConfirm() {
return "deleteConfirm";
}
-
+
public String destroy() {
- orders.remove(id);
+ ordersService.remove(id);
addActionMessage("Order removed successfully");
return "success";
}
public HttpHeaders create() {
- model.setId(String.valueOf(nextId++));
- orders.put(model.getId(), model);
+ ordersService.save(model);
addActionMessage("New order created successfully");
return new DefaultHttpHeaders("success")
.setLocationId(model.getId());
}
public String update() {
- orders.put(id, model);
+ ordersService.save(model);
addActionMessage("Order updated successfully");
return "success";
}
public HttpHeaders index() {
- list = new ArrayList(orders.values());
+ list = ordersService.getAll();
return new DefaultHttpHeaders("index")
.disableCaching();
+ }
+
+ public void setId(String id) {
+ if (id != null) {
+ this.model = ordersService.get(id);
+ }
+ this.id = id;
+ }
+
+ public void validate() {
+ if (model.getClientName() == null || model.getClientName().length() ==0) {
+ addFieldError("clientName", "The client name is empty");
+ }
}
public Object getModel() {
Added: struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersService.java
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersService.java?rev=592959&view=auto
==============================================================================
--- struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersService.java (added)
+++ struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/java/org/apache/struts2/rest/example/OrdersService.java Wed Nov 7 15:43:12 2007
@@ -0,0 +1,35 @@
+package org.apache.struts2.rest.example;
+
+import java.util.*;
+
+public class OrdersService {
+
+ private static Map<String,Order> orders = new HashMap<String,Order>();
+ private static int nextId = 6;
+ static {
+ orders.put("3", new Order("3", "Bob", 33));
+ orders.put("4", new Order("4", "Sarah", 44));
+ orders.put("5", new Order("5", "Jim", 66));
+ }
+
+ public Order get(String id) {
+ return orders.get(id);
+ }
+
+ public List<Order> getAll() {
+ return new ArrayList<Order>(orders.values());
+ }
+
+ public void save(Order order) {
+ if (order.getId() == null) {
+ order.setId(String.valueOf(nextId++));
+ }
+
+ orders.put(order.getId(), order);
+ }
+
+ public void remove(String id) {
+ orders.remove(id);
+ }
+
+}
Modified: struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/webapp/WEB-INF/web.xml?rev=592959&r1=592958&r2=592959&view=diff
==============================================================================
--- struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/webapp/WEB-INF/web.xml (original)
+++ struts/sandbox/trunk/struts2-rest-plugin/showcase/src/main/webapp/WEB-INF/web.xml Wed Nov 7 15:43:12 2007
@@ -17,6 +17,10 @@
<param-name>actionPackages</param-name>
<param-value>org.apache.struts2.rest.example</param-value>
</init-param>
+ <init-param>
+ <param-name>devMode</param-name>
+ <param-value>true</param-value>
+ </init-param>
</filter>
<!-- END SNIPPET: filter -->
Modified: struts/sandbox/trunk/struts2-rest-plugin/src/main/resources/struts-plugin.xml
URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-rest-plugin/src/main/resources/struts-plugin.xml?rev=592959&r1=592958&r2=592959&view=diff
==============================================================================
--- struts/sandbox/trunk/struts2-rest-plugin/src/main/resources/struts-plugin.xml (original)
+++ struts/sandbox/trunk/struts2-rest-plugin/src/main/resources/struts-plugin.xml Wed Nov 7 15:43:12 2007
@@ -18,7 +18,7 @@
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="html" class="org.apache.struts2.rest.handler.HtmlHandler" />
<constant name="struts.actionProxyFactory" value="rest" />
- <constant name="struts.rest.defaultExtension" value="xml" />
+ <constant name="struts.rest.defaultExtension" value="xhtml" />
<constant name="struts.mapper.class" value="rest" />
<constant name="struts.mapper.idParameterName" value="id" />
<constant name="struts.action.extension" value="xhtml,,xml,json" />