我提交得页面:
<%@ page language="java" pageEncoding="gb2312"%>
 
<html> 
<head>
<title>76业务量查询</title>
<link rel="stylesheet" href="images/css.css" type="text/css" media="screen">
</head>
<body> <html:form action="/search76">
<table width="773"  border="0" align="center" cellpadding="0" cellspacing="0" class="zhengw">
            <tr class="zhengwen">
              <td width="26%"><div align="center" class="zhengw">
                <label></label>
                <div align="left">地区</div>
              </div></td>
              <td width="8%">&nbsp;</td>
              <td width="10%"><div align="center">开始时间</div></td>
              <td width="13%"><div align="center">
                <input class="input" type="text" name="regdate" size="12">
              </div></td>
              <td width="24%"><p>
                <label>
 <select name="smini" size="1" class="bdtj3" id="smini">
                    <option value="9" selected>9</option>
                    <%
                    int i=0;
for(i=0;i<=23;i++){
                out.write("<option value=\"" + i + "\">" + i + "</option>");
}
%>
                  </select>
 点  </label>
              </p></td>
              <td width="19%">&nbsp;</td>
            </tr>
            <tr class="zhengwen">
              <td><div align="center">
                <label></label>
                <select name="sheng" size="1" class="bdtj3" id="sheng">
                  <option value="AllCountry"  selected>全国</option>
  <option value="安徽">安徽</option>
  <option value="重庆">重庆</option>
  <option value="湖北">湖北</option>
  <option value="吉林">吉林</option>
  <option value="内蒙古">内蒙古</option>
  <option value="宁夏">宁夏</option>
  <option value="山西">山西</option>
  <option value="福建">福建</option>
  <option value="浙江">浙江</option>
  <option value="辽宁">辽宁</option>
  <option value="河南">河南</option>
  <option value="甘肃">甘肃</option>
  <option value="新疆">新疆</option>
  <option value="黑龙江">黑龙江</option>
  <option value="青海">青海</option>
  <option value="河北">河北</option>
  <option value="四川">四川</option>
  <option value="江西">江西</option>
  <option value="天津">天津</option>
  <option value="江苏">江苏</option>
  <option value="西藏">西藏</option>
  <option value="海南">海南</option>
  <option value="贵州">贵州</option>
  <option value="广东">广东</option>
  <option value="湖南">湖南</option>
  <option value="山东">山东</option>
  <option value="上海">上海</option>
  <option value="陕西">陕西</option>
  <option value="云南">云南</option>
  <option value="广西">广西</option>
                </select>
              </div></td>
              <td>&nbsp;</td>
              <td><div align="center">结束时间</div></td>
              <td><div align="center">
                <input class="input" type="text" name="regdate2" size="12">
              </div></td>
              <td><label>
                  <select name="emini" size="1" class="bdtj3" id="emini">
                    <option value="9" selected>9</option>
                    <%
for(i=0;i<=23;i++){
                out.write("<option value=\"" + i + "\">" + i + "</option>");
}
%>
                    </select>
                  点                </label></td>
              <td>&nbsp;</td>
            </tr>
            <tr class="zhengwen">
              <td><div align="right"></div></td>
              <td colspan="3"><div align="center"></div></td>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
<tr class="zhengwen1">
              <td><div align="right"></div></td>
              <td colspan="3"><div align="center"></div></td>
              <td>&nbsp;</td>
              <td><input type="Submit" name="Submit" value="开始搜索" class="bdtj" align="middle"></td>
            </tr>
          </table>
</html:form>
</body>
</html>这是action.java
package com;import java.util.ArrayList;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;public class Search76Action extends Action {

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
Search76Form search76Form = (Search76Form) form;// TODO Auto-generated method stub
String sheng = search76Form.getSheng();
String emini = search76Form.getEmini();
String smini = search76Form.getSmini();
String regdate2 = search76Form.getRegdate2();
String regdate = search76Form.getRegdate();
String stime=regdate+" "+smini+":00:00";
String etime=regdate2+" "+emini+":00:00";
/*System.out.println(sheng);
System.out.println(emini);
System.out.println(smini);
System.out.println(regdate2);
System.out.println(regdate);*/
 //生成一个ArrayList对象,并把用户名和密码的值存入该对象中
       ArrayList arr = new ArrayList();
        arr.add(sheng);
        arr.add(stime);
        arr.add(etime);         String prompt=null;        //调用模型组件Search76Handler
        if(sheng.equals("AllCountry")){
         Search76Handler Search76 = new Search76Handler();
        boolean  = Search76.checkAllCountry(arr);         if()  prompt = "search76Success";         
          else prompt = "search76Fail";   
        //System.out.println(sheng);
        System.out.println(prompt);
        }else{
         Search76Handler Search76 = new Search76Handler();
        boolean  = Search76.checkSheng(arr);         if()  prompt = "search76Success";         
          else prompt = "search76Fail";   
        //System.out.println(sheng);
        System.out.println(prompt);
        
        }
        return mapping.findForward(prompt);  
}
       
}

解决方案 »

  1.   

    这些是我自己提交以后得输出,结果正确
    信息: Initialize action of type: com.Search76Action
    AllCountry
    9
    9
    2007-05-09
    2007-04-03
    SELECT SUM(CEILING(DATEDIFF(s, StartTime, EndTime) / 60) + 1) AS SUM3330 FROM xgsx_Call_Log where  StartTime>convert(datetime,'2007-04-03 9:00:00') and EndTime<convert(datetime,'2007-05-09 9:00:00') and calleeid='101763330' and DATEDIFF(s,StartTime,EndTime)>15 and DATEDIFF(s,StartTime,EndTime)<2400 GROUP BY calleeid
    1862.0
    204.0
    search76Success但是在过了一会就出现问题了,action又自己执行了一次,不知道原因在哪,求帮助谢谢
    这是错误出现得信息
    null
    null
    null
    null
    null
    2007-11-6 12:50:36 org.apache.struts.chain.commands.AbstractExceptionHandler execute
    警告: Unhandled exception
    java.lang.NullPointerException
    at com.Search76Action.execute(Search76Action.java:64)
    at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
    at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
    at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at com.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:105)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
    at java.lang.Thread.run(Unknown Source)
    2007-11-6 12:50:36 org.apache.struts.chain.commands.ExceptionCatcher postprocess
    警告: Exception from exceptionCommand 'servlet-exception'
    java.lang.NullPointerException
    at com.Search76Action.execute(Search76Action.java:64)
    at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
    at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
    at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at com.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:105)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
    at java.lang.Thread.run(Unknown Source)
      

  2.   

    at   com.Search76Action.execute(Search76Action.java:64) 
    空指针.
      

  3.   

    问题是这次不是我提交得,就跟我题目写得一样,是它自己又执行了一次,why?
      

  4.   

    <link   rel= "stylesheet "   href= "images/css.css "   type= "text/css "   media= "screen "> 
    在jsp中 把这行去掉
      

  5.   

    你是不是提交后 return   mapping.findForward(prompt);   将其又指向了 你的提交?建议你检查一下 mapping.findForward(prompt); 后的struts配置文件  
      

  6.   

    这个问题我遇到过  你把按钮的submit给成button 因为你手动提交一次之后,submit又自动提交一次