Я использую hibernate, Spring и Velocity в Java.
Я расширяю SimpleFormController и использую типичный объект 'User' для командного класса.Я хочу обновить или создать класс User с помощью формы, которую я отражаю обратно в спящий режим, чтобы значения можно было обновлять в базе данных.
Моя проблема заключается в том, что я хочу отобразить дополнительные данные в шаблоне скоростиразрешено в 'userEdit', но я не хочу хранить эти данные в объекте пользователя.
Мой упрощенный объект пользователя:
public class User implements Serializable {
private String username;
private String password;
private Set<Object> allowedNames;
...
}
Мой бин определяется следующим образом:
<bean id="userEditController" class="com.UserEditController">
<property name="sessionForm"><value>true</value></property>
<property name="commandClass"><value>com.data.User</value></property>
<property name="validator"><ref bean="userValidator"/></property>
<property name="formView"><value>userEdit</value></property>
<property name="successView"><value>UserEdit</value></property>
<property name="dao">
<ref bean="myDAO"/>
</property>
</bean>
Переменная 'allowNames' содержит часть списка имен в базе данных и относится к конкретному пользователю.Мне интересно, как я могу также отобразить полный список имен (извлеченный из базы данных), чтобы я мог использовать его в моем шаблоне скорости userEdit.Потому что я хочу показать «позволенные имена» рядом с «все имена».
Использование SimpleFormController позволяет мне напрямую контролировать объект User, создавать новых пользователей или обновлять их в базе данных, однако, добавление любой дополнительной информации в форму очень сложно для меня, потому что я застрял сПользовательский объект.
'allNames' не принадлежит классу User, поэтому я попытался создать объект для хранения объекта User и набора с именем allNames.Я называю это своим классом UserEdit.Моя проблема в том, что я не могу ссылаться на переменные объекта User без аксессоров в шаблоне скорости, таких как $ command.user.username, и также не могу связать их для ошибок или использовать объект User для отражения и формирования изменений обратно в базу данных.
Мой вопрос касается того, как я могу либо использовать этот объект 'UserEdit' в своей форме, либо иным образом использовать другой подход, чтобы моя форма могла содержать пользовательские данные и другие данные, и в то же времявозможность обновления объекта User (что отражается в спящем режиме).У кого-нибудь есть подход к этому?