最近公司要求用jspsmart上传下载,用的框架是spring +ibatis 
页面代码stencilAdd.jsp
<%@ include file="/WEB-INF/jsp/inc/tld.jsp" %>
<%@ include file="/WEB-INF/jsp/inc/css.jsp" %>
<%@ include file="/WEB-INF/jsp/inc/js.jsp" %>
<html>
 <head>
 <script type="text/javascript"
src="/js/mart/sentil/fileUpLoad.js"></script>    <title>添加行业模版</title></head>
<body >
<div align="center">
  <html:navigation content="行业模版管理>>行业模版添加"/> <table class="inputTable">
 <html:form action="stencilAddSave.mart" method="post"
name="afficheForm" id="afficheForm" enctype="multipart/form-data">    <tr class="inputTableHead">
      <td colspan="2">行业模版信息</td>
    </tr>       <tr>
    <td width="150" >数据等级</td>
    <td colspan="3" >
        <select name="rule_level" id="rule_level">
          <option value="1">基本员工</option>
          <option value="2">中层领导</option>
          <option value="3">高层领导</option>
          <option value="4">领导</option>
        </select><font color="#FF0000">*</font></td>
  </tr>    <tr>
      <td width="100">文件名</td>
      <td width="600">
        <input type="text" class="char" name="rule_filename" maxlength="50" style="width:200"
   ><font color="#FF0000">*</font>
      </td>
    </tr>
    <tr>
      <td>备注</td>
      <td>
        <textarea  name="rule_re" class="char"  style="height:50"
style="width:200"></textarea><font color="#FF0000">*</font>
       </td>
    </tr>     <tr>
        <td>文件附件 </td>
           <td>
<input type="file"  size="20" name="rule_addition" /><font color="#FF0000">*</font>
<font color="red">上传文件须小于4M</font>
</td>
</tr>
    </html:form>
  </table>
  <br>
  <input type="button" class="btn" imageType="ok" style="width:70" value="确 定"  <%if(!systemhandleList.contains("HYMB3")){%>disabled<%}%> onclick="myUploadFile('afficheForm','stencilAddSave.mart')">//用js获取页面的普通属性
  &nbsp;&nbsp;
  <input type="button" class="btn" imageType="return" style="width:70" value="返 回" <%if(!systemhandleList.contains("HYMB1")){%>disabled<%}%> onclick="link('stencilPage.mart')">
</div>
</body>
</html>js代码
/**从页面获取值传给控制器
**/function myUploadFile(form,url){
  //  var rule_cuid = document.getElementById("rule_cuid").value;
  //  var rule_cdate = document.getElementById("rule_cdate").value;    var rule_filename = document.getElementById("rule_filename").value;
    var rule_level = document.getElementById("rule_level").value;
    var rule_re = document.getElementById("rule_re").value;    var myValues=rule_filename+";"+rule_level+";"+rule_re;    document.forms[form].action=url+"?myValues="+myValues;    document.forms[form].submit();
}javabean 代码
  package com.framework.mapping;import com.framework.mapping.PageInfo;public class Yf_rule extends PageInfo {
  private String rule_id;
  private String rule_cuid;
  private java.util.Date rule_cdate;
  private String rule_filename;
  private String rule_addition;
  private String rule_level;
  private String rule_re;
  private String rule_type;
  private String rule_states;
  private String rule_backup1;
  private String rule_backup2;  public Yf_rule() {
  }  public Yf_rule(String rule_id) {
    this.rule_id = rule_id;
  }  public final String getRule_id() {
    return rule_id;
  }  public final void setRule_id(String rule_id) {
    this.rule_id = rule_id;
  }  public final String getRule_cuid() {
    return rule_cuid;
  }  public final void setRule_cuid(String rule_cuid) {
    this.rule_cuid = rule_cuid;
  }  public final java.util.Date getRule_cdate() {
    return rule_cdate;
  }  public final void setRule_cdate(java.util.Date rule_cdate) {
    this.rule_cdate = rule_cdate;
  }  public final String getRule_filename() {
    return rule_filename;
  }  public final void setRule_filename(String rule_filename) {
    this.rule_filename = rule_filename;
  }  public final String getRule_addition() {
    return rule_addition;
  }  public final void setRule_addition(String rule_addition) {
    this.rule_addition = rule_addition;
  }  public final String getRule_level() {
    return rule_level;
  }  public final void setRule_level(String rule_level) {
    this.rule_level = rule_level;
  }  public final String getRule_re() {
    return rule_re;
  }  public final void setRule_re(String rule_re) {
    this.rule_re = rule_re;
  }  public final String getRule_type() {
    return rule_type;
  }  public final void setRule_type(String rule_type) {
    this.rule_type = rule_type;
  }  public final String getRule_states() {
    return rule_states;
  }  public final void setRule_states(String rule_states) {
    this.rule_states = rule_states;
  }  public final String getRule_backup1() {
    return rule_backup1;
  }  public final void setRule_backup1(String rule_backup1) {
    this.rule_backup1 = rule_backup1;
  }  public final String getRule_backup2() {
    return rule_backup2;
  }  public final void setRule_backup2(String rule_backup2) {
    this.rule_backup2 = rule_backup2;
  }
}spring控制器代码 public ModelAndView stencilAddSave(HttpServletRequest request, HttpServletResponse response) throws Exception {                Yf_rule yf_rule=(Yf_rule)fillBean(Yf_rule.class,request);
                String myValues = request.getParameter("myValues");
                String[] str = myValues.split(";");
                yf_rule.setRule_filename(str[0]);
                yf_rule.setRule_level(str[1]);
                yf_rule.setRule_re(str[2]);
                yf_rule.setRule_cuid(loginUser.getLoginUser_ID());
                yf_rule.setRule_cdate(DateUtil.strToDate(DateUtil.getDate()));
                yf_rule.setRule_id(StringUtil.getPrimaryKey());
                yf_rule.setRule_states("1");
                yf_rule.setRule_type("2");
               SmartUpload mySmartUpload = new SmartUpload();               mySmartUpload.initialize(application,request,response);
               mySmartUpload.setMaxFileSize(4*1024*1024);//设定上传限制4M              mySmartUpload.upload();
              List list = new ArrayList();
              String filename = StringUtil.getPrimaryKey()+".jsp";
            for (int i=0;i<mySmartUpload.getFiles().getCount();i++){
    if(i == 0){
              com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(i);
              myFile.saveAs("/WEB-INF/jsp/info/affiche/"+filename);
           }           }           int result = stencilLogic.insertYf_rule(yf_rule);           if(result>0){
              list.add(makeHref("返回页面","stencilPage.mart?"));
              model=returnInfo("附件上传成功",list);
              model.put("loginUser",loginUser);
              return new ModelAndView(SUCCESS_PAGE,model);
           }            else
           {
            model=returnInfo("附件上传失败!",makeHref("返回","stencilPage.mart"));
             return redirectPage(MESSAGE_PAGE,model);
            }      }控制器中可是获取不了上传文件的流
请问用什么解决
项目快到期了,请大家帮帮