Struts 2 URL-параметр внутри foreach - PullRequest
1 голос
/ 29 марта 2009

Может кто-нибудь объяснить мне, почему следующий код приводит к ошибке: Согласно TLD или директиве атрибута в файле тега, значение атрибута не принимает никаких выражений. Он всегда прерывается всякий раз, когда я пытаюсь установить значение динамически для параметра URL.

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<c:forEach var="v" items="${files}">
    ${v} <a href='<s:url action="DeleteFile"><s:param name="fileName" value="${v}" /></s:url>'>Delete</a><br />
</c:forEach>

Я использую Struts 2 и последнюю версию Java. Любая помощь будет оценена.

1 Ответ

4 голосов
/ 29 марта 2009

Вы смешиваете теги JSTL (foreach) и теги Struts (параметр s). Хотя можно заставить их работать вместе, зачем попадать в неприятности?

Используйте метку итератор и создайте дамп foreach.

Подробнее см. http://struts.apache.org/2.0.14/docs/iterator.html

Теоретически все, что можно сделать с помощью JSTL, возможно с помощью собственных тегов struts 2, поэтому вашему приложению, вероятно, вообще не нужен JSTL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...