org.apache.jasper.JasperException: tag 'select', field 'list', name 'pid': The requested list key 'projectidList' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location] //SprintAction.java package com.bits.sprintanalyzer.action; import java.util.List; import org.apache.log4j.Logger; import com.bits.sprintanalyzer.ResourceException; import com.bits.sprintanalyzer.dao.SprintDAO; import com.opensymphony.xwork2.ActionSupport; public class SprintAction extends ActionSupport { private static final Logger LOG = Logger.getLogger(SprintAction.class); /** * */ private static final long serialVersionUID = -6257623073537028210L; private String title; private String begindate; private String enddate; private String pid; private String sprintowner; private String state; private int targetestimatedpoints; private int totalestimatedpoints; private int totaldefaultestimatedhours; private int todohours; private String description; public String getPid() { return pid; } public void setPid(String pid) { this.pid = pid; } public String getSprintowner() { return sprintowner; } public void setSprintowner(String sprintowner) { this.sprintowner = sprintowner; } public String getState() { return state; } public void setState(String state) { this.state = state; } public int getTargetestimatedpoints() { return targetestimatedpoints; } public void setTargetestimatedpoints(int targetestimatedpoints) { this.targetestimatedpoints = targetestimatedpoints; } public int getTotalestimatedpoints() { return totalestimatedpoints; } public void setTotalestimatedpoints(int totalestimatedpoints) { this.totalestimatedpoints = totalestimatedpoints; } public int getTotaldefaultestimatedhours() { return totaldefaultestimatedhours; } public void setTotaldefaultestimatedhours(int totaldefaultestimatedhours) { this.totaldefaultestimatedhours = totaldefaultestimatedhours; } public int getTodohours() { return todohours; } public void setTodohours(int todohours) { this.todohours = todohours; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public String display() throws Exception { return INPUT; } public String getBegindate() { return begindate; } public void setBegindate(String begindate) { this.begindate = begindate; } public String getEnddate() { return enddate; } public void setEnddate(String enddate) { this.enddate = enddate; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } **public List<String> getpidList() throws ResourceException { return SprintDAO.getpidList(); } public List<String> getOwnerList() throws ResourceException { return SprintDAO.getOwnerList(); }** @Override public void validate() { } @Override public String execute() throws Exception { LOG.info("title" + title); LOG.info("begindate" + begindate); LOG.info("enddate" + enddate); LOG.info("pid" + pid); LOG.info("sprintowner" + sprintowner); LOG.info("state" + state); LOG.info("targetestimatedpoints" + targetestimatedpoints); LOG.info("totalestimatedpoints" + totalestimatedpoints); LOG.info("totaldefaultestimatedhours" + totaldefaultestimatedhours); LOG.info("todohours" + todohours); LOG.info("description" + description); int i = SprintDAO.save(this); if (i > 0) { return "success"; } return "error"; } } //SPrintDAO package com.bits.sprintanalyzer.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import com.bits.sprintanalyzer.ResourceException; import com.bits.sprintanalyzer.action.SprintAction; import com.bits.sprintanalyzer.util.ConnectionUtil; public class SprintDAO { private static final String PROJECTQUERY = "select pid from project"; private static final String USERQUERY = "select name from userdetail"; public static List<String> getpidList() throws ResourceException{ List<String> projectidList = new ArrayList<String>(); // this should be populated from DB try (Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement st = con.prepareStatement(PROJECTQUERY)){ ResultSet rs =st.executeQuery(); while(rs.next()){ projectidList.add(rs.getString(1)); } return projectidList; } catch (SQLException | ResourceException e) { throw new ResourceException("Failed to validate project id", e); } } public static List<String> getOwnerList() throws ResourceException{ List<String> sprintownerList = new ArrayList<String>(); // this should be populated from DB try (Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement st = con.prepareStatement(USERQUERY)){ ResultSet rs =st.executeQuery(); while(rs.next()){ sprintownerList.add(rs.getString(1)); } return sprintownerList; } catch (SQLException | ResourceException e) { throw new ResourceException("Failed to validate productowner", e); } } //insert into database public static int save(SprintAction SA) throws Exception{ int status=0; try{ Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement ps = con.prepareStatement("insert into sprint(pid,title,begindate,enddate,owner,state,targetestimatedpoints,totalestimatedpoints,totaldefaultestimatedhours,todohours,description) values(?,?,?,?,?,?,?,?,?,?,?)"); ps.setString(1, SA.getPid()); ps.setString(2, SA.getTitle()); ps.setString(3, SA.getBegindate()); ps.setString(4, SA.getEnddate()); ps.setString(5, SA.getSprintowner()); ps.setString(6, SA.getState()); ps.setInt(7, SA.getTargetestimatedpoints()); ps.setInt(8, SA.getTotalestimatedpoints()); ps.setInt(9, SA.getTotaldefaultestimatedhours()); ps.setInt(10, SA.getTodohours()); ps.setString(11, SA.getDescription()); status=ps.executeUpdate(); }catch(Exception e){ e.printStackTrace();} return status; } } // struts.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "/WEB-INF/classes/struts-2.1.7.dtd"> <struts> <!-- You could also set the constants in the struts.properties file placed in the same directory as struts.xml --> <constant name="struts.devMode" value="true" /> <package name="sprintanalyzer" extends="struts-default" namespace="/"> <!-- If no class attribute is specified the framework will assume success and render the result index.jsp If no name value for the result node is specified the success value is the default --> <action name=""> <result>/jsp/login.jsp</result> </action> <!-- If the URL is hello.action then call the execute method of class HelloWorldAction. If the result returned by the execute method is success render the HelloWorld.jsp --> <action name="login" class="com.bits.sprintanalyzer.action.LoginAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> <result name="input">/jsp/login.jsp</result> </action> <action name="projectform" class="com.bits.sprintanalyzer.action.ProjectAction" method="display"> <result name="input">/jsp/projectform.jsp</result> </action> <action name="projectInsert" class="com.bits.sprintanalyzer.action.ProjectAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> </action> <action name="sprintform" class="com.bits.sprintanalyzer.action.SprintAction" method="display"> <result name="input">/jsp/sprintform.jsp</result> </action> <action name="sprintInsert" class="com.bits.sprintanalyzer.action.SprintAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> </action> enter code here </package> </struts> // stacktrace 2016-10-01T18:55:04.396+0530|Warning: Servlet.service() for servlet jsp threw exception tag 'select', field 'list', name 'pid': The requested list key 'projectidList' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location]

