struts2-fullhibernatecore-plugin-2.2.2-GA не работает
Я использую struts2-fullhibernatecore-plugin-2.2.2-GA в демонстрационном проекте strut2 с Hibernate. Я старался изо всех сил, но не могу заставить его работать. Я использую все последние банки.
Я что-то пропустил?
Пожалуйста помоги
ЖУРНАЛ ОШИБОК
2012-09-14 02:06:50 - [ INFO - SessionTransactionInjectorInterceptor:41 ] --> Full Hibernate Plugin Validation could not detect Hibernate Validator 3.x
2012-09-14 02:06:50 - [ INFO - SessionTransactionInjectorInterceptor:46 ] --> Full Hibernate Plugin Validation using Hibernate Validator 4.x
Библиотека в моем проекте
Когда я получаю доступ к странице, чем получить ошибку
java.lang.NullPointerException
com.myapp.dao.CustomerDAOImpl.listCustomer(CustomerDAOImpl.java:26)
com.myapp.web.CustomerAction.listCustomer(CustomerAction.java:47)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:453)......
Мой клиент DAOImpl.java
package com.myapp.dao;
import com.googlecode.s2hibernate.struts2.plugin.annotations.SessionTarget;
import com.googlecode.s2hibernate.struts2.plugin.annotations.TransactionTarget;
import com.myapp.model.Customer;
import org.hibernate.Session;
import org.hibernate.Transaction;
import java.util.List;
public class CustomerDAOImpl implements CustomerDAO {
@SessionTarget
Session session;
@TransactionTarget
Transaction transaction;
//add the customer
public void addCustomer(Customer customer) {
session.save(customer);
}
//return all the customers in list
public List<Customer> listCustomer() {
return session.createQuery("from Customer").list();
}
}
** ИЗДАНО *********************
@SessionTarget
Session session;
@TransactionTarget
Transaction transaction;
Проблема в приведенном выше коде, когда вводятся сеанс и транзакция. Мне интересно, что это может быть проблема с Struts2-fullhibernatecore-plugin-2.2.2-GA не поддерживает
hibernate-release-4.1.6.Final
hibernate-validator-4.3.0.Final
потому что сайт плагина http://code.google.com/p/full-hibernate-plugin-for-struts2/ упомянул, что только поддерживаемые версии
Этот плагин совместим с Hibernate Validator 3.1.0 и 4.0.2 (начиная с версии 2.2).
Это проблема. Кто-нибудь использовал этот плагин с вышеупомянутыми версиями?
Еще один вопрос: можем ли мы использовать этот плагин в производственной среде?
1 ответ
Я думаю, что вы должны использовать Hibernate 3 для плагина.
Beacause в Hibernate 4 DTDEntityResolver
Изменен пакет класса, который использует плагин. В Hibernate 3 этот класс находится в org.hibernate.util
пакет в то время как в Hibernate4 этот класс находится в org.hibernate.internal.xml.util
пакет.