有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java struts2jquery下拉框未填充

我有一个通过<sj:select>标签的下拉框,似乎无法填充。我在通过href引用的操作中有一个getter,但它似乎没有触发该操作,所以它没有看到getter。我正在使用这种方法,这应该是我从一些教程中看到的,但我显然遗漏了一些东西

在当前状态下,它只是渲染和空下拉框

快速概述我认为应该发生的事情:

  • 页面应该通过InputAction加载,并用20个字符串的列表填充列表变量
  • <sj:select>应该触发href中引用的操作
  • 这将触发填充我的列表框的RateClass操作

我这样做是因为基于这个框的输入,我将在这个应用程序中为未来的选择框切换字符串列表

动作类:

public class RateClass extends InputAction{

/**
 * 
 */
private static final long serialVersionUID = -836858635953762820L;
private String selectedUtility;

public String execute(){
    return SUCCESS;
}

public String getJSON(){
    System.out.println("YAY JSON!!!");
    return execute();
}

public List<String> getUtilityList() {
    return utilityList;
}

public String getSelectedUtility() {
    return selectedUtility;
}

public void setSelectedUtility(String selectedUtility) {
    this.selectedUtility = selectedUtility;
}

}

Struts。XML json包:

 <package name="jsonPackage" extends="json-default" namespace="/">
    <action name="rateclass" class="rateclass">
         <result name="success" type="json" />
    </action>
 </package>

Bean定义:

    <bean id="rateclass" class="com.action.input.RateClass" scope="prototype">
</bean>

相关。jsp摘录:

    <label for="utility">Utility: </label>
<sj:select style="margin-left:50px;" href="%{remoteurl}" id="utility"
            name="selectedUtility" list="utilityList"
            headerKey="-1" headerValue="Please Select a Utility"/>

Struts URL定义:

<s:url id="remoteurl" value="rateclass"></s:url>

共 (1) 个答案

  1. # 1 楼答案

    问题在于我的InputAction类的prepare()函数,它是从JSON类扩展而来的。其中有一个nullpointer被抛出,由于我没有在RateClass bean中定义DAO对象,所以没有处理它