Got исключение причина.
Hibernate: MappingException когда выполнить getHibernateTemplate() запрос на обновление
org.hibernate.MappingException: Unknown entity: UserDetails set confirmed=true where username=? and confirmationCode=?
, когда этот код выполняется:
public void confirmUser(String username,String confirmationCode){
getHibernateTemplate().update("UserDetails set confirmed=true where username=? and confirmationCode=?",new Object[]{username,confirmationCode});
}
EDIT
This query works OK:
public String getUserMail(String username) {
return (String) DataAccessUtils.uniqueResult(getHibernateTemplate().find(
"select mail from UserDetails where username=?", new Object[] { username }));
}
Это означает, , что мой hbm.xml
должен быть ОК тоже:
<hibernate-mapping>
<class name="model.UserDetails" table="users">
<id name="id">
<generator class="increment"/>
</id>
<property name="username" column="username"/>
<property name="password" column="password"/>
<property name="enabled" column="enabled"/>
<property name="mail" column="mail"/>
<property name="city" column="city"/>
<property name="confirmed" column="confirmed"/>
<property name="confirmationCode" column="confirmation_code"/>
<set name="authorities" cascade="all" inverse="true">
<key column="id" not-null="true"/>
<one-to-many class="model.Authority"/>
</set>
</class>
</hibernate-mapping>
Вопрос заключается в том, как выполнить update
метод с набором параметров, поскольку getHibernateTemplate().update
предполагает передать Object
методу, но не SQL
запрос.
Попробуйте использовать полное имя класса. И добавьте еще несколько деталей. –
@ slayer_b Вы предлагаете добавить его с объявлением пакета? – sergionni
Да. Опубликуйте свою сущность, конфигурацию, дао, я имею в виду весь класс. Потому что кажется, что ошибка в конфигурации. –