我希望我的JSP页面根据请求中的值包含另一个页面。 所以我设置如下:动态导入JSP页面中的文件
request.setAttribute("chosenLang", "NL");
RequestDispatcher dispatcher = request.getRequestDispatcher(address);
dispatcher.forward(request, response);
当我到达“地址”页面我尽量做到以下几点:
<c:choose>
<c:when test="${chosenLang eq 'NL'}">
<%@include file="/Localization/NL_Localization.jsp" %>
</c:when>
<c:otherwise>
<%@include file="/Localization/EN_Localization.jsp" %>
</c:otherwise>
</c:choose>
所以,我知道chosenLang发现“NL”属性,因为当我改变和标签之间的什么到它的作品,我看到测试得到在我的网页上提及,当我把2个值在那里,一个用于NL和一个用于其他语言,它也改变了..
虽然真正的错误,当我尝试使用该公司在Localization.jsp文件中的一个定义,像这样的字符串:
<%
String welcomeStr="this is defining String variable";
%>
而当我把这个字符串的地方倒在我的网页像
<%=welcomeStr%>
我的IDE犯规警告我说,有什么东西错误。但是,当我编译和运行我得到以下错误:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 48 in the jsp file: /index3.jsp
welcomeStr cannot be resolved
45: <li>My courses</li>
46: <li>My messages [1]</li>
47: <li>My details</li>
48: <li> <%=welcomeStr%></li>
49: </ul>
50: </div>
51: <div id="menuHolder">
所以,我在这里失踪? 或者用另一种方式做得更方便吗?
在此先感谢!
这是功课吗?只是为了确定,因为这对于JSP中的i18n来说是完全错误的方法。 – BalusC 2010-11-09 13:46:31
同意9更多去.. – 2010-11-09 13:47:26