DIRECT_URL dans une alerte ne me donne pas une URL complète

3.2
DIRECT_URL dans une alerte ne me donne pas une URL complète
0.0 0
Tags: #<Tag:0x00007f682c80b308>

#1

Bonjour,

J’ai migré une application de la version 3.0 à la version 3.2 (Simplicité® version 3.2.M07 (built on 2018-04-10 for tomcat 8)).
Dans cette application, j’ai des alertes dont le contenu contient la balise [DIRECT_URL].
Depuis que nous sommes passés en 3.2 nous n’avons pas le même comportement:
en 3.0 : http://localhost:8080/peps/jsp/index.jsp?direct=ALL_form.jsp
en 3.2 : /peps/jsp/index.jsp?direct=ALL_form.jsp …

J’ai “perdu” le début de mon url.
J’ai essayé de contourner en modifiant mes alertes en concaténant ainsi: [EXPR:obj.getGrant().getContextURL()][DIRECTURL].

Cela ne répond pas à mon besoin puisque le contenu des 2 se “chevauche” ce qui me donne une mauvaise url au global (j’obtiens 2 fois “peps” dans mon url).
[EXPR:obj.getGrant().getContextURL()] -> http://localhost:8080/peps
[DIRECTURL] -> /peps/jsp/index.jsp…

Comment dois-je faire pour obtenir mon url comme avant?
Merci d’avance de votre aide.


#2

En V3.2, le getContextURL ne retourne pas une URL publique (par exemple localhost a peu de chance d’aboutir dans un email public), du coup le [DIRECTURL] doit être concaténé avec votre host publique.

soit en dur
https://app.domain.com[DIRECTURL]

soit via un paramètre de votre application :
[EXPR:obj.getGrant().getParameter(“MY_DIRECTURL_HOST”)][DIRECTURL]

En V4, cela a été intégré nativement via le paramètre système “DIRECT_URL” qui permet de donner l’URL publique de son application (le token [DIRECTURL] est alors bien complet). Cela n’a pas été backporté mais la logique reste la même.


#3

Bonjour,

Merci pour votre retour rapide.
Je vais opter pour la création du paramètre. merci.