J'ai une page qui a un formulaire sur lequel l'utilisateur peut enregistrer ou supprimer un bean. L'objet backing de formulaire a un bean comme sa propriété. Lorsque l'utilisateur choisit de supprimer un bean, il n'est pas nécessaire de lier le bean car JPA ne nécessite que l'id du bean à supprimer. Y a-t-il un moyen de dire au Spring MVC de ne pas lier certaines des propriétés d'un objet de support de formulaire dans certaines conditions? Je souhaite ignorer la liaison de sa propriété bean si la demande est à supprimer.Liaison sélective d'une propriété dans Spring MVC
EDIT: J'utilise Spring 3. Voici le code de psuedo.
@Controller
public class FormController {
@RequestMapping(method = RequestMethod.POST)
public void process(HttpServletRequest request) {
String action = request.getParameter("action");
if (action.equals("SAVE")) {
// bind all parameters to the bean property of the FormObject
}
else if (action.equals("DELETE")) {
// skip the binding. manually read the bean.id parameter.
int id = Integer.valueOf(request.getParameter("bean.id"));
EntityManager entityManager = ...
Bean bean = entityManager.getReference(Bean.class, id);
entityManager.remove(bean);
}
}
public class Bean {
private int id;
}
public class FormObject {
private Bean bean;
}
}
donner: version de printemps, et exemple de code – Bozho