Java Doc for SFileChooser.java in  » Swing-Library » wings3 » org » wings » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Swing Library » wings3 » org.wings 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.wings.SComponent
      org.wings.SFileChooser

SFileChooser
public class SFileChooser extends SComponent implements LowLevelEventListener,SParentFrameListener(Code)
Shows a textfield with a browse-button to enter a filename. The file is uploaded via HTTP and made accessible to the WingS application.

The uploaded file is stored temporarily in the filesystem of the server with a unique name, so that uploaded files with the same filename do not clash. You can access this internal name with the SFileChooser.getFileDir() and SFileChooser.getFileId() methods. The user provided filename can be queried with the SFileChooser.getFileName() method.

Since the file is stored temporarily in the filesystem, you should File.delete it, when you are done with it. However, if you don't delete the file yourself, it is eventually being removed by the Java garbage collector, if you haven't renamed it (see SFileChooser.getFile() ).

The form, you add this SFileChooser to, needs to have the encoding type multipart/form-data set (form. SForm.setEncodingType(String) setEncodingType("multipart/form-data") ). This is handled by the form. You can explicitly set it via the above method, though, in order to increase speed.

You can limit the size of files to be uploaded, so it is hard to make a denial-of-service (harddisk, bandwidth) attack from outside to your server. You can modify the maximum content length to be posted in org.wings.session.Session.setMaxContentLength(int) . This is 64 kByte by default, so you might want to change this in your application.

The SFileChooser notifies the form if something has gone wrong with uploading a file.

Szenario Files that are too big to be uploaded are blocked very early in the upload-process (if you are curious: this is done in org.wings.session.MultipartRequest ). At that time, only a partial input is read, the rest is discarded to thwart denial of service attacks. Since we read only part of the input, we cannot make sure, that all parameters are gathered from the input, thus we cannot just deliver the events contained, since they might be incomplete. However, the file chooser needs to be informed, that something went wrong as to present an error message to the user. So in that case, only one event is delivered to the enclosing form, that contains this SFileChooser.

Note, that in this case, this will not trigger the action listener that you might have added to the submit-button. This means, that you always should add your action listener to the SForm ( SForm.addActionListener(java.awt.event.ActionListener) ), not the submit button.
author:
   Holger Engels
author:
   Henner Zeller



Field Summary
protected  intcolumns
     maximum visible amount of characters in the file chooser.
protected  TempFilecurrentFile
     the temporary file created on upload.
protected  IOExceptionexception
     the temporary file created on upload.
protected  StringfileDir
    
protected  StringfileId
    
protected  StringfileName
    
protected  StringfileNameFilter
    
protected  StringfileType
    
protected  Classfilter
    

Constructor Summary
public  SFileChooser()
     Creates a new FileChooser.

Method Summary
public  voidfireIntermediateEvents()
    
public  intgetColumns()
     returns the number of visible columns.
public  FilegetFile()
     returns the file, that has been uploaded.
public  StringgetFileDir()
     Returns the name of the system directory, the file has been stored temporarily in.
public  StringgetFileId()
     Returns the internal ID of this file, that has been assigned at upload time.
public  StringgetFileName()
     Returns the filename, that has been given by the user in the upload text-field.
public  StringgetFileNameFilter()
     returns the current filename filter.
public  StringgetFileType()
     Returns the mime type of this file, if known.
final protected  SFormgetParentForm()
     Find the form, this FileChooser is embedded in.
public  FilegetSelectedFile()
     returns the file, that has been uploaded.
public  ClassgetUploadFilter()
    
public  FilterOutputStreamgetUploadFilterInstance()
    
public  booleanisEpochCheckEnabled()
    
final protected  voidnotifyParentForm()
     notifies the parent form, to fire action performed.
public  voidparentFrameAdded(SParentFrameEvent e)
    
public  voidparentFrameRemoved(SParentFrameEvent e)
    
public  voidprocessLowLevelEvent(String action, String[] values)
    
public  voidreset()
     resets this FileChooser (no file selected).
