【发布时间】:2013-07-01 15:22:52
【问题描述】:
我有一个主枚举类,它本质上是一种对象类型的类定义。例如,它看起来像下面的示例:
public enum ColorDefinition
{
private String abbrev;
private String color;
private Class colorClass;
RED("RD", "Red", Red.class),
GREEN("GN", "Green", Green.class),
BLUE("BL", "Blue", Blue.class)....
}
我正在尝试从 Javascript 模型设置一个发布请求,该模型在正文中发送一个映射,例如
{红色:255,绿色:0,蓝色:0}
到使用
@RequestMapping(value = "v1/color/EnableColors", method = RequestMethod.POST)
@ResponseBody
public ResponseObject enableColors(@RequestBody Map<ColorDefinition, Integer> colorMapping)
我收到以下错误消息:
无法从字符串“Red”构造 ColorDefinition 类型的 Map 键:不是有效的表示:无法从字符串“Red”构造 ColorDefinition 类型的 Map 键:不是枚举类的值之一
我在这里做错了什么?我是否需要枚举类中的其他方法来正确转换传入的枚举值?它是否应该使用枚举中的另一个值(我已经尝试过但没有成功)?任何帮助表示赞赏,似乎这应该可以自动转换传入的值,我就是想不通!
【问题讨论】:
-
您找到解决方法了吗?我有类似的问题,不知道该怎么办..