Ik ben bezig een wat custom JSP tags te schrijven. Binnen de doStartTag() method wil ik de naam en rol van de gebruiker gebruiken. De gebruikernaam opvragen vanuit een servlet of JSP lukt prima met
request.getRemoteUser(). Maar nu komt het: vanuit de
doStartTag()method van een tag klasse kan ik met
pageContext.getRequest() wel het request object ophalen, maar deze heeft niet de method
getRemoteUser() of
isUserInRole() omdat het request object van het type
ServletRequest is in plaats van
HttpServletRequest.
Inmiddels werk ik er omheen door het request object expliciet te casten naar een HttpServletRequest:
Java:
1
| String user = ((HttpServletRequest) pageContext.getRequest()).getRemoteUser(); |
Dit is geen goede oplossing omdat het werkt op de aanname dat de JSP container implementatie wel HttpServletRequest zal gebruiken voor het ServletRequest. Weet iemand een betere manier?
"Kill one man, and you are a murderer. Kill millions of men, and you are a conqueror. Kill them all, and you are a god." -- Jean Rostand