public  voidsetCG(FileChooserCG cg)
    
public  voidsetColumns(int c)
     Set the visible amount of columns in the textfield.
public  voidsetEpochCheckEnabled(boolean epochCheckEnabled)
    
public  voidsetFileNameFilter(String mimeFilter)
     Unlike the swing filechooser that allows to match certain file-suffices, this sets the mimetype to be accepted.
public  voidsetUploadFilter(Class filter)
     An FilterOutputStream, that filters incoming files.

Field Detail
columns
protected int columns(Code)
maximum visible amount of characters in the file chooser.



currentFile
protected TempFile currentFile(Code)
the temporary file created on upload. This file is automatically removed if and when it is not accessible anymore.



exception
protected IOException exception(Code)
the temporary file created on upload. This file is automatically removed if and when it is not accessible anymore.



fileDir
protected String fileDir(Code)



fileId
protected String fileId(Code)



fileName
protected String fileName(Code)



fileNameFilter
protected String fileNameFilter(Code)



fileType
protected String fileType(Code)



filter
protected Class filter(Code)




Constructor Detail
SFileChooser
public SFileChooser()(Code)
Creates a new FileChooser.




Method Detail
fireIntermediateEvents
public void fireIntermediateEvents()(Code)



getColumns
public int getColumns()(Code)
returns the number of visible columns. number of visible columns.



getFile
public File getFile() throws IOException(Code)
returns the file, that has been uploaded. Use this, to open and read from the file uploaded by the user. Don't use this method to query the actual filename given by the user, since this file wraps a system generated file with a different (unique) name. Use SFileChooser.getFileName() instead.