tip
Click on the to mark the solution that helps you, Samebug will learn from it.
As a community member, you’ll be rewarded for you help.
  1. 0

    Variable cannot resolved error in struts2

    Stack Overflow | 5 months ago | sriharsha vardhan
    org.apache.jasper.JasperException: tag 'select', field 'list', name 'pid': The requested list key 'projectidList' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location] //SprintAction.java package com.bits.sprintanalyzer.action; import java.util.List; import org.apache.log4j.Logger; import com.bits.sprintanalyzer.ResourceException; import com.bits.sprintanalyzer.dao.SprintDAO; import com.opensymphony.xwork2.ActionSupport; public class SprintAction extends ActionSupport { private static final Logger LOG = Logger.getLogger(SprintAction.class); /** * */ private static final long serialVersionUID = -6257623073537028210L; private String title; private String begindate; private String enddate; private String pid; private String sprintowner; private String state; private int targetestimatedpoints; private int totalestimatedpoints; private int totaldefaultestimatedhours; private int todohours; private String description; public String getPid() { return pid; } public void setPid(String pid) { this.pid = pid; } public String getSprintowner() { return sprintowner; } public void setSprintowner(String sprintowner) { this.sprintowner = sprintowner; } public String getState() { return state; } public void setState(String state) { this.state = state; } public int getTargetestimatedpoints() { return targetestimatedpoints; } public void setTargetestimatedpoints(int targetestimatedpoints) { this.targetestimatedpoints = targetestimatedpoints; } public int getTotalestimatedpoints() { return totalestimatedpoints; } public void setTotalestimatedpoints(int totalestimatedpoints) { this.totalestimatedpoints = totalestimatedpoints; } public int getTotaldefaultestimatedhours() { return totaldefaultestimatedhours; } public void setTotaldefaultestimatedhours(int totaldefaultestimatedhours) { this.totaldefaultestimatedhours = totaldefaultestimatedhours; } public int getTodohours() { return todohours; } public void setTodohours(int todohours) { this.todohours = todohours; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public String display() throws Exception { return INPUT; } public String getBegindate() { return begindate; } public void setBegindate(String begindate) { this.begindate = begindate; } public String getEnddate() { return enddate; } public void setEnddate(String enddate) { this.enddate = enddate; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } **public List<String> getpidList() throws ResourceException { return SprintDAO.getpidList(); } public List<String> getOwnerList() throws ResourceException { return SprintDAO.getOwnerList(); }** @Override public void validate() { } @Override public String execute() throws Exception { LOG.info("title" + title); LOG.info("begindate" + begindate); LOG.info("enddate" + enddate); LOG.info("pid" + pid); LOG.info("sprintowner" + sprintowner); LOG.info("state" + state); LOG.info("targetestimatedpoints" + targetestimatedpoints); LOG.info("totalestimatedpoints" + totalestimatedpoints); LOG.info("totaldefaultestimatedhours" + totaldefaultestimatedhours); LOG.info("todohours" + todohours); LOG.info("description" + description); int i = SprintDAO.save(this); if (i > 0) { return "success"; } return "error"; } } //SPrintDAO package com.bits.sprintanalyzer.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import com.bits.sprintanalyzer.ResourceException; import com.bits.sprintanalyzer.action.SprintAction; import com.bits.sprintanalyzer.util.ConnectionUtil; public class SprintDAO { private static final String PROJECTQUERY = "select pid from project"; private static final String USERQUERY = "select name from userdetail"; public static List<String> getpidList() throws ResourceException{ List<String> projectidList = new ArrayList<String>(); // this should be populated from DB try (Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement st = con.prepareStatement(PROJECTQUERY)){ ResultSet rs =st.executeQuery(); while(rs.next()){ projectidList.add(rs.getString(1)); } return projectidList; } catch (SQLException | ResourceException e) { throw new ResourceException("Failed to validate project id", e); } } public static List<String> getOwnerList() throws ResourceException{ List<String> sprintownerList = new ArrayList<String>(); // this should be populated from DB try (Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement st = con.prepareStatement(USERQUERY)){ ResultSet rs =st.executeQuery(); while(rs.next()){ sprintownerList.add(rs.getString(1)); } return sprintownerList; } catch (SQLException | ResourceException e) { throw new ResourceException("Failed to validate productowner", e); } } //insert into database public static int save(SprintAction SA) throws Exception{ int status=0; try{ Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement ps = con.prepareStatement("insert into sprint(pid,title,begindate,enddate,owner,state,targetestimatedpoints,totalestimatedpoints,totaldefaultestimatedhours,todohours,description) values(?,?,?,?,?,?,?,?,?,?,?)"); ps.setString(1, SA.getPid()); ps.setString(2, SA.getTitle()); ps.setString(3, SA.getBegindate()); ps.setString(4, SA.getEnddate()); ps.setString(5, SA.getSprintowner()); ps.setString(6, SA.getState()); ps.setInt(7, SA.getTargetestimatedpoints()); ps.setInt(8, SA.getTotalestimatedpoints()); ps.setInt(9, SA.getTotaldefaultestimatedhours()); ps.setInt(10, SA.getTodohours()); ps.setString(11, SA.getDescription()); status=ps.executeUpdate(); }catch(Exception e){ e.printStackTrace();} return status; } } // struts.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "/WEB-INF/classes/struts-2.1.7.dtd"> <struts> <!-- You could also set the constants in the struts.properties file placed in the same directory as struts.xml --> <constant name="struts.devMode" value="true" /> <package name="sprintanalyzer" extends="struts-default" namespace="/"> <!-- If no class attribute is specified the framework will assume success and render the result index.jsp If no name value for the result node is specified the success value is the default --> <action name=""> <result>/jsp/login.jsp</result> </action> <!-- If the URL is hello.action then call the execute method of class HelloWorldAction. If the result returned by the execute method is success render the HelloWorld.jsp --> <action name="login" class="com.bits.sprintanalyzer.action.LoginAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> <result name="input">/jsp/login.jsp</result> </action> <action name="projectform" class="com.bits.sprintanalyzer.action.ProjectAction" method="display"> <result name="input">/jsp/projectform.jsp</result> </action> <action name="projectInsert" class="com.bits.sprintanalyzer.action.ProjectAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> </action> <action name="sprintform" class="com.bits.sprintanalyzer.action.SprintAction" method="display"> <result name="input">/jsp/sprintform.jsp</result> </action> <action name="sprintInsert" class="com.bits.sprintanalyzer.action.SprintAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> </action> enter code here </package> </struts> // stacktrace 2016-10-01T18:55:04.396+0530|Warning: Servlet.service() for servlet jsp threw exception tag 'select', field 'list', name 'pid': The requested list key 'projectidList' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location]

    Root Cause Analysis

    1. org.apache.jasper.JasperException

      tag 'select', field 'list', name 'pid': The requested list key 'projectidList' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location] //SprintAction.java package com.bits.sprintanalyzer.action; import java.util.List; import org.apache.log4j.Logger; import com.bits.sprintanalyzer.ResourceException; import com.bits.sprintanalyzer.dao.SprintDAO; import com.opensymphony.xwork2.ActionSupport; public class SprintAction extends ActionSupport { private static final Logger LOG = Logger.getLogger(SprintAction.class); /** * */ private static final long serialVersionUID = -6257623073537028210L; private String title; private String begindate; private String enddate; private String pid; private String sprintowner; private String state; private int targetestimatedpoints; private int totalestimatedpoints; private int totaldefaultestimatedhours; private int todohours; private String description; public String getPid() { return pid; } public void setPid(String pid) { this.pid = pid; } public String getSprintowner() { return sprintowner; } public void setSprintowner(String sprintowner) { this.sprintowner = sprintowner; } public String getState() { return state; } public void setState(String state) { this.state = state; } public int getTargetestimatedpoints() { return targetestimatedpoints; } public void setTargetestimatedpoints(int targetestimatedpoints) { this.targetestimatedpoints = targetestimatedpoints; } public int getTotalestimatedpoints() { return totalestimatedpoints; } public void setTotalestimatedpoints(int totalestimatedpoints) { this.totalestimatedpoints = totalestimatedpoints; } public int getTotaldefaultestimatedhours() { return totaldefaultestimatedhours; } public void setTotaldefaultestimatedhours(int totaldefaultestimatedhours) { this.totaldefaultestimatedhours = totaldefaultestimatedhours; } public int getTodohours() { return todohours; } public void setTodohours(int todohours) { this.todohours = todohours; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public String display() throws Exception { return INPUT; } public String getBegindate() { return begindate; } public void setBegindate(String begindate) { this.begindate = begindate; } public String getEnddate() { return enddate; } public void setEnddate(String enddate) { this.enddate = enddate; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } **public List<String> getpidList() throws ResourceException { return SprintDAO.getpidList(); } public List<String> getOwnerList() throws ResourceException { return SprintDAO.getOwnerList(); }** @Override public void validate() { } @Override public String execute() throws Exception { LOG.info("title" + title); LOG.info("begindate" + begindate); LOG.info("enddate" + enddate); LOG.info("pid" + pid); LOG.info("sprintowner" + sprintowner); LOG.info("state" + state); LOG.info("targetestimatedpoints" + targetestimatedpoints); LOG.info("totalestimatedpoints" + totalestimatedpoints); LOG.info("totaldefaultestimatedhours" + totaldefaultestimatedhours); LOG.info("todohours" + todohours); LOG.info("description" + description); int i = SprintDAO.save(this); if (i > 0) { return "success"; } return "error"; } } //SPrintDAO package com.bits.sprintanalyzer.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import com.bits.sprintanalyzer.ResourceException; import com.bits.sprintanalyzer.action.SprintAction; import com.bits.sprintanalyzer.util.ConnectionUtil; public class SprintDAO { private static final String PROJECTQUERY = "select pid from project"; private static final String USERQUERY = "select name from userdetail"; public static List<String> getpidList() throws ResourceException{ List<String> projectidList = new ArrayList<String>(); // this should be populated from DB try (Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement st = con.prepareStatement(PROJECTQUERY)){ ResultSet rs =st.executeQuery(); while(rs.next()){ projectidList.add(rs.getString(1)); } return projectidList; } catch (SQLException | ResourceException e) { throw new ResourceException("Failed to validate project id", e); } } public static List<String> getOwnerList() throws ResourceException{ List<String> sprintownerList = new ArrayList<String>(); // this should be populated from DB try (Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement st = con.prepareStatement(USERQUERY)){ ResultSet rs =st.executeQuery(); while(rs.next()){ sprintownerList.add(rs.getString(1)); } return sprintownerList; } catch (SQLException | ResourceException e) { throw new ResourceException("Failed to validate productowner", e); } } //insert into database public static int save(SprintAction SA) throws Exception{ int status=0; try{ Connection con = ConnectionUtil.INSTANCE.getConnection(); PreparedStatement ps = con.prepareStatement("insert into sprint(pid,title,begindate,enddate,owner,state,targetestimatedpoints,totalestimatedpoints,totaldefaultestimatedhours,todohours,description) values(?,?,?,?,?,?,?,?,?,?,?)"); ps.setString(1, SA.getPid()); ps.setString(2, SA.getTitle()); ps.setString(3, SA.getBegindate()); ps.setString(4, SA.getEnddate()); ps.setString(5, SA.getSprintowner()); ps.setString(6, SA.getState()); ps.setInt(7, SA.getTargetestimatedpoints()); ps.setInt(8, SA.getTotalestimatedpoints()); ps.setInt(9, SA.getTotaldefaultestimatedhours()); ps.setInt(10, SA.getTodohours()); ps.setString(11, SA.getDescription()); status=ps.executeUpdate(); }catch(Exception e){ e.printStackTrace();} return status; } } // struts.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "/WEB-INF/classes/struts-2.1.7.dtd"> <struts> <!-- You could also set the constants in the struts.properties file placed in the same directory as struts.xml --> <constant name="struts.devMode" value="true" /> <package name="sprintanalyzer" extends="struts-default" namespace="/"> <!-- If no class attribute is specified the framework will assume success and render the result index.jsp If no name value for the result node is specified the success value is the default --> <action name=""> <result>/jsp/login.jsp</result> </action> <!-- If the URL is hello.action then call the execute method of class HelloWorldAction. If the result returned by the execute method is success render the HelloWorld.jsp --> <action name="login" class="com.bits.sprintanalyzer.action.LoginAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> <result name="input">/jsp/login.jsp</result> </action> <action name="projectform" class="com.bits.sprintanalyzer.action.ProjectAction" method="display"> <result name="input">/jsp/projectform.jsp</result> </action> <action name="projectInsert" class="com.bits.sprintanalyzer.action.ProjectAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> </action> <action name="sprintform" class="com.bits.sprintanalyzer.action.SprintAction" method="display"> <result name="input">/jsp/sprintform.jsp</result> </action> <action name="sprintInsert" class="com.bits.sprintanalyzer.action.SprintAction" method="execute"> <result name="success">/jsp/sprintanalyzer.jsp</result> </action> enter code here </package> </struts> // stacktrace 2016-10-01T18:55:04.396+0530|Warning: Servlet.service() for servlet jsp threw exception tag 'select', field 'list', name 'pid': The requested list key 'projectidList' could not be resolved as a collection/array/map/enumeration/iterator type. Example: people or people.{name} - [unknown location]

      at org.apache.struts2.components.Component.fieldError()
    2. Struts2
      ComponentTagSupport.doEndTag
      1. org.apache.struts2.components.Component.fieldError(Component.java:237)
      2. org.apache.struts2.components.Component.findValue(Component.java:358)
      3. org.apache.struts2.components.ListUIBean.evaluateExtraParams(ListUIBean.java:80)
      4. org.apache.struts2.components.Select.evaluateExtraParams(Select.java:105)
      5. org.apache.struts2.components.UIBean.evaluateParams(UIBean.java:856)
      6. org.apache.struts2.components.UIBean.end(UIBean.java:510)
      7. org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
      7 frames
    3. org.apache.jsp
      sprintform_jsp._jspService
      1. org.apache.jsp.jsp.sprintform_jsp._jspx_meth_s_select_0(sprintform_jsp.java:236)
      2. org.apache.jsp.jsp.sprintform_jsp._jspx_meth_s_form_0(sprintform_jsp.java:144)
      3. org.apache.jsp.jsp.sprintform_jsp._jspService(sprintform_jsp.java:88)
      3 frames
    4. GWT dev
      HttpJspBase.service
      1. org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
      1 frame
    5. JavaServlet
      HttpServlet.service
      1. javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
      1 frame
    6. GWT dev
      JspServlet.service
      1. org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
      2. org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
      3. org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
      3 frames
    7. JavaServlet
      HttpServlet.service
      1. javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
      1 frame
    8. Glassfish Core
      ApplicationDispatcher.forward
      1. org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
      2. org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:875)
      3. org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:739)
      4. org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:575)
      5. org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:546)
      6. org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:428)
      7. org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:378)
      7 frames
    9. Struts2
      StrutsResultSupport.execute
      1. org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154)
      2. org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
      2 frames
    10. XWork
      ValidationInterceptor.doIntercept
      1. com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:362)
      2. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:266)
      3. com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
      4. com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      5. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      6. com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
      6 frames
    11. Struts2
      AnnotationValidationInterceptor.doIntercept
      1. org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
      1 frame
    12. XWork
      DefaultActionInvocation.invoke
      1. com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      2. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      3. com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
      4. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      5. com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
      6. com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      7. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      8. com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
      9. com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      10. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      11. com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
      12. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      12 frames
    13. Struts2
      MultiselectInterceptor.intercept
      1. org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
      1 frame
    14. XWork
      DefaultActionInvocation.invoke
      1. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      1 frame
    15. Struts2
      CheckboxInterceptor.intercept
      1. org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
      1 frame
    16. XWork
      DefaultActionInvocation.invoke
      1. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      1 frame
    17. Struts2
      FileUploadInterceptor.intercept
      1. org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
      1 frame
    18. XWork
      DefaultActionInvocation.invoke
      1. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      2. com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
      3. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      4. com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:130)
      5. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      5 frames
    19. Struts2
      DebuggingInterceptor.intercept
      1. org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
      1 frame
    20. XWork
      DefaultActionInvocation.invoke
      1. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      2. com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
      3. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      4. com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
      5. com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      6. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      7. com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:165)
      8. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      8 frames
    21. Struts2
      ServletConfigInterceptor.intercept
      1. org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
      1 frame
    22. XWork
      DefaultActionInvocation.invoke
      1. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      2. com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:179)
      3. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      4. com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
      5. com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      5 frames
    23. Struts2
      StrutsPrepareAndExecuteFilter.doFilter
      1. org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
      2. org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
      3. org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
      4. org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
      4 frames
    24. Glassfish Core
      StandardPipeline.invoke
      1. org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
      2. org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      3. org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
      4. org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
      5. org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
      6. org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
      6 frames
    25. Glassfish
      WebPipeline.invoke
      1. com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
      1 frame
    26. Glassfish Core
      CoyoteAdapter.service
      1. org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
      2. org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
      3. org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
      3 frames
    27. Kernel Classes
      ContainerMapper.service
      1. com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
      2. com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
      2 frames
    28. Grizzly Server
      HttpServerFilter.handleRead
      1. org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
      2. org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
      3. org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
      3 frames
    29. Grizzly
      AbstractThreadPool$Worker.run
      1. org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
      2. org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
      3. org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
      4. org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
      5. org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
      6. org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
      7. org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
      8. org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
      9. org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
      10. org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
      11. org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
      12. org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
      13. org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
      13 frames
    30. Java RT
      Thread.run
      1. java.lang.Thread.run(Thread.java:745)
      1 frame