我想从我的数据库中选择值" Prodotti1"并在Struts2中使用它们填充下拉列表。我正在使用
<sql:setDataSource var="ds" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/Prodotti1" user="root" password="root"/>
<sql:query dataSource="${ds}" var="result">
SELECT * from Producer;
</sql:query>
<c:forEach var="row" items="${result.rows}">
<option value='<c:out value="${row.producer_name}"/>'>
<c:out value="${row.producer_name}"/></option>
</c:forEach>
我想填充
<s:select label="Producer"
headerKey="-1" headerValue="--Select--"
list=""
name="" />
但我不知道该放在list
字段中的内容。如果我把%{result.row}
我收到了这个错误:
The requested list key '%{#result.row}' could not be resolved as a collection/array/map/enumeration/iterator type
我该如何解决?
答案 0 :(得分:0)
您可以使用#attr
来搜索所有范围内的变量。
<s:select label="Producer"
headerKey="-1" headerValue="--Select--"
list="%{#attr.result.rows.{producer_name}}"
name="producer" />