java - org.apache.jasper.JasperException : javax. servlet.ServletException : javax. servlet.jsp.JspException:无法在名称airline_name下找到bean

标签 java jsp configuration struts struts-1

lodable.jsp:

<html:form action="DemoS" method="POST" focus="" >
    Program Name : 
    <html:select property="airline_name" styleId  = "tempId" onchange="onAirlineChange()" >  
    <html:options collection="airline_name" property="value" labelProperty="key" />  
    </html:select>  <br/>
    PART NUMBER
    <input type="text" name="part_no"id="part_number">
    YEAR
    <select name="year" id="year" style="width:200px">
    <option value="13">2013</option>
    <option value="14">2014</option>
    <option value="15">2015</option>
    </select>
    <input type="submit" name="Lodable" value ="OK">
</html:form>
<html:errors/> 

DemoForm.java:

 public class DemoForm extends ValidatorForm{
    private String airline_name;
    private String part_no;
    private String year;
    public String getAirline_name() {
            return airline_name;
        }

    public void setAirline_name(String airline_name) {
            this.airline_name = airline_name;
        }
    public String getPre_part_no() {
            return pre_part_no;
        }

    public void setPre_part_no(String pre_part_no) {
            this.pre_part_no = pre_part_no;
        }
    public String getYear() {
            return year;
        }

    public void setYear(String year) {
            this.year = year;
        }

@Override
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
{
ActionErrors errors=new ActionErrors(); 
     if(getPart_no()==null ||getPart_no().length()<1)
{
errors.add("part_no",new ActionMessage("errors.required","part_no"));
}
if(getYear()==null ||getYear().length()<1)
{
errors.add("Year",new ActionMessage("errors.required","Year"));
}
}
}

Struts-config.xml 摘录:

<form-beans>
  <form-bean name="DemoForm" type="com.me.form.DemoForm" scope="session" />
<form-beans/>
<action-mappings>
 <action input="/pages/Lodable.jsp" parameter="method" name="DemoForm" path="/DemoS" scope="session" type="com.woi.action.DemoS" validate="true">
 <forward name="lodable" path="/pages/Lodable.jsp" />
 <forward name="save" path="/pages/success.jsp"></forward>
 <forward name="fail" path="/pages/fail.jsp"></forward>
 </action>
<action-mappings/>

集合:

public Map<String,String> airline_name= new HashMap<String,String>();
airline_name.put("niraj.deshmukh","template1 ");
airline_name.put("user1","template1 ");
airline_name.put("user2","template2 ");
airline_name.put("user3","template3 ");
request.setAttribute("airline_name", airline_name);

异常(exception):

org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: Cannot find bean under name airline_name
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:585)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1083)
    org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:295)
    org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1027)
    org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:374)
    org.apache.struts.action.RequestProcessor.processValidate(RequestProcessor.java:995)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:198)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)

最佳答案

您没有正确指定操作的路径,应该是

<html:form action="/DemoS"

关于java - org.apache.jasper.JasperException : javax. servlet.ServletException : javax. servlet.jsp.JspException:无法在名称airline_name下找到bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17945743/

相关文章:

linux - 从系统规范生成内核配置

Java 刽子手代码

java - 在 chrome 中,我的拖放 Java 小程序没有获取放置事件,chrome 在 Mac 上不支持吗?

java - 使用 Swagger 注释出现意外 token 错误

java - 如何用 Clojure 中动态创建的小部件替换 SeeSaw 小部件?

c# - 部署为 Windows 服务时,不会读取 asp.net Core 2 Web API appsetting.json 值

java - JSP EL 中的三元运算符失败

java - 应用程序引擎中的代码分割

java - struts 形式的多 Action

.net - NLog 配置 API : Using Layouts stored in variables