Reputation: 227
I have localization on my page that have url like: http://localhost:8086/patient/order?action=registeredTab but when i change language, it reloads and action dissapears and i get following url: http://localhost:8086/patient/order?language=ru. How can i save action in my url when i change language? I am using jsp and servlets
<form>
<select id="language" name="language" style="background-color: #003399; color: #f2f2f2" onchange="submit()">
<option value="en" ${language == 'en' ? 'selected' : ''}>English</option>
<option value="ru" ${language == 'ru' ? 'selected' : ''}>Русский</option>
<option value="es" ${language == 'es' ? 'selected' : ''}>Español</option>
</select>
</form>
Upvotes: 1
Views: 166
Reputation: 1099
Make seprate servlet for internationalization and then append the code given below at the end
String previousURL = request.getHeader("referer");
response.sendRedirect(previousURL);
Now copy past you code with small change i.e. add action to form tag
<form action="changeLanguage">
<select id="language" name="language" style="background-color: #003399; color: #f2f2f2" onchange="submit()">
<option value="en" ${language == 'en' ? 'selected' : ''}>English</option>
<option value="ru" ${language == 'ru' ? 'selected' : ''}>Русский</option>
<option value="es" ${language == 'es' ? 'selected' : ''}>Español</option>
</select>
</form>
And you are done with that...
But keep in mind that changeLanguage
servlet should just change language it is better if it doesn't do anything else than that....
Upvotes: 1