-
Bug
-
Resolution: Fixed
-
Neutral
-
2.2
-
None
-
None
-
-
Empty show more show less
-
DevX 35
-
2
-
Yes
If the lang param is invalid, I18nContainerRequestFilter throws BadRequestException, however, this exception is swallowed by PreMatchContainerRequestContext. The class expects the exception should be a child of IOException.
public class I18nContainerRequestFilter implements ContainerRequestFilter { private Locale determineLocaleFromQueryParameter(MultivaluedMap<String, String> queryParameters) { ... if (!isValidLanguageTag(localeString)) { throw new BadRequestException(String.format("Language parameter: %s is not allowed", localeString)); } ... } }
And
class PreMatchContainerRequestContext ...{ public synchronized BuiltResponse filter() { RESTEasyTracingLogger tracingLogger = RESTEasyTracingLogger.getInstance(this.httpRequest); long totalTimestamp = tracingLogger.timestamp("REQUEST_FILTER_SUMMARY"); while(this.requestFilters != null && this.currentFilter < this.requestFilters.length) { ContainerRequestFilter filter = this.requestFilters[this.currentFilter++]; try { this.suspended = false; this.response = null; this.throwable = null; this.inFilter = true; long timestamp = tracingLogger.timestamp("REQUEST_FILTER"); filter.filter(this); tracingLogger.logDuration("REQUEST_FILTER", timestamp, new Object[]{filter}); } catch (IOException var10) { throw new ApplicationException(var10); } finally { this.inFilter = false; } ... }
Acceptance criteria
- is related to
-
PAGES-588 Language tag in spa renderer misses the country in the url
- Closed
1.
|
Implementation | Completed | Marek Strucka | |
2.
|
Review | Completed | Dai Ha | |
3.
|
PiQA | Completed | Dai Ha | |
4.
|
QA | Completed | Milan Divilek |