Java Servlet-Filter mit mehreren Werten in FilterConfig?Ist es möglich?
-
02-01-2020 - |
Frage
Ich versuche, einen Servlet-Filter umzusetzen, der einige URLs ignorieren würde, während Sie alles andere filtern. Ich möchte, dass es flexibel ist, ich habe versucht, die Parameter der ausgeschlossenen URLs als FilterConfig-Parameter einzustellen.In der Serverkonfiguration scheint jedoch in der Serverkonfiguration der Abschnitt Filterparams nicht mehrere Werte für einen bestimmten Paramnamen zu akzeptieren, also bin ich irgendwie festgefragt, ob und wie er mehrere Werte aufnehmen kann, die ich dann als Set oder Array erhalten kannim Filter init ().
hier ist im Grunde, was ich danach bin:
<filter>
<filter-name>RequestFilter</filter-name>
<filter-class>...RequestFilter</filter-class>
<init-param>
<param-name>ignoredUrls</param-name>
<param-value>/url1</param-value>
<param-value>/url2</param-value>
<param-value>/url3</param-value>
</init-param>
</filter>
Natürlich kann ich einen Delimiter-Splitter-Ansatz verwenden, aber ich frage mich, ob es eine Art standardisierte Art ist, das zu tun.
vielen dank! Alex
Lösung
Servlet-Spec sagt, dass Sie nur einen Wert für jeden Kontextparameter haben können.Sie sind also nur mit einer delimitierten Liste übrig.
Sie können ein separator als ","
verwenden. generasacodicetagpre.Später würden Sie diese Werte auf diese Weise von Filter Config lesen:
generasacodicetagpre.