2009-04-17 36 views
25

tôi tiếp tục nhận được một:Hibernate: Không CurrentSessionContext cấu hình

HibernateException: Không CurrentSessionContext cấu hình!

trong mã của tôi. Thông tin duy nhất mà các tìm kiếm khác trả lại là thủ phạm là:

<property name="current_session_context_class">thread</property> 

trong hibernate.cfg.xml của tôi. Tôi có điều đó trong tập tin hibernate.cfg.xml của mình, và tôi đang chạy nó trong Tomcat 6. Có ai biết các nguyên nhân có thể khác không?

Trả lời

25

Tôi tin rằng bạn cần phải thiết lập current_session_context_class của bạn đến một lớp học thực tế ... Tôi đã hibernate.cfg.xml của tôi cấu hình cho điều đó như sau:

<property name="hibernate.current_session_context_class">org.hibernate.context.ThreadLocalSessionContext</property> 

Đoạn mã trên được sử dụng cho một cơ sở dữ liệu MySQL nhưng tôi không nghĩ rằng nó quan trọng gì gõ cơ sở dữ liệu cho các tài sản trên

Hope this helps

+0

' org.hibernate.context.ThreadLocalSessionContext ' –

+3

@javaloper, nó sẽ được tốt đẹp nếu bạn chỉ nói rằng có một lỗi đánh máy: "hibnerate" thay vì "hibernate". Tôi đã tự hỏi tại sao bạn đăng cùng một điều trong bình luận của bạn. – Jamol

+1

Hibernate 4+ đã chuyển lớp này sang: org.hibernate.context.internal.ThreadLocalSessionContext như được đề cập bởi Jacob bên dưới – bigleftie

2

tôi đang sử dụng Hibernate 4 trên tomcat 7 và các thuộc tính bên dưới (một trong những đề cập trong câu hỏi) làm việc cho tôi .

<property name="current_session_context_class">thread</property> 
10

Cả hai làm việc trong Hibernate 4+:

<property name="hibernate.current_session_context_class">thread</property> 
<property name="hibernate.current_session_context_class">org.hibernate.context.internal.ThreadLocalSessionContext</property> 

Trong phiên bản trước của nó được sử dụng Hibernate org.hibernate.context.ThreadLocalSessionContext (như trong các câu trả lời khác).

3

Trong Hibernate 4.1.5 nó là:

<property> name="hibernate.current_session_context_class">org.hibernate.context.internal.ThreadLocalSessionContext</property> 
0
var config = new Configuration().Configure(); // Read config from hibernate.cfg.xml 
config.CurrentSessionContext<WebSessionContext>(); // <-- No CurrentSessionContext fixing 
return config.BuildSessionFactory(); 
Các vấn đề liên quan