[JAVA] Geben Sie keine Parameter für die POST-Anforderung und die URL aus dem Formular mit Wicket aus

Verstecken Sie POST-Anforderungs- und URL-Parameter in Form on Wicket

Version Wicket 7.3

** Hintergrund **

Wenn ich onSubmit () für eine Formularkomponente ausführe, wird der Wert des Parameters standardmäßig in der URL angezeigt.

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

** Versuch und Irrtum **

Es scheint, dass PageParametersEncoder standardmäßig verwendet wird IPageParametersEncoder: Wicket Reference

Erstellen Sie einen IPageParametersEncoder ohne Parameter

NoParamsPageParametersEncoder.java


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

	@Override
	public Url encodePageParameters(final PageParameters pageParameters) {
		Url url = new Url();
		//URL unverändert zurückgeben
		return url;
	}
}

Es scheint, dass Sie dies zum Zeitpunkt der Montage angeben können

WicketApplication.java


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

Und übergeben Sie es mit Parametern aus dem Formular

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));
	}
};

Das war übrigens sowohl mit Form als auch mit StatelessForm möglich.

Es gibt nur wenige Wicket-bezogene Dokumente ...

Recommended Posts

Geben Sie keine Parameter für die POST-Anforderung und die URL aus dem Formular mit Wicket aus
Was tun, wenn die Annotation JSON Hint nicht mit Lombok und JSONIC funktioniert?
Verwenden Sie keine Floats und Doubles, um Geldbrüche zu berechnen