невозможно связать данные с помощью функции данных Spring
Тема находится в продолженииотправка-данных-спина к контроллеру-пружинно-MVC
Я работаю над страницей сведений о продукте, где мне нужно показать пользователю некоторые параметры, и пользователь выберет несколько из них, а на кнопке отправки продукт должен быть добавлен в корзину. Мои намерения состоят в том, чтобы перенести этот объект данных в мой контроллер корзины, чтобы я мог использовать эти значения, и поскольку объект содержит динамические значения, поэтому невозможно определить объект с предварительно определенными полями. Это мой объект данных
public class PrsData {
private Map<String, List<PrsCDData>> prsCDData;
public PrsData(){
this.prsCDData = MapUtils.lazyMap(new HashMap<String, List<PrsCDData>>(),
FactoryUtils.instantiateFactory(PrsCDData.class));
}
}
public class PrsCDData {
private Map<String, List<ConfiguredDesignData>> configuredDesignData;
// same lazy map initialization
}
В моем контроллере страницы сведений о продукте я устанавливаю следующие значения:
model.addAttribute("prsData", productData.getPrsData());
и на моей странице деталей продукта JSP у меня есть это в моей форме:
<form:form method="post" commandName="prsData" action="${addProductToCartAction}" >
<form:hidden path="prsCDData[''${prsCDDataMap.key}'']
[${status.index}].configuredDesignData['${configuredDesignDataMap.key}']
[${configuredDesignDataStatus.index}].code" />
</form:form>
Но когда я нажимаю кнопку отправки, я получаю следующее исключение
org.springframework.beans.InvalidPropertyException:
Invalid property 'prsCDData['Forced'][0]' of bean class [com.product.data.PrsData]:
Property referenced in indexed property path 'prsCDData['Forced'][0]'
is neither an array nor a List nor a Set nor a Map;
returned value was [com.product.data.PrsCDData@6164f07e]
Я не уверен, где я делаю что-то не так, поскольку на странице сведений о продукте эти скрытые поля правильно связываются и им присваиваются даже значения, но при отправке формы я сталкиваюсь с этой проблемой.