My goal is to load a "Promotion" object into an HTML form, modify some of the inputs, click "save" and save the changes to that Promotion object back to a database. The first part is woriking, I can see the form and the inputs are loaded with the appropriate values. However, when I click "save", I get the following error:
PromotionRequest parameter 'promotion' is not present
Here's my controller code:
@RequestMapping ( value = "", method = RequestMethod.GET, produces = { MediaType.TEXT_HTML_VALUE } )
public String getEditCampaignPage( final Model model,
@RequestParam ( value = "campaignId" ) final int campaignIdParam )
{
String token = securityService.getCurrentUser().getTokenId();
int campaignId = campaignIdParam;
Promotion original = promotionService.obtain(token, campaignId);
model.addAttribute("campaignId" , campaignId);
model.addAttribute("promotion", original);
return "marketing.campaigns.edit.campaign.edit-campaign.definition";
}
@RequestMapping ( value = "submit", method = RequestMethod.POST, produces = { MediaType.TEXT_HTML_VALUE } )
public String getSubmitCampaignPage( final Model model,
final HttpServletRequest request,
@RequestParam ( value = "campaignId" ) final long campaignId,
@RequestParam (value = "promotion") final Promotion campaign,
final BindingResult result,
final RedirectAttributes redirectAttributes )
{
final int partnerId = securityService.getCurrentUser().getPartnerId();
//TODO: Save the modified campaign and return to an edit or view screen for that campaign
return "marketing.campaigns.edit.campaign.edit-campaign.definition";
}
question from:
https://stackoverflow.com/questions/65945076/spring-mvc-parameter-promotion-is-not-present 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…