Перезапись URL с динамическими параметрами
Я использую Ocpsoft Rewrite Framework.
Оригинальный URL:
.../searchResult/SearchResultNotFound.xhtml?lang=en&cont=USA&keyword=abc&remainFlg=false&returnFlg=true
URL после перезаписи:
.../USA/en/search-not-found/abc?remainFlg=false&returnFlg=true
Есть некоторые ограничения:
- Причина, по которой я хочу сохранить
?remainFlg=false&returnFlg=true
потому что эта часть динамична.
Что означает, что иногда это может быть remainFlg=false&returnFlg=true
в других случаях это может быть remainFlg=false
в других случаях это может быть remainFlg=false&returnFlg=true&upFlg=true
, и так далее.
Единственная часть всегда будет на URL lang=en&cont=USA&keyword=abc
,
По этой причине я только хочу переписать lang=en&cont=USA&keyword=abc
часть и сохранить динамическую часть после знака вопроса (?)
- Это должно быть двустороннее картирование.
Это означает, что я набираю в адресной строке браузера:
.../searchResult/SearchResultNotFound.xhtml?lang=en&cont=USA&keyword=abc&remainFlg=false&returnFlg=true
или же
.../USA/en/search-not-found/abc?remainFlg=false&returnFlg=true
конечный URL, который видят конечные пользователи, должен быть:
.../USA/en/search-not-found/abc?remainFlg=false&returnFlg=true
- URL после перезаписи может быть:
.../USA/en/search-not-found/abc?remainFlg=false&returnFlg=true
или же
.../USA/en/search-not-found/abc
Как бы то ни было, но в моем Java-коде я должен иметь возможность получить значение всех параметров после знака вопроса (?).
Например:
FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("returnFlg");
Заранее спасибо.