Rev 2018 |
Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
package pt.estgp.es.exemplos.hibernate.web;
import pt.estgp.es.exemplos.hibernate.HibernateUtils;
import pt.estgp.es.exemplos.hibernate.UserSession;
import pt.estgp.es.exemplos.hibernate.UserSessionImpl;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import static org.
hibernate.
criterion.
Restrictions.
like;
public class SecurityFilter
implements 1.5.0/docs/api/java/util/logging/Filter.html">Filter {
@
1.5.0/docs/api/java/lang/Override.html">Override
public void init
(FilterConfig filterConfig
) throws ServletException
{
}
@
1.5.0/docs/api/java/lang/Override.html">Override
public void doFilter
(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain
) throws 1.5.0/docs/api/java/io/IOException.html">IOException, ServletException
{
HttpServletResponse response=
(HttpServletResponse
) servletResponse
;
HttpServletRequest request =
(HttpServletRequest
) servletRequest
;
request.
getSession().
getId();
//SecurityCotextProvider.getInstance().registerSessionContext(request.getSession().getId());
HibernateUtils.
getCurrentSession().
beginTransaction();
/*User user= (User)HibernateUtils.getCurrentSession()
.createCriteria(User.class)
.createAlias("user", "u")
.add(like("u.nome", "jorge"))
.add(eq("username", "jcmachado"))
.add(eq("password", "123"))
//.add(Order.asc("username"))
.uniqueResult();*/
User u =
null;
try {
UserSession session=
(UserSession
) HibernateUtils.
getCurrentSession().
load(UserSession.
class, request.
getSession().
getId());;
if(session==
null){
session=
new UserSessionImpl
();
session.
setCookie(request.
getSession().
getId());
HibernateUtils.
getCurrentSession().
save(session
);
}
u= session.
getUser();
}
catch (1.5.0/docs/api/java/lang/Exception.html">Exception e
){
UserSession session =
new UserSessionImpl
();
session.
setCookie(request.
getSession().
getId());
HibernateUtils.
getCurrentSession().
save(session
);
}
HibernateUtils.
getCurrentSession().
getTransaction().
commit();
filterChain.
doFilter(servletRequest, response
);
}
@
1.5.0/docs/api/java/lang/Override.html">Override
public void destroy
() {
}
}