The file returned here will delete itself if you loose the reference to it and it is garbage collected to avoid filling up the filesystem (This doesn't mean, that you shouldn't be a good programmer and delete the file yourself, if you don't need it anymore :-). If you rename() the file to use it somewhere else, it is regarded not temporary anymore and thus will not be removed from the filesystem. a File to access the content of the uploaded file.
throws:
  IOException - if something went wrong with the upload (mostlikely, the maximum allowed filesize is exceeded, seeorg.wings.session.Session.setMaxContentLength(int))org.wings.SFileChooser.getSelectedFile




getFileDir
public String getFileDir() throws IOException(Code)
Returns the name of the system directory, the file has been stored temporarily in. You won't need this, unless you want to access the file directly. Don't store the value you receive here for use later, since the SFileChooser does its own garbage collecting of unused files. the pathname of the system directory, the file is stored in.
throws:
  IOException - if something went wrong with the upload (mostlikely, the maximum allowed filesize is exceeded, seeorg.wings.session.Session.setMaxContentLength(int))



getFileId
public String getFileId() throws IOException(Code)
Returns the internal ID of this file, that has been assigned at upload time. This ID is unique to prevent clashes with other uploaded files. You won't need this, unless you want to access the file directly. Don't store the value you receive here for later use, since the SFileChooser does its own garbage collecting of unused files. the internal, unique file id given to the uploaded file.
throws:
  IOException - if something went wrong with the upload (mostlikely, the maximum allowed filesize is exceeded, seeorg.wings.session.Session.setMaxContentLength(int))



getFileName
public String getFileName() throws IOException(Code)
Returns the filename, that has been given by the user in the upload text-field. the filename, given by the user.
throws:
  IOException - if something went wrong with the upload (mostlikely, the maximum allowed filesize is exceeded, seeorg.wings.session.Session.setMaxContentLength(int))



getFileNameFilter
public String getFileNameFilter()(Code)
returns the current filename filter. This is a mimetype-filter the current filename filter or 'null', if no filename filteris provided.
See Also:   SFileChooser.setFileNameFilter(String)



getFileType
public String getFileType() throws IOException(Code)
Returns the mime type of this file, if known. the mime type of this file.
throws:
  IOException - if something went wrong with the upload (mostlikely, the maximum allowed filesize is exceeded, seeorg.wings.session.Session.setMaxContentLength(int))



getParentForm
final protected SForm getParentForm()(Code)
Find the form, this FileChooser is embedded in.



getSelectedFile
public File getSelectedFile() throws IOException(Code)
returns the file, that has been uploaded. Use this, to open and read from the file uploaded by the user. Don't use this method to query the actual filename given by the user, since this file wraps a system generated file with a different (unique) name. Use SFileChooser.getFileName() instead.

The file returned here will delete itself if you loose the reference to it and it is garbage collected to avoid filling up the filesystem (This doesn't mean, that you shouldn't be a good programmer and delete the file yourself, if you don't need it anymore :-). If you rename() the file to use it somewhere else, it is regarded not temporary anymore and thus will not be removed from the filesystem. a File to access the content of the uploaded file.
throws:
  IOException - if something went wrong with the upload (mostlikely, the maximum allowed filesize is exceeded, seeorg.wings.session.Session.setMaxContentLength(int))




getUploadFilter
public Class getUploadFilter()(Code)
Returns the upload filter set in SFileChooser.setUploadFilter(Class)



getUploadFilterInstance
public FilterOutputStream getUploadFilterInstance()(Code)



isEpochCheckEnabled
public boolean isEpochCheckEnabled()(Code)

See Also:   LowLevelEventListener.isEpochCheckEnabled
See Also:   



notifyParentForm
final protected void notifyParentForm()(Code)
notifies the parent form, to fire action performed. This is necessary, if an exception in parsing a MultiPartRequest occurs, e.g. upload file is too big.



parentFrameAdded
public void parentFrameAdded(SParentFrameEvent e)(Code)



parentFrameRemoved
public void parentFrameRemoved(SParentFrameEvent e)(Code)



processLowLevelEvent
public void processLowLevelEvent(String action, String[] values)(Code)



reset
public void reset()(Code)
resets this FileChooser (no file selected). It does not remove an upload filter!. reset() will not remove a previously selected file from the local tmp disk space, so as long as you have a reference to such a file, you can still access it. If you don't have a reference to the file, it will automatically be removed when the file object is garbage collected.



setCG
public void setCG(FileChooserCG cg)(Code)



setColumns
public void setColumns(int c)(Code)
Set the visible amount of columns in the textfield.
Parameters:
  c - columns; '-1' sets the default that is browser dependent.



setEpochCheckEnabled
public void setEpochCheckEnabled(boolean epochCheckEnabled)(Code)

See Also:   LowLevelEventListener.isEpochCheckEnabled
See Also:   



setFileNameFilter
public void setFileNameFilter(String mimeFilter)(Code)
Unlike the swing filechooser that allows to match certain file-suffices, this sets the mimetype to be accepted. This filter may be fully qualified like text/html or can contain a wildcard in the subtype like text/ *. Some browsers may as well accept a file-suffix wildcard as well.

In any case, you hould check the result, since you cannot assume, that the browser actually does filter. Worse, browsers may not guess the correct type so users cannot upload a file even if it has the correct type. So, bottomline, it is generally a good idea to let the file name filter untouched, unless you know bugs of the browser at the other end of the wire...
Parameters:
  mimeFilter - the mime type to be filtered.




setUploadFilter
public void setUploadFilter(Class filter)(Code)
An FilterOutputStream, that filters incoming files. You can use UploadFilters to inspect the stream or rewrite it to some own format.
Parameters:
  filter - the Class that is instanciated to filter incomingfiles.



Fields inherited from org.wings.SComponent
final public static int DONE_RENDERING(Code)(Java Doc)
final public static Selector SELECTOR_ALL(Code)(Java Doc)
final public static int START_RENDERING(Code)(Java Doc)
final public static int WHEN_FOCUSED_OR_ANCESTOR_OF_FOCUSED_COMPONENT(Code)(Java Doc)
final public static int WHEN_IN_FOCUSED_FRAME(Code)(Java Doc)
protected Map<Selector, Style> dynamicStyles(Code)(Java Doc)
protected boolean enabled(Code)(Java Doc)
protected boolean visible(Code)(Java Doc)

Methods inherited from org.wings.SComponent
final public void addComponentListener(SComponentListener l)(Code)(Java Doc)
public void addDynamicStyle(Style style)(Code)(Java Doc)
final protected void addEventListener(Class<T> type, T listener)(Code)(Java Doc)
public void addNotify()(Code)(Java Doc)
final public void addParentFrameListener(SParentFrameListener l)(Code)(Java Doc)
final public void addRenderListener(SRenderListener renderListener)(Code)(Java Doc)
final public void addScriptListener(ScriptListener listener)(Code)(Java Doc)
public void addStyle(String additionalCssClassName)(Code)(Java Doc)
public Object clone()(Code)(Java Doc)
protected void fireComponentChangeEvent(SComponentEvent aEvent)(Code)(Java Doc)
public void fireFinalEvents()(Code)(Java Doc)
protected void fireKeyEvents()(Code)(Java Doc)
final public void fireRenderEvent(int type)(Code)(Java Doc)
public ActionMap getActionMap()(Code)(Java Doc)
public Color getBackground()(Code)(Java Doc)
public SBorder getBorder()(Code)(Java Doc)
public ComponentCG getCG()(Code)(Java Doc)
final public Object getClientProperty(Object key)(Code)(Java Doc)
public SPopupMenu getComponentPopupMenu()(Code)(Java Doc)
public Style getDynamicStyle(Selector selector)(Code)(Java Doc)
public Collection getDynamicStyles()(Code)(Java Doc)
public int getFocusTraversalIndex()(Code)(Java Doc)
public SFont getFont()(Code)(Java Doc)
public Color getForeground()(Code)(Java Doc)
public int getHorizontalAlignment()(Code)(Java Doc)
public InputMap getInputMap()(Code)(Java Doc)
public InputMap getInputMap(int condition)(Code)(Java Doc)
final protected int getListenerCount(Class type)(Code)(Java Doc)
final protected Object[] getListenerList()(Code)(Java Doc)
final public EventListener[] getListeners(Class<? extends EventListener> type)(Code)(Java Doc)
public String getLowLevelEventId()(Code)(Java Doc)
final public String getName()(Code)(Java Doc)
final public SContainer getParent()(Code)(Java Doc)
public SFrame getParentFrame()(Code)(Java Doc)
public SDimension getPreferredSize()(Code)(Java Doc)
public RequestURL getRequestURL()(Code)(Java Doc)
public boolean getResidesInForm()(Code)(Java Doc)
public List<ScriptListener> getScriptListenerList()(Code)(Java Doc)
public ScriptListener[] getScriptListeners()(Code)(Java Doc)
final public Session getSession()(Code)(Java Doc)
public boolean getShowAsFormComponent()(Code)(Java Doc)
public String getStyle()(Code)(Java Doc)
public String getToolTipText()(Code)(Java Doc)
public int getVerticalAlignment()(Code)(Java Doc)
public void invite(ComponentVisitor visitor) throws Exception(Code)(Java Doc)
protected static boolean isDifferent(Object oldObject, Object newObject)(Code)(Java Doc)
public boolean isEnabled()(Code)(Java Doc)
public boolean isFocusOwner()(Code)(Java Doc)
public boolean isRecursivelyVisible()(Code)(Java Doc)
public boolean isReloadForced()(Code)(Java Doc)
protected boolean isUpdatePossible()(Code)(Java Doc)
public boolean isVisible()(Code)(Java Doc)
protected String paramString()(Code)(Java Doc)
protected void processComponentEvent(SComponentListener listener, SComponentEvent e)(Code)(Java Doc)
protected boolean processKeyEvents(String[] values)(Code)(Java Doc)
protected void processLowLevelEvent(String name, String[] values)(Code)(Java Doc)
final public void putClientProperty(Object key, Object value)(Code)(Java Doc)
final void register()(Code)(Java Doc)
public void reload()(Code)(Java Doc)
final protected void reloadIfChange(Object oldVal, Object newVal)(Code)(Java Doc)
final protected void reloadIfChange(int oldVal, int newVal)(Code)(Java Doc)
final protected void reloadIfChange(boolean oldVal, boolean newVal)(Code)(Java Doc)
final protected void reloadIfChange(byte oldVal, byte newVal)(Code)(Java Doc)
final protected void reloadIfChange(short oldVal, short newVal)(Code)(Java Doc)
final protected void reloadIfChange(long oldVal, long newVal)(Code)(Java Doc)
final protected void reloadIfChange(float oldVal, float newVal)(Code)(Java Doc)
final protected void reloadIfChange(double oldVal, double newVal)(Code)(Java Doc)
final protected void reloadIfChange(char oldVal, char newVal)(Code)(Java Doc)
final public void removeComponentListener(SComponentListener l)(Code)(Java Doc)
public void removeDynamicStyle(Selector selector)(Code)(Java Doc)
final protected void removeEventListener(Class<T> type, T listener)(Code)(Java Doc)
public void removeNotify()(Code)(Java Doc)
final public void removeParentFrameListener(SParentFrameListener l)(Code)(Java Doc)
final public void removeRenderListener(SRenderListener renderListener)(Code)(Java Doc)
final public void removeScriptListener(ScriptListener listener)(Code)(Java Doc)
public void removeStyle(String cssStyleClassName)(Code)(Java Doc)
public void requestFocus()(Code)(Java Doc)
public void scrollRectToVisible(Rectangle aRect)(Code)(Java Doc)
public void setActionMap(ActionMap actionMap)(Code)(Java Doc)
public void setAttribute(String cssPropertyName, String value)(Code)(Java Doc)
public void setAttribute(CSSProperty property, String propertyValue)(Code)(Java Doc)
public void setAttribute(Selector selector, CSSProperty property, String propertyValue)(Code)(Java Doc)
public void setAttribute(Selector selector, CSSProperty property, SIcon icon)(Code)(Java Doc)
public void setAttribute(Selector selector, CSSProperty property, Color color)(Code)(Java Doc)
public void setAttributes(Selector selector, CSSAttributeSet attributes)(Code)(Java Doc)
public void setBackground(Color color)(Code)(Java Doc)
public void setBorder(SBorder border)(Code)(Java Doc)
public void setCG(ComponentCG newCG)(Code)(Java Doc)
public void setComponentPopupMenu(SPopupMenu popupMenu)(Code)(Java Doc)
public void setDynamicStyles(Collection dynamicStyles)(Code)(Java Doc)
public void setEnabled(boolean enabled)(Code)(Java Doc)
public void setFocusTraversalIndex(int index)(Code)(Java Doc)
public void setFont(SFont font)(Code)(Java Doc)
public void setForeground(Color color)(Code)(Java Doc)
public void setHorizontalAlignment(int alignment)(Code)(Java Doc)
public void setInputMap(InputMap inputMap)(Code)(Java Doc)
public void setInputMap(int condition, InputMap inputMap)(Code)(Java Doc)
public void setName(String uniqueName)(Code)(Java Doc)
public void setNameRaw(String uncheckedName)(Code)(Java Doc)
public void setParent(SContainer parent)(Code)(Java Doc)
protected void setParentFrame(SFrame parentFrame)(Code)(Java Doc)
public void setPreferredSize(SDimension preferredSize)(Code)(Java Doc)
public void setReloadForced(boolean forced)(Code)(Java Doc)
public void setShowAsFormComponent(boolean showAsFormComponent)(Code)(Java Doc)
public void setStyle(String cssClassName)(Code)(Java Doc)
public void setToolTipText(String t)(Code)(Java Doc)
public void setVerticalAlignment(int alignment)(Code)(Java Doc)
public void setVisible(boolean visible)(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final void unregister()(Code)(Java Doc)
public void update(Update update)(Code)(Java Doc)
public void updateCG()(Code)(Java Doc)
public void write(Device s) throws IOException(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.