⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fileuploadbean.java

📁 仿照著名的petstore写的网上书店
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                        ee.printStackTrace();                    }                } else {                    PetstoreUtil.getLogger().log(Level.INFO, "A \"proxyHost\" and \"proxyPort\" isn't set as a web.xml context-param. A proxy server may be necessary to reach the open internet.");                }                                // use component to get points based on location (this uses Yahoo's map service                String totAddr=addressx.toString();                double latitude=0;                double longitude=0;                if(totAddr.length() > 0) {                    try {                        GeoPoint points[]=geoCoder.geoCode(totAddr);                        if ((points == null) || (points.length < 1)) {                            PetstoreUtil.getLogger().log(Level.INFO, "No addresses for location - " + totAddr);                        } else if(points.length > 1) {                            PetstoreUtil.getLogger().log(Level.INFO, "Matched " + points.length + " locations, taking the first one");                        }                                                // grab first address in more that one came back                        if(points != null && points.length > 0) {                            // set values to used for map location                            latitude = points[0].getLatitude();                            longitude = points[0].getLongitude();                        }                    } catch (Exception ee) {                        PetstoreUtil.getLogger().log(Level.WARNING, "geocoder.lookup.exception", ee);                    }                }                BigDecimal pricex;                try {                    pricex=new BigDecimal(price).setScale(2, BigDecimal.ROUND_HALF_UP);                } catch (NumberFormatException nf) {                    pricex=BigDecimal.valueOf(-1);                    PetstoreUtil.getLogger().log(Level.INFO, "Price isn't in a proper number - " + price);                }                Address addr = new Address(street1,"",city,state,zip,                        latitude,longitude);                SellerContactInfo contactInfo = new SellerContactInfo(firstName, lastName, email);                Item item = new Item(prodId,name,desc,fileName, thumbPath, pricex,                        addr,contactInfo,0,0);                                // validate item                String[] errors=item.validateWithMessage();                if(bDebug) System.out.println("*** validation errors = " + errors.length);                if(errors.length > 0) {                    // some validation errors have been hit through an exception                    StringBuilder sbMess=new StringBuilder();                    for(String mesg : errors) {                        sbMess.append(mesg);                        sbMess.append("\n");                    }                                        sendErrorResponse(response, writer, sbMess.toString());                    return;                }                                if (catalogFacade == null) {                    Map<String,Object> contextMap = context.getExternalContext().getApplicationMap();                    this.catalogFacade = (CatalogFacade)contextMap.get("CatalogFacade");                }                                // now parse tags for item                StringTokenizer stTags=new StringTokenizer(tags, " ");                String tagx=null;                while(stTags.hasMoreTokens()) {                    tagx=stTags.nextToken().toLowerCase();                    Tag tag=null;                    if(bDebug) System.out.println("Adding TAG = " + tagx);                    // see if tag is already in item                    if(!item.containsTag(tagx)) {                        // add correct tag reference to item                        item.getTags().add(catalogFacade.addTag(tagx));                    }                }                                itemId=catalogFacade.addItem(item);                PetstoreUtil.getLogger().log(Level.FINE, "Item " + name + " has been persisted");                            } catch (Exception ex) {                // since this method is access through an ajax call, must send back a message                // so the client can forward the user to the systemerror page                PetstoreUtil.getLogger().log(Level.SEVERE, "fileupload.persist.exception", ex);                response.sendError(response.SC_INTERNAL_SERVER_ERROR, ex.toString());                return;            }                        String responseMessage = firstName+", Thank you for submitting your book "+name+" !";            FileUploadResponse fuResponse = new FileUploadResponse(                    itemId,                    prodId,                    responseMessage,                    status.getStatus(),                    Long.toString(status.getUploadTime()),                    status.getUploadTimeString(),                    status.getStartUploadDate().toString(),                    status.getEndUploadDate().toString(),                    Long.toString(status.getTotalUploadSize()),                    thumbPath);            session.removeAttribute(FILE_UL_RESPONSE);            session.setAttribute(FILE_UL_RESPONSE, fuResponse);            /** the following writer operation is for the case when iframe             * bug is fixed. they are not used currently in the client             */            StringBuffer sb=new StringBuffer();            response.setContentType("text/xml;charset=UTF-8");            response.setHeader("Pragma", "No-Cache");            response.setHeader("Cache-Control", "no-cache,no-store,max-age=0");            response.setDateHeader("Expires", 1);            sb.append("<response>");            sb.append("<message>");            sb.append(responseMessage);            sb.append("</message>");            sb.append("<status>");            sb.append(status.getStatus());            sb.append("</status>");            sb.append("<duration>");            sb.append(status.getUploadTime());            sb.append("</duration>");            sb.append("<duration_string>");            sb.append(status.getUploadTimeString());            sb.append("</duration_string>");            sb.append("<start_date>");            sb.append(status.getStartUploadDate());            sb.append("</start_date>");            sb.append("<end_date>");            sb.append(status.getEndUploadDate());            sb.append("</end_date>");            sb.append("<upload_size>");            sb.append(status.getTotalUploadSize());            sb.append("</upload_size>");            sb.append("<thumbnail>");            sb.append(thumbPath);            sb.append("</thumbnail>");            sb.append("<itemId>");            sb.append(itemId);            sb.append("</itemId>");            sb.append("<productId>");            sb.append(prodId);            sb.append("</productId>");            sb.append("</response>");            if(bDebug) System.out.println("Response:\n" + sb);            writer.write(sb.toString());            writer.flush();                    } catch (IOException iox) {            PetstoreUtil.getLogger().log(Level.SEVERE, "FileUploadPhaseListener error writting AJAX response", iox);        }    }        private String constructThumbnail(String path) {        String thumbPath = null;        File file = new File(path);        String aPath = file.getAbsolutePath();                // first, construct the file name for thumbnail        if (file.exists()) {            int idx = aPath.lastIndexOf(".");            if (idx > 0) {                thumbPath = aPath.substring(0, idx)+"_thumb"+aPath.substring(idx, aPath.length());            }        }        try {            ImageScaler imgScaler = new ImageScaler(aPath);            imgScaler.keepAspectWithWidth();            imgScaler.resizeWithGraphics(thumbPath);        } catch (Exception e) {            PetstoreUtil.getLogger().log(Level.SEVERE, "ERROR in generating thumbnail", e);        }        return thumbPath;    }        private String getStringValue(Hashtable htUpload, String key)  {        if(key == null) return null;                String sxTemp=(String)htUpload.get(key);        if(sxTemp == null) {            sxTemp="";        }        return sxTemp;    }        public String getUploadImageDirectory() {        return PetstoreConstants.PETSTORE_IMAGE_DIRECTORY + "/images";    }        private void sendErrorResponse(HttpServletResponse response, ResponseWriter writer, String mess) throws IOException {        response.setContentType("text/xml;charset=UTF-8");        response.setHeader("Pragma", "No-Cache");        response.setHeader("Cache-Control", "no-cache,no-store,max-age=0");        response.setDateHeader("Expires", 1);        writer.write("<response>");        writer.write("<message>");        writer.write("Validation Error");        writer.write("</message>");        writer.write("<detail>");        writer.write(mess);        writer.write("</detail>");        writer.write("</response>");    }        }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -