Я создал контроллер для поиска данных.Но когда я умираю с ключевым словом "%", возвращается ошибка HTTP 400.Вот Contrller:
@RequestMapping(value = "/search/{txtKeyWord}")
public String pageVipStory(@PathVariable("txtKeyWord") String txtKeyWord, Model model) {
logger.info("Keyword In URL: " + txtKeyWord);
model.addAttribute("txtKeyWord", txtKeyWord);
model.addAttribute("txtKeyWordEndCode", UriUtils.encode(txtKeyWord, "UTF-8"));
getMenuAndInfo(model, "Search " + txtKeyWord);
return "web/searchPage";
}
Со ссылкой: "http://localhost:8080/search/%25", сообщение об ошибке:
org.springframework.security.web.firewall.RequestRejectedException:Запрос был отклонен, поскольку URL содержал потенциально вредоносную строку «% 25» в org.springframework.security.web.firewall.StrictHttpFirewall.rejectedBlacklistedUrls (StrictHttpFirewall.java:325) ~ [spring-security-web-5.1.1.RELEASE.jar: 5.1.1.RELEASE] в org.springframework.security.web.firewall.StrictHttpFirewall.getFirewalledRequest (StrictHttpFirewall.java:293) ~ [spring-security-web-5.1.1.RELEASE.jar: 5.1.1.RELEASE] в org.springframework.security.web.FilterChainProxy.doFilterInternal (FilterChainProxy.java:194) ~ [spring-security-web-5.1.1.RELEASE.jar: 5.1.1.RELEASE] в org.springframework.security.web.FilterChainProxy.doFilter (FilterChainProxy.java:178) ~ [spring-security-web-5.1.1.RELEASE.jar: 5.1.1.RELEASE] в org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate (DelegatingFava):357) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] в org.springframework.web.filter.DelegatingFilterProxy.doFilter (DelegatingFilterProxy.java:270) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12] в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12] в org.springframework.web.filter.RequestContextFilter.doFilterInterter.java: 99) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] в org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12]в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12] at org.springframework.web.filter.FormContentFilter.doFilterInternal (FormContentFilter.java:92) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12] в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:6)tomcat-embed-core-9.0.12.jar: 9.0.12] at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal (HiddenHttpMethodFilter.java:93) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107) ~ [spring-web-5.1.2.RELEASE.jar: 5.1.2.RELEASE] в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12] на org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) ~ [tomcat-embed-core-9.0.12.jar: 9.0.12] на org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.filterAndRecordMetrics (WebMvcMetricsFilter.java:154) ~ [spring-boot-activator-2.1.0.BUILD-20181030.063958-621.jar: 2.1.0.BUILD-SNAPSHOT] или,]в org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal (WebMvcMetricsFilter.java:107)
~ [Весна-загрузочный привод-2.1.0.BUILD-20181030.063958-621.jar: 2.1.0.BUILD-ПАНОРАМА]
в org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)
~ [Весна-веб-5.1.2.RELEASE.jar: 5.1.2.RELEASE]
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
~ [Встраивать-кот-ядро-9.0.12.jar: 9.0.12]
в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
~ [Встраивать-кот-ядро-9.0.12.jar: 9.0.12]
в org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal (CharacterEncodingFilter.java:200)
~ [Весна-веб-5.1.2.RELEASE.jar: 5.1.2.RELEASE]
в org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)
~ [Весна-веб-5.1.2.RELEASE.jar: 5.1.2.RELEASE]
в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
~ [Встраивать-кот-ядро-9.0.12.jar: 9.0.12]
в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
~ [Встраивать-кот-ядро-9.0.12.jar: 9.0.12]
в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:199)
~ [Встраивать-кот-ядро-9.0.12.jar: 9.0.12]
в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:96)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:490)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:139)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:92)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:74)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:343)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.coyote.http11.Http11Processor.service (Http11Processor.java:408)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.coyote.AbstractProcessorLight.process (AbstractProcessorLight.java:66)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.coyote.AbstractProtocol $ ConnectionHandler.process (AbstractProtocol.java:770)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun (NioEndpoint.java:1415)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в org.apache.tomcat.util.net.SocketProcessorBase.run (SocketProcessorBase.java:49)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)
[Па: 1.8.0_172]
в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:624)
[Па: 1.8.0_172]
в org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run (TaskThread.java:61)
[Встраивать-кот-Core-9.0.12.jar: 9.0.12]
at java.lang.Thread.run (Thread.java:748) [na: 1.8.0_172]
Кто может показать мне, где ошибка. И как это побороть? Спасибо!