мне нужно отправить две формы с одной кнопки отправки, поэтому я сделал функцию JS:Как конвертировать строку в объект в Spring MVC
var submitAllForms = function(){
var paymentForm = $("#paymentsDetailsForm").serialize();
var orderForm = $("#orderForm").serialize();
$.ajax({
method: "post",
url: "/order",
dataType: 'json',
data: { paymentsDetailsForm : JSON.stringify(paymentForm), orderForm : JSON.stringify(orderForm) },
success: alert('form has been sent')
});
}
Есть мои формы:
@Data
public class PaymentDetailsForm implements Serializable {
private Date storageDate;
private String paymentMethod;
...
}
@Data
public class OrderForm implements Serializable {
private String company;
private String sizeOfMove;
...
}
Там находится мой контроллер:
@RequestMapping(value = "/order", method = RequestMethod.POST)
public ModelAndView handleOrder(String paymentsDetailsForm, String orderForm) {
// How to cast paymentsDetailsForm to PaymentsDetailsForm
// How to cast orderFormto OrderForm
ModelAndView model = new ModelAndView();
model.addObject("paymentsDetailsForm", new PaymentDetailsForm());
model.setViewName("/order");
return model;
}
}
Так в контроллере, параметр "БЛАНК ЗАКАЗА" выглядит следующим образом: «компания = ROYAL_MOVING & sizeOfM ove = STUDIO ... "
Как преобразовать параметры строки в OrderForm и PaymentsDetailsForm? Или этот вопрос (представлять и обрабатывать несколько форм одним способом) может быть решен каким-то другим способом?