SOno riuscito a farmi tornare un altro genere di eccezione :P
La classe Home resta come nel codice che ho implementato. In più mi sono creato una classe Manager:
Codice PHP:
public class UtentiManager {
protected Log logger = LogFactory.getLog(this.getClass());
private static UtentiManager instance;
public static final UtentiHome dao = new UtentiHome();
/**
*
* @return
*/
public static synchronized UtentiManager getInstance() {
if (instance == null) {
instance = new UtentiManager();
}
return instance;
}
public Utenti login(String nickname,String password){
Utenti u = null;
try{
u = dao.login(nickname, password);
}
catch(RuntimeException error){
logger.error("Error login: ",error);
}
return u;
}
}
e la classe Business l'ho modificata in:
Codice PHP:
public UtentiMapping login(String nickname,String password){
UtentiMapping u = new UtentiMapping();
Utenti uu = new Utenti();
Transaction tx = null;
try{
SessionFactory session = UtentiManager.getInstance().dao.getSessionFactory();
Session s = session.getCurrentSession();
tx = s.beginTransaction();
uu = UtentiManager.getInstance().login(nickname, password);
tx.commit();
}
catch(RuntimeException error){
logger.error("Error: " ,error);
}
return u;
}
adesso l'eccezione è:
Codice PHP:
28-mag-2010 11.06.15 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JPA-QL strict compliance: disabled
28-mag-2010 11.06.15 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Second-level cache: enabled
28-mag-2010 11.06.15 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query cache: disabled
28-mag-2010 11.06.15 org.hibernate.cfg.SettingsFactory createCacheProvider
INFO: Cache provider: org.hibernate.cache.NoCacheProvider
28-mag-2010 11.06.15 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Optimize cache for minimal puts: disabled
28-mag-2010 11.06.15 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Structured second-level cache entries: disabled
28-mag-2010 11.06.16 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Statistics: disabled
28-mag-2010 11.06.16 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Deleted entity synthetic identifier rollback: disabled
28-mag-2010 11.06.16 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default entity-mode: pojo
28-mag-2010 11.06.16 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Named query checking : enabled
28-mag-2010 11.06.16 org.hibernate.impl.SessionFactoryImpl <init>
INFO: building session factory
28-mag-2010 11.06.20 org.hibernate.impl.SessionFactoryObjectFactory addInstance
INFO: Not binding factory to JNDI, no JNDI name configured
28-mag-2010 11.06.45 business.UtentiBusiness login
GRAVE: Error:
org.hibernate.HibernateException: No CurrentSessionContext configured!
at org.hibernate.impl.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:542)
at business.UtentiBusiness.login(UtentiBusiness.java:23)
at action.utenti.Login.execute(Login.java:29)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
at java.lang.Thread.run(Thread.java:619)