Supprimer les jsessionid des urls pour un meilleur référencement de vos pages dans les applications JEE
Ceci n’est pas un bug mais le fonctionnement de base de JEEJava Entreprise Edition qui crée une session. Ne sachant pas si le navigateur du client possède la fonctionnalité des cookies, java préfère passer la session dans l’url.
Pour ce faire, il suffit de créer un filter comme expliqué dans l’excellent post suivant:
http://java.dzone.com/articles/java-jsessionid-harmful
Créer une classe java suivante:
public class URLSessionFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if (!(request instanceof HttpServletRequest)) {
chain.doFilter(request, response);
return;
}
HttpServletResponse httpResponse = (HttpServletResponse) response;
HttpServletResponseWrapper wrappedResponse = new HttpServletResponseWrapper(
httpResponse) {
public String encodeRedirectUrl(String url) {
return url;
}
public String encodeRedirectURL(String url) {
return url;
}
public String encodeUrl(String url) {
return url;
}
public String encodeURL(String url) {
return url;
}
};
chain.doFilter(request, wrappedResponse);
}
public void init(FilterConfig filterConfig) {
}
public void destroy() {
}
}
Et renseigner ce filter dans votre web.xml:
<filter>
<filter-name>URLSessionFilter</filter-name>
<filter-class>com.framework.filter.URLSessionFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>URLSessionFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
C’est tout! Le paramètre jsessionid disparait tout simplement des urls lors de la première connexion.
Attention néanmoins si vous utiliser pretty faces, il est important de placer ce filter avant le filter de prettry faces, sinon pretty-faces sera comme désactivé.
La Business Intelligence (informatique décisionnelle en français) est un domaine de l’informatique de gestion ayant pour but de collecter, consolider, modéliser et restituer des données internes ou externes à l’entreprise en vue d’offrir une aide à la déc
La Direction des Systèmes d'Information (DSI) joue aujourd'hui un rôle stratégique dans la réussite de la transformation numérique des entreprises. Loin d'être un simple support technique, la DSI moderne est un acteur central, qui porte la stratégie IT, structure la gouvernance numérique, et garantit l'alignement entre les métiers et le système d'information.
Qui n’a jamais eu le besoin de comparer 2 schemas de base de données Mysql après avoir oublier de noter l’ensemble des modifications apportées à un environnement ?