<bean:message>-Tag in <bean:write>-Tag?

klaeuschen41

Mitglied
Hallo zusammen,

ich versuche ein Suchformular mit einem dynamischen pull-down Menü zu implementieren, dessen mögliche Suchfelder in verschiedenen Sprachen sein können.

Leider scheint es nicht möglich zu sein ein <bean:message>-Tag in ein <bean:write>-Tag zu stecken, oder? Zumindest bekomme ich die folgende Exception:

org.apache.jasper.JasperException: /search_form_advanced.jsp(48,126) equal symbol expected

Mache ich etwas falsch? Wenn nicht, kennt jemand vielleicht einen Workaround ? Muss ich JSP verwenden?

Mein Code:
Code:
<select name="searchCategories_0" size="1">

    <logic:iterate id="search_categories" name="search_categories">

        <option value="<bean:write name="search_categories" />"><bean:message
key="<bean:write name="search_categories"/>" /></option>
                                     
    </logic:iterate>

</select>

Vielen Dank für Hilfe,

Klaus
 
Hallo!

Warum machst du das so umständlich?
Java:
/**
 * 
 */
package de.tutorials.servlet;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * @author Tom
 * 
 */
public class ExampleServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        
        List list = new ArrayList();
        list.add("abc");
        list.add("def");
        list.add("ghi");
        list.add("jkl");
        
        request.setAttribute("search_categories", list);
        
        getServletContext().getRequestDispatcher("/example.jsp").forward(request,response);
        
    }
}

Unsere example.jsp:
XML:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<select>
    <c:forEach var="option" items="${search_categories}">
        <option>${option}</option>
    </c:forEach>
</select>
</head>
<body>

</body>
</html>

gruß Tom
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

eigentlich sollte das ganze über das name-Attribut gehen, also in deinem Fall
Code:
<bean:message name="search_categories" />

hth
THMD
 

Neue Beiträge

Zurück