SpringRoo1.2.4@RooWebJson不';如果支持jsonObject不';我没有@RooJpaActiveRecord
我正在使用SpringRoo1.2.4和STS3.2.0 我有一个电子邮件对象,它是一个域类,因此它有以下注释:SpringRoo1.2.4@RooWebJson不';如果支持jsonObject不';我没有@RooJpaActiveRecord,spring,annotations,spring-roo,Spring,Annotations,Spring Roo,我正在使用SpringRoo1.2.4和STS3.2.0 我有一个电子邮件对象,它是一个域类,因此它有以下注释: @RooJavaBean @RooToString @RooJpaActiveRecord @RequestMapping("/emails") @Controller @RooWebScaffold(path = "emails", formBackingObject = Email.class) @RooWebJson(jsonObject = Email.class) My
@RooJavaBean
@RooToString
@RooJpaActiveRecord
@RequestMapping("/emails")
@Controller
@RooWebScaffold(path = "emails", formBackingObject = Email.class)
@RooWebJson(jsonObject = Email.class)
My EmailController具有以下批注:
@RooJavaBean
@RooToString
@RooJpaActiveRecord
@RequestMapping("/emails")
@Controller
@RooWebScaffold(path = "emails", formBackingObject = Email.class)
@RooWebJson(jsonObject = Email.class)
我的EmailServiceController\u Roo\u Controller\u Json.aj生成得非常完美
现在,我需要一个EmailBean对象,它表示我的Email类中的一部分字段,这样我就可以允许外部系统通过json只传入所需的相关字段来创建电子邮件对象,因为域类中的其余字段在保存时由系统生成
我用以下注释EmailBean:
@RooJson
@RooJavaBean
@RooToString
如您所见,没有@RooSpaActiveRecord,因为这个bean不表示数据库中的任何内容(不是域类)
现在,在创建EmailServiceController并使用以下内容进行注释时:
@RequestMapping("/service/emails")
@Controller
@RooWebJson(jsonObject = EmailBean.class)
未生成EmailServiceController\u Roo\u Controller\u Json.aj。为什么会这样?如果我将@RooSpaActiveRecord注释添加到我的EmailBean中,则会生成EmailServiceController\u Roo\u Controller\u Json.aj。如果我用@RooSpaActiveRecord注释EmailBean,为什么Roo只生成json控制器aj文件?我做错了什么吗?在仔细研究了控制器上为@RooJpaActiveRecord注释的域类生成的实际json方法之后,我注意到它们都是针对CRUD操作的(即影响数据库)。这意味着从Roo的角度来看,为非域类(存储在db中)的实体生成控制器json方法是没有意义的,因为它不知道您在寻找什么业务方法。这意味着我需要在我的控制器中手动创建自己的控制器,因为只有我知道我想要做什么