📄 page1.java
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package fileuploadexample;import com.sun.rave.web.ui.appbase.AbstractPageBean;import com.sun.webui.jsf.component.Button;import com.sun.webui.jsf.component.ImageComponent;import com.sun.webui.jsf.component.Label;import com.sun.webui.jsf.component.MessageGroup;import com.sun.webui.jsf.component.StaticText;import com.sun.webui.jsf.component.Upload;import com.sun.webui.jsf.model.UploadedFile;import java.io.File;import javax.faces.FacesException;/** * <p>Page bean that corresponds to a similarly named JSP page. This * class contains component definitions (and initialization code) for * all components that you have defined on this page, as well as * lifecycle methods and event handlers where you may add behavior * to respond to incoming events.</p> * * @version Page1.java * @version Created on 2009-5-4, 15:31:10 * @author Administrator */public class Page1 extends AbstractPageBean { private String realImageFilePath; private static final String IMAGE_URL = "/resources/image-file"; // <editor-fold defaultstate="collapsed" desc="Managed Component Definition"> /** * <p>Automatically managed component initialization. <strong>WARNING:</strong> * This method is automatically generated, so any user-specified code inserted * here is subject to being replaced.</p> */ private void _init() throws Exception { } private Label label1 = new Label(); public Label getLabel1() { return label1; } public void setLabel1(Label l) { this.label1 = l; } private Label label2 = new Label(); public Label getLabel2() { return label2; } public void setLabel2(Label l) { this.label2 = l; } private Label label3 = new Label(); public Label getLabel3() { return label3; } public void setLabel3(Label l) { this.label3 = l; } private Upload fileUpload1 = new Upload(); public Upload getFileUpload1() { return fileUpload1; } public void setFileUpload1(Upload u) { this.fileUpload1 = u; } private StaticText staticText2 = new StaticText(); public StaticText getStaticText2() { return staticText2; } public void setStaticText2(StaticText st) { this.staticText2 = st; } private StaticText fileNameStaticText = new StaticText(); public StaticText getFileNameStaticText() { return fileNameStaticText; } public void setFileNameStaticText(StaticText st) { this.fileNameStaticText = st; } private StaticText fileTypeStaticText = new StaticText(); public StaticText getFileTypeStaticText() { return fileTypeStaticText; } public void setFileTypeStaticText(StaticText st) { this.fileTypeStaticText = st; } private StaticText fileSizeStaticText = new StaticText(); public StaticText getFileSizeStaticText() { return fileSizeStaticText; } public void setFileSizeStaticText(StaticText st) { this.fileSizeStaticText = st; } private ImageComponent image1 = new ImageComponent(); public ImageComponent getImage1() { return image1; } public void setImage1(ImageComponent ic) { this.image1 = ic; } private MessageGroup messageGroup1 = new MessageGroup(); public MessageGroup getMessageGroup1() { return messageGroup1; } public void setMessageGroup1(MessageGroup mg) { this.messageGroup1 = mg; } private Button uploadFileButton = new Button(); public Button getUploadFileButton() { return uploadFileButton; } public void setUploadFileButton(Button b) { this.uploadFileButton = b; } // </editor-fold> /** * <p>Construct a new Page bean instance.</p> */ public Page1() { } /** * <p>Callback method that is called whenever a page is navigated to, * either directly via a URL, or indirectly via page navigation. * Customize this method to acquire resources that will be needed * for event handlers and lifecycle methods, whether or not this * page is performing post back processing.</p> * * <p>Note that, if the current request is a postback, the property * values of the components do <strong>not</strong> represent any * values submitted with this request. Instead, they represent the * property values that were saved for this view when it was rendered.</p> */ @Override public void init() {// Perform initializations inherited from our superclass super.init();// 执行必须在初始化受管组件 //*之前*完成的应用程序初始化 // TODO - 在此处添加您自己的初始化代码// <editor-fold defaultstate="collapsed" desc="由 Visual Web 管理的组件初始化">// 自动初始化受管的组件 // *注意* - 不应修改此逻辑 try { _init(); } catch (Exception e) { log("Page1 Initialization Failure", e); throw e instanceof FacesException ? (FacesException) e : new FacesException(e); } } /** * <p>Callback method that is called after the component tree has been * restored, but before any event processing takes place. This method * will <strong>only</strong> be called on a postback request that * is processing a form submit. Customize this method to allocate * resources that will be required in your event handlers.</p> */ @Override public void preprocess() { } /** * <p>Callback method that is called just before rendering takes place. * This method will <strong>only</strong> be called for the page that * will actually be rendered (and not, for example, on a page that * handled a postback and then navigated to a different page). Customize * this method to allocate resources that will be required for rendering * this page.</p> */ @Override public void prerender() { String uploadedFileName = (String) this.fileNameStaticText.getValue(); if ( uploadedFileName != null ) { image1.setUrl(IMAGE_URL); } } /** * <p>Callback method that is called after rendering is completed for * this request, if <code>init()</code> was called (regardless of whether * or not this was the page that was actually rendered). Customize this * method to release resources acquired in the <code>init()</code>, * <code>preprocess()</code>, or <code>prerender()</code> methods (or * acquired during execution of an event handler).</p> */ @Override public void destroy() { } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected SessionBean1 getSessionBean1() { return (SessionBean1) getBean("SessionBean1"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected RequestBean1 getRequestBean1() { return (RequestBean1) getBean("RequestBean1"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected ApplicationBean1 getApplicationBean1() { return (ApplicationBean1) getBean("ApplicationBean1"); } public String uploadFileButton_action() { //待办事项:执行此操作。返回值为某个导航 //情况名称;如果返回值为空,将返回至同一页面。 UploadedFile uploadedFile = fileUpload1.getUploadedFile(); if( uploadedFile == null ) return null; String uploadedFileName = uploadedFile.getOriginalName(); // Some browsers return complete path name, some don't // Make sure we only have the file name // First, try forward slash int index = uploadedFileName.lastIndexOf('/'); String justFileName; if ( index >= 0) { justFileName = uploadedFileName.substring( index + 1 ); } else { // Try backslash index = uploadedFileName.lastIndexOf('\\'); if (index >= 0) { justFileName = uploadedFileName.substring( index + 1 ); } else { // No forward or back slashes justFileName = uploadedFileName; } } this.fileNameStaticText.setValue(justFileName); Long uploadedFileSize = new Long(uploadedFile.getSize()); this.fileSizeStaticText.setValue(uploadedFileSize); String uploadedFileType = uploadedFile.getContentType(); this.fileTypeStaticText.setValue(uploadedFileType); if ( uploadedFileType.equals("image/jpeg") || uploadedFileType.equals("image/pjpeg") || uploadedFileType.equals("image/gif") || uploadedFileType.equals("image/png") || uploadedFileType.equals("image/x-png")) { try { File file = new File(this.realImageFilePath); uploadedFile.write(file); } catch (Exception ex) { error("Cannot upload file: " + justFileName); } } else { error("You must upload a JPEG, PJPEG, GIF, PNG, or X-PNG file."); new File(this.realImageFilePath).delete(); } return null; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -