Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / hibernate and Struts / 3 сообщений из 3, страница 1 из 1
07.04.2006, 01:56
    #33650681
3181Kirill
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
hibernate and Struts
В чем может быть ошибка? Есть приложение , в котором регистрируются пользователи.Если добавляю одного пользователя в классе extends ActionForm вызывая метод
addUsr,то рабоет нормально, а если еще раз пытаюсь добавить другого, то вылетает

javax.servlet.ServletException: Configuration problem: Could not execute JDBC batch update

public boolean addUsr(String login,String password){
try {
Configuration cfg = new Configuration().addClass(test.hib.User.class);
SessionFactory sf = cfg.buildSessionFactory();
Session sess = sf.openSession();

List lst = sess.find("select login from test.hib.User as us join us.login as login "+
"where us.login = ?",login, Hibernate.STRING);

if(lst.size()!=0)
return false;

User u = new User();
u.setLogin(login);
u.setPassword(password);

Transaction t = sess.beginTransaction();
sess.saveOrUpdate(u);
t.commit();
sess.flush();
sess.close();


} catch (MappingException e) {
e.printStackTrace();
throw new RuntimeException("Configuration problem: " + e.getMessage(), e);
} catch (HibernateException e) {
e.printStackTrace();
throw new RuntimeException("Configuration problem: " + e.getMessage(), e);
}

return true;
}
...
Рейтинг: 0 / 0
07.04.2006, 09:14
    #33650864
funikovyuri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
hibernate and Struts
во-первых, приведите stack trace
во-вторых, flush после commit не нужен (и перед тоже, т.к. commit его неявно выполнит)
...
Рейтинг: 0 / 0
08.04.2006, 00:01
    #33653511
3181Kirill
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
hibernate and Struts
public class LoginLogic{

private Configuration cfg;
private SessionFactory sf;

public LoginLogic(){
try {
cfg = new Configuration().addClass(User.class);
sf = cfg.buildSessionFactory();
} catch (HibernateException e) {
e.printStackTrace();
}
}

public boolean addUsr(String login,String password){
try {

Session s = sf.openSession();
Transaction t = s.beginTransaction();

List lst = s.find("select login from test.hib.User as us join us.login as login "+
"where us.login = ?",login, Hibernate.STRING);

if(lst.size()!=0)
return false;

User u = new User();
u.setLogin(login);
u.setPassword(password);

s.saveOrUpdate(u);
t.commit();
s.close();

} catch (HibernateException e) {
throw new RuntimeException("Configuration problem: " + e.getMessage(), e);
}

return true;
}

И все-таки первый раз , когда я вызываю метод addUsr() в экшне, я нормально добавляю пользователя в базу данных, а во второй раз

javax.servlet.ServletException: Configuration problem: Could not execute JDBC batch update
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / hibernate and Struts / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]