2014-02-21 1 views
5

Я искал ответы на все запросы Google и не работает.JSTL1.2 В соответствии с TLD или директивой атрибута в файле тега атрибут var не принимает никаких выражений

Я получаю эту ошибку:

org.apache.jasper.JasperException: /WEB-INF/pages/calendarEntry.jsp (строка: 5, колонка: 46) В соответствии с TLD или атрибута директивы в файле тегов , атрибут вар не принимает каких-либо выражений

Вот мой файл JSP

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 
<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main"> 
    <c:set var="eventDate" value="${calendarEntry.date}"/> 
    <h1 class="page-header">Calendar Event on <fmt:formatDate value="date" var="${eventDate}" /></h1> 

ошибка происходит в последней строке. FMT

Web App declartion

<web-app version="3.1" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation=" 
http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd"> 

Maven Depedencies Environment

<dependency> 
    <groupId>jstl</groupId> 
    <artifactId>jstl</artifactId> 
    <version>1.2</version> 
</dependency> 
<dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>javax.servlet-api</artifactId> 
    <version>3.1.0</version> 
    <scope>provided</scope> 
</dependency> 
<dependency> 
    <groupId>javax.servlet.jsp</groupId> 
    <artifactId>javax.servlet.jsp-api</artifactId> 
    <version>2.3.0</version> 
    <scope>provided</scope> 
</dependency> 

Развертывание - Tomcat 8

ответ

3

Спасибо, что помогли всем. Я понял, что это была глупая ошибка с моей стороны ..

Вместо того

<fmt:formatDate value="date" var="${eventDate}" /> 

Это должно быть

<fmt:formatDate type="date" value="${calendarEntry.date}" 
+0

Не забудьте помочь, если вы оставили комментарий перед голосованием. – sethu

3
<fmt:formatDate value="date" var="${eventDate}" /> 

значение переключателя и вар.

<fmt:formatDate var="date" value="${eventDate}" /> 
0

Вы должны изменить атрибуту вар в шаблон, вы можете попробовать, как показано ниже:

<fmt:formatDate value="${eventDate}" pattern="yyyy-MM-dd HH:mm:ss"/>

Вы можете изменить значение шаблона на основе самостоятельно, и это не имеет ничего общего с порядком значение и модель

11

У меня была аналогичная проблема, и этот ответ указывает на основном пытаются два различных объявления taglib. Возможно, попробуйте оба из них?

Format Date with fmt:formatDate JSP

Переключение на TagLib вы заявили в файле JSP решить мою проблему, по иронии судьбы.

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 

против

<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %> 
0

В NetBeans не создает файл web.xml теперь автоматически. (Ранее в j2ee он был создан. Он не является обязательным для некоторых cases.I сталкиваются с теми же проблемами с атрибут jstl remove и после создания файла web.xml проблема исчезла.но исправленный - новый проект

-1

У меня была аналогичная проблема. Я изменил версию Tomcat до apache-tomcat-7.0.39 вместо -apache-tomcat-7.0.54 из SERVER-Runtime Environment