首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

急请教 用JspSmartUpload上传出现了有关问题~

2011-12-10 
急急!!!请教 用JspSmartUpload上传出现了问题~~~在线等最近做在线书店的项目添加书时要上传图片我用SmartU

急急!!!请教 用JspSmartUpload上传出现了问题~~~在线等
最近做在线书店的项目   添加书时   要上传图片  
我用SmartUpload上传图片   老师出问题   图片能上传   就是上传的都是重复的   只能上传第一次传的   有时还报java.lang.StringIndexOutOfBoundsException:   String   index   out   of   range:   -190   错误  
Servlet的代码如下:
package   bookshop;

import   javax.servlet.*;
import   javax.servlet.http.*;
import   java.io.*;
import   java.util.*;
import   com.jspsmart.upload.*;
import   Entity.*;
import   business.*;
public   class   addBookServlet   extends   HttpServlet   {
        private   static   final   String   CONTENT_TYPE   =   "text/html;   charset=GBK ";


        private   ServletConfig   sc;
      private     SmartUpload   su;
      private   com.jspsmart.upload.Request   req;
        public   void   init()   throws   ServletException   {
                  sc=this.getServletConfig();
                  su=new   SmartUpload();


        }

   
        public   void   doGet(HttpServletRequest   request,   HttpServletResponse   response)   throws
                        ServletException,   IOException   {
                    doPost(request,   response);
           

        }

        public   void   doPost(HttpServletRequest   request,   HttpServletResponse   response)   throws
                        ServletException,   IOException   {


              su.initialize(sc,request,response);
              su.setTotalMaxFileSize(10000);
              su.setAllowedFilesList( "jpg,gif ");
                req=su.getRequest();
     

      try   {

              su.upload();
              String   path=request.getRealPath( "/ ");
              su.save(path+ "/upload ");
      }   catch   (SmartUploadException   ex)   {
      }   catch   (IOException   ex)   {
      }   catch   (ServletException   ex)   {
      }

          String   name=req.getParameter( "name ");
          String   description=req.getParameter( "description ");
        float   price=Float.parseFloat(req.getParameter( "price ").trim());
          Files   fs=su.getFiles();
          com.jspsmart.upload.File   file=fs.getFile(0);
          String   photoAddress=   file.getFileName();



          photoAddress= "/upload/ ".concat(photoAddress);


          String   keywords=req.getParameter( "keywords ");
          int   qh=Integer.parseInt(req.getParameter( "qh "));
          int   yt=Integer.parseInt(   req.getParameter( "yt "));
        int   important=Integer.parseInt(req.getParameter( "important "));
        int   catalog=Integer.parseInt(   req.getParameter( "parentname "));
        if(yt==0){
                photoAddress= "/upload/default.jpg ";
        }


                  shop_product_info   pro=new   shop_product_info();
                  pro.setName(name);
                  pro.setCatalog_id(catalog);
                  pro.setDescription(description);
                  pro.setImg_path(photoAddress);
                  pro.setPrice(price);
                  pro.setImportance_show(important);
                  pro.setKeywords(keywords);
                  pro.setAbsence(qh);
                  pro.setShow_out(yt);

                  boolean   flag=false;
                  business   bus=new   business();
                  flag=bus.addNewBook(pro);
                  bus.colseDB();
                  RequestDispatcher   dis=null;
                  HttpSession   session=request.getSession();
                  if(flag){
                          session.setAttribute( "bookname ",name);
                        dis=   request.getRequestDispatcher( "/addBookSuccess.jsp ");
                  }else{
                        dis=   request.getRequestDispatcher( "/addBookFaild.jsp ");
                  }
                  dis.forward(request,response);
                //   su.d


        }

        //Clean   up   resources
        public   void   destroy()   {
        }
}


谢谢了啊
在线等

------解决方案--------------------


photoAddress= "/upload/ ".concat(photoAddress);

这句什么意思。。。好久没有用过smartupload了。。。
[解决办法]
String数组越界,访问了-190这个索引的数组,跟踪看看在哪出的异常,应该就可以解决了。
[解决办法]
关注
[解决办法]
你输出这个数组对象,看是不是为null

热点排行