EL em um JSP parou avaliar
Pergunta
Em uma página JSP (index.jsp):
${requestContext.requestURL} is the URL
só mostra a própria expressão. É usado para ser avaliada para algo como " http: //.../somerset/ "
Eu criei o projeto Maven com arquétipo maven-arquétipo-webapp em Eclipse. A versão Jetty é molhe-6.1.14.
O meu web.xml é simples:
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>SomersetServlet</servlet-name>
<display-name>SomersetServlet</display-name>
<description></description>
<servlet-class>com.foo.somerset.SomersetServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SomersetServlet</servlet-name>
<url-pattern>/som.do</url-pattern>
</servlet-mapping>
</web-app>
Solução
Javascript String.replace (/ \ $ /, str) funciona estranhamente em jsp arquivo por algumas razões possíveis.
O seu web.xml deve conter referência ao esquema do web-app_2_4.xsd, como
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
Isso permite servlet 2.4 e 2.0 JSP processamento, que inclui EL.
Btw requestContext
não é válido objeto implícito.
Outras dicas
aspas incorretamente combinados podem causar este comportamento, onde a expressão apenas é tratado como uma string. Seu IDE normalmente destacar isso em uma cor diferente se este for o caso.
Certifique-se de que você tem directiva, e outras bibliotecas que você uso incluído
<jsp:root .....
Mais informações sobre a definição aqui