我正在将传统的Spring Web应用程序(使用@RequestMapping和@Controller之类的Spring Rest注释)迁移到springboot。使用JAX-RS(Apache cxf实现)。旧应用使用@InitBinder验证请求对象。我可以使用JAX-RS在springboot中以相同的方式验证请求对象吗?
@Path("/")
public interface MyResource {
@POST
@Path("/my-path")
Response myMethod(MyObject myObject);
}
@Component
public MyResourceImpl implements MyResource {
@Autowired
private MyValidator myValidator;
@InitBinder("myObject")
protected void myBinder(final WebDataBinder webDataBinder) {
webDataBinder.addValidators(myValidator);
}
@Override
public Response myMethod(MyObject myObject) {
//some code
}
}
我的期望是:当我点击我的API时,它应该调用myBinder方法,但是它直接进入重写的myMethod中,而无需验证请求对象!