В соответствии с TLD или директивой атрибута в файле тега, элементы атрибута не принимают никаких выражений [duplicate]

На этот вопрос уже есть ответ здесь:

Как установить JSTL? Абсолютное значение URI: http://java.sun.com/jstl/core не может быть разрешено 12 ответов

У меня есть проект, в котором мне нужно отобразить детали фильмов на странице HTML. Я должен строго следовать MVC, хотя я не использую никаких фреймворков, таких как Spring или Struts. Мне также не разрешают использовать скриптлеты, но я использую JSTL и язык выражений. Я обычно извлекаю данные из базы данных и затем устанавливаю их для bean-компонента, а затем составляю список этих bean-компонентов и передаю их в JSP, а затем распечатываю эти детали. Но как бы мне этого добиться, если мне не разрешено использовать JSP. Если я использую сервлет для извлечения этих данных и установки их в bean-компонент, а затем в список и передаю его через диспетчер запросов, как я собираюсь получить каждый bean-компонент из списка на странице HTML?

Я не мог заставить этот JSTL работать. Я использую Netbeans 7.0 и Apache Tomcat 7.

 



    
        
        DVD Guru
        
    
       
          
        
                
              
    

Я получаю следующую ошибку

Согласно TLD или директиве атрибута в файле тега, элементы атрибута не принимают никаких выражений

Я импортировал библиотеку JSTL 1.1 из свойств проекта. Должно ли что-то еще быть сделано?

 Bhesh Gurung17 нояб. 2012 г., 08:58
Вы имеете в виду простой HTML вместо JSP?
 BalusC19 нояб. 2012 г., 15:40
Полученная вами ошибка вызвана, но это не видно в приведенном коде. Пожалуйста, предоставьтереальный код и непереизобрать код.
 ntstha17 нояб. 2012 г., 09:32
Хорошо, спасибо, я должен использовать .jsp, чтобы сервер знал, что он должен сначала скомпилировать. Спасибо за предложение.
 ntstha17 нояб. 2012 г., 09:00
да, используя html-страницу ... но это невозможно, только используя обычный html, я должен использовать jstl, так как мне нужно перебрать список, а затем получить отдельный бин ...
 Bhesh Gurung17 нояб. 2012 г., 09:02
Вам нужно использовать JSP, HTML не является серверным компонентом, таким как (JSP).

Ответы на вопрос(6)

даже объединяя строки. Или вы можете использовать любой из текстовых шаблонизаторов, например, простой JMTE (Java Minimal Template Engine) или более продвинутый, например, Velocity или StringTemplate. Используя другой шаблонизатор, вы можете смело заявить, что нет использовать JSP. Хотя я неЯ не вижу большой разницы между JSP и другими шаблонными движками, я имею в виду, что это ваше требование довольно глупо.

Даже лучше: нет JSP использовать JSF 2! )

tl XML, я хочу использоватьrandInt в :

Решил с помощьюpageContext

<%
    Random rand = new Random();
    int randInt = rand.nextInt();
    pageContext.setAttribute("randInt", randInt);
%>
<x:out select="$parsedXML/content/article[$pageScope:randInt]/title">
</x:out>
Решение Вопроса

JSP,JSTL - это просто набор пользовательских тегов и не может использоваться отдельно. Так же какЯзык выражения, Если вы не используете какие-либо фреймворки MVC, то вам нужно выполнить часть их работы самостоятельно. Пожалуйста, посмотрите (если у вас нетпока) при следующих шаблонах проектирования:

Front ControllerCommand для простого применения,Front ControllerView Helper для более сложного применения

UPD:

Чтобы решить проблему с EL, попробуйте исправить URI JSTL в вашем JSP, чтобы:

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

который выVE существует для устаревшей JSTL 1.0. Начиная с версии JSTL 1.1дополнительный/jsp путь в URI тега, потому что язык выражения (те,${} вещей) был перемещен из JSTL в JSP и, следовательно, метки JSTL 1.0 и 1.1 не являются взаимозаменяемыми.

Исправьте это соответственно:

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

Больше ничего не нужно делать, если предположить, что Netbeans достаточно умен, чтобы автоматически генерировать Servlet 3.0-совместимыйweb.xml для Tomcat 7.

Смотрите также:Наша вики-страница JSTLНаша EL вики-страница
 null14 мая 2015 г., 22:23
спасибо, также исправил проблему, которую я имел. позорIDE не может вас отчитать. :)

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %> вместо<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>

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

Отлично работает.

 alok18 сент. 2016 г., 09:12
В jstl-1.2.jar у вас есть следующий тег: Тот, который вы используете, предназначен для устаревшей версии JSTL 1.0. используйте это: <% @ taglib uri = "java.sun.com/jsp/jstl/core» prefix = "c"%>  вместо <% @ taglib uri = "java.sun.com/jstl/core» prefix = "c"%>
 Mr.Chowdary03 янв. 2014 г., 06:28
Я столкнулся с той же проблемой, изменив URI, я получил решение. Спасибо..

Ваш ответ на вопрос