<s:select list = "categories" key = "product.search.category" />
您正在列出a,
List<String>并尝试通过OGNL
.(点表示法)访问不存在的字段。
在OGNL中
product.search.category
相当于Java
getProduct().getSearch().getCategory()
由于您正在列出字符串,因此只需省略key属性,因为您的键和值都将是String本身。
看来你是混淆
key与
name太:
key是的关键
<option>因素,同时
name是Action的属性将接收通过其二传手所选择的值。
<s:select list = "categories"name = "chosenCategory" />
编辑 :为获得成功的生活,实现Preparable
Interface并在此处加载您的“静态”数据:
public class ProductSearchAction extends ActionSupport implements Preparable { private List<String> categories; private String chosenCategory; @override public void prepare() throws Exception { categories = new ArrayList<String>(); categories.add("Eins"); categories.add("Zwei"); categories.add("Drei"); } @Override public String execute() throws Exception { return SUCCESS; } }并且您必须为struts.xml中的每个标签指定完全限定的类名称。



