Struts 2はjsonを返します


package com.insuper.action;

import com.insuper.service.UserService;
import com.insuper.vo.User;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;

/**
 *     
 * 
 * @author seawind
 * 
 */
public class UserAction extends ActionSupport implements ModelDriven {
	private String re;
	private User user = new User();

	@Override
	public User getModel() {
		return user;
	}
	

	public String getRe() {
		return re;
	}


	public void setRe(String re) {
		this.re = re;
	}


	public String register() throws Exception {
		System.out.println("     action   ... ");
		userService.addUser(user);
		this.re="      ";
		return SUCCESS;

	}

	private UserService userService;

	public void setUserService(UserService userService) {
		this.userService = userService;
	}

}

これはユーザ登録を例として,必ず戻り値があることに注意し,voidメソッドではなくStrutsブロッキングに入ることができない.
	
		
		
			
				re
			
		

ここではextends=「json-default」に注意してください.

	
	
	dataMap
	
	true
	
	userList.*
	
	SUCCESS
      ,   JSON         JSON。 JSON     ACTION  get       ,

     get            ,    。

           get*(         ),

                        。

      :@JSON(serialize=false)


    ,JSON          :

serialize:          

deserialize:           。

format:         、          。  "yyyy-MM-dd'T'HH:mm:ss"。

//                    

@JSON(name="newName")

public String getName()

{

return this.name;

}

     import com.googlecode.jsonplugin.annotations.JSON;

@JSON(serialize=false)

public User getUser() {

return this.User;

}

@JSON(format="yyyy-MM-dd")

public Date getStartDate() {

return this.startDate;

}