Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > JSTL тэг не работает :(


Автор: WandM 11.11.2006, 13:08
Пишу в страничке jsp:
Код

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

<jsp:useBean id="date" class="java.util.Date" />

<html>
<head><title>First JSP</title></head>
<body>
<h2>Here is today's date</h2>

<c:out value="${date}" />

<%= date%>

</body>
</html>

Получаю на экране 
Цитата

Here is today's date
${date} Sat Nov 11 13:12:34 MSK 2006

То есть jstl тэг вывода не работает как надо. Просмотрел кучу примеров - выводить на экран надо тэгом <c:out value="${date}" />
Причем скриплет пашет нормально. 

В чем трабла - не пойму.

Использую Tomcat 5.5.7 + idea + JSTL 1.1 - прицепил к идее и скопировал в ${CATALINA_HOME}\webapps\jsp-examples\WEB-INF\lib 2 файла standart.jar и jstl.jar

Автор: Tony 11.11.2006, 14:28
jstl работает с методами getXXX i setXXX,

Автор: Alexis 11.11.2006, 16:16
Попробуйте задеплоить standard-examples.war (лежит в архиве дистрибутива taglibs). Посмотрите работает ли. Если работает, то можно просто посмотреть чем ваши исходники отличаются от тех, что в примере  smile 
Если я не ошибаюсь, то такая штука у меня как-то была из-за отсутствия описания версии web-app что-то вроде (для 2.4):
Код

<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">

Автор: WandM 11.11.2006, 17:47
 smile 
2 Tony: <c:out value="${date.hours}" /> выводится как ${date.hours}

2 Alexis: 
В примере написано:
Код

    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <c:if test="${1==1}" var="theTruth" scope="session"/>
    The result of testing for (1==1) is: ${theTruth}

    <c:if test="${2>0}">
    It's true that (2>0)!
    </c:if>

Если деплою не через идею, то все Ок.

Копирую этот код в свою jsp страничку в Идее - также выводит ${theTruth} smile

Кстати, идея ругается, что у <web-app> может быть только один параметр - id

Автор: Tony 11.11.2006, 19:57
Посмотри внимательно на stack ошибок Tomcata при деплои.
1) jstl 1.1
2) web.xml 2.4
3) <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Это всё указано правельно.

Автор: WandM 11.11.2006, 20:01
Цитата

Посмотри внимательно на stack ошибок Tomcata при деплои.

Может, я чего-то не то смотрю, но если запускать через идею, то томкат в консоли пишет только INFO: ...
Никаких ошибок не видно.

Автор: Anklav 15.11.2006, 13:20
добавь на стриничу:
Код

<%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" isELIgnored="false" %>

можешь любую кодировку подставить, главное во всём этом isELIgnored="false"

Автор: WandM 15.11.2006, 20:19
Так тоже не работает  smile 
Обхожу так: создаю с помощью идеи war-файл, а потом его деплою в томкате отдельно.
Парадокс! Но все работает нормально!

Автор: Alexis 15.11.2006, 21:40
Цитата(WandM @  15.11.2006,  20:19 Найти цитируемый пост)
Обхожу так: создаю с помощью идеи war-файл, а потом его деплою в томкате отдельно.

Почитайте про Ant, скорее всего это то, что вам нужно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)