[JAVA] Ne pas émettre de paramètres pour la requête POST et l'URL à partir du formulaire avec Wicket

Masquer la requête POST et les paramètres d'URL du formulaire sur le guichet

Version Wicket 7.3

** Contexte **

Par défaut, lorsque j'exécute onSubmit () sur un composant de formulaire, la valeur du paramètre apparaît dans l'URL.

https://mysite.com/;jsessionid=B85EE5CB0349CCA2FE37AF76AB5C30C1?wicket:bookmarkablePage=:com.mycompany.cheese.CheeseMain&Title=Havarti&group=cheeseName

essai et erreur

Il semble que PageParametersEncoder est utilisé par défaut IPageParametersEncoder: Wicket Reference

Créer IPageParametersEncoder sans paramètres

NoParamsPageParametersEncoder.java


public class NoParamsPageParametersEncoder extends PageParametersEncoder {
  
	public NoParamsPageParametersEncoder() {
		super();
	}

	@Override
	public Url encodePageParameters(final PageParameters pageParameters) {
		Url url = new Url();
		//Renvoyer l'URL telle quelle
		return url;
	}
}

Il semble que vous puissiez le spécifier au moment du montage

WicketApplication.java


mount(new MountedMapper("/NextPage", NextPage.class, new NoParamsPageParametersEncoder()));

Et passez-le avec les paramètres du formulaire

PrevPage.java


StatelessForm<PrevPage> inputForm = new StatelessForm<PrevPage>("inputForm") {

	@Override
	protected void onSubmit() {
		PageParameters newParams = new PageParameters();
		newParams.set("USER", "user_id");
		newParams.set("PASSWD", "password");
		setResponsePage(new NextPage(newParams));
	}
};

Au fait, c'était possible avec Form et StatelessForm.

Il existe peu de documents relatifs au guichet ...

Recommended Posts

Ne pas émettre de paramètres pour la requête POST et l'URL à partir du formulaire avec Wicket
Que faire si l'annotation JSON Hint ne fonctionne pas avec Lombok et JSONIC
N'utilisez pas de flotteurs et de doubles pour calculer les fractions monétaires