EN · DE · RU · FR · ES

#2835: URLHelper.java

projectforge-wicket/src/main/java/org/projectforge/web/URLHelper.java Type : Java · Rôle : Composant · Source : projectforge-wicket/src/main/java/org/projectforge/web/URLHelper.java 76 lignes · 37 code · 34 commentaires · 5 vides
Fichier de code source dans projectforge-wicket/src/main/java/org/projectforge/web/URLHelper.java contenant du code Java pour la couche Composant.

Structure du code

Paquetage : org.projectforge.web

Classes : URLHelper

Méthodes (2) : encode, removeJSessionId

Importations : 2 paquetages

Code source (abrégé)

package org.projectforge.web;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;

public class URLHelper
{
  private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(URLHelper.class);

  /**
   * Utilise UTF-8
   * @param str
   * @see URLEncoder#encode(String, String)
   */
  public static String encode(final String str)
  {
    if (str == null) {
      return "";
    }
    try {
      return URLEncoder.encode(str, "UTF-8");
    } catch (final UnsupportedEncodingException ex) {
      log.info("Impossible d'encoder l'URL '" + str + "' : " + ex.getMessage());
      return "";
    }
  }

  /**
   * Supprime le paramètre jsessionid de l'URL donnée s'il existe.
   * @param url
   * @return
   */
  public static String removeJSessionId(final String url)
  {
    if (url == null) {
      return null;
    }
    final int pos = url.indexOf(";jsessionid=");
    if (pos < 0) {
      return url;
    }
    final int questionMark = url.indexOf('?');
    if (questionMark < 0) {
      // Pas de paramètres, donc l'URL se termine par l'ID de session.
      return url.substring(0, pos);
    }
    if (questionMark < pos) {
      // Qu'est-ce que c'est que ça ?
      return url;
    }
    return url.substring(0, pos) + url.substring(questionMark);
  }
}

Historique Git

868d6abb7 2025 -> 2026
63081666f En-têtes des fichiers source : 2024 -> 2025.
b6092df09 Copyright 2023 -> 2024
ab45d51fa Copyright 2001-2022 -> 2001-2023.
5f7ef41b8 Copyright 2021 -> 2022