JSTLタグライブラリの接頭辞 "fn"(Eclipse Lunaのwebapp開発)に問題があります。関数fn:substringは未定義です
次のように私は私のtaglibs.jspfを持っている:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
とweb.xml:
:私のJSPページで<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<include-prelude>jspf/taglibs.jspf</include-prelude>
</jsp-property-group>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<include-prelude>jspf/language_choice.jspf</include-prelude>
</jsp-property-group>
</jsp-config>
私はこのようなJSTLのsubstring関数を使用しようとします
<a href=http://frenchsite.<c:out value="${fn:substring(language, 0, 2)}" />/" class="general-img" >
(この場合、リンク - >http://frenchsite.fr)
とlanguage_choice.jspf
ファイル:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<c:set var="language" value="${not empty param.language ? param.language : not empty language ? language : pageContext.request.locale}" scope="session" />
<fmt:setLocale value="${language}" />
<fmt:setBundle basename="com.myproject.resources.Messages" />
が、私が入れた場合の機能をサブストリングは
を動作しないようです:<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
をそれが動作するページのトップで...
私は分かりませんが、taglib
は既にtaglibs.jspf
とで定義されていますすべてのjspファイルにインポートされた0(web.xmlを参照)。
(ちなみに、FMTの接頭辞が問題を起こしていない...)
は、あなたの答えをありがとう!