taglibメソッドc:forEachに問題があります。サーブレットクラスから言語のリストを取得し、c:forEachを使用してjspページに表示したいと思います。しかし、何も表示されていません^^空の選択タグ。
jspファイルのforeachループ(私はtaglibをインポートしていて、c:outなしですでに試しています):
...
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
...
<c:forEach var="lang" items="${registrationServlet.inputLangs}">
<option><c:out value="${lang}"></c:out></option>
</c:forEach>
私のサーブレットクラス(私もそれを使って何かを送信するフォームを実行する必要があるため、サーブレットです):
...
// List of languages to choose from
List<String> inputLangs;
...
// Query the languages from the database
public List<String> getInputLangs() {
try {
String query = "SELECT DISTINCT Lang FROM country";
ResultSet result = DbConnection.read(query);
while (result.next()) {
inputLangs.add(result.getString("lang"));
}
} catch (SQLException e) {
System.err.println("Couldn't get languages from DB.");
}
return inputLangs;
}
私は何が間違っているのですか?^^
ところで。それは純粋なJavaで動作します:
<%
RegistrationServlet reg = new RegistrationServlet();
for (String lang : reg.getInputLangs()) {
%>
<option><%=lang%></option>
<%
}
%>
しかし、私が知る限り、それはjspファイルではダメです;)