Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
MultipartResolver.java
Upload User: jiancairen
Upload Date: 2007-08-27
Package Size: 26458k
Code Size: 5k
Category:
Java Develop
Development Platform:
Java
- /*
- * Copyright 2002-2004 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- package org.springframework.web.multipart;
- import javax.servlet.http.HttpServletRequest;
- /**
- * Interface for multipart resolution strategies that handle file uploads as
- * defined in <a href="http://www.ietf.org/rfc/rfc1867.txt">RFC 1867</a>.
- * Implementations are typically usable both within any application context
- * and standalone.
- *
- * <p>There are two concrete implementations included in Spring:
- * <ul>
- * <li>CommonsMultipartResolver for Jakarta Commons FileUpload
- * <li>CosMultipartResolver for Jason Hunter's COS (com.oreilly.servlet)
- * </ul>
- *
- * <p>There is no default resolver implementation used for Spring DispatcherServlets,
- * as an application might choose to parse its multipart requests itself. To define
- * an implementation, create a bean with the id "multipartResolver" in a
- * DispatcherServlet's application context. Such a resolver gets applied to all
- * requests handled by that DispatcherServlet.
- *
- * <p>If a DispatcherServlet detects a multipart request, it will resolve it
- * via the configured MultipartResolver and pass on a wrapped HttpServletRequest.
- * Controllers can then cast their given request to the MultipartHttpServletRequest
- * interface, being able to access MultipartFiles. Note that this cast is only
- * supported in case of an actual multipart request.
- *
- * <pre>
- * ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) {
- * MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
- * MultipartFile multipartFile = multipartRequest.getFile("image");
- * ...
- * }</pre>
- *
- * <p>Instead of direct access, command respectively form controllers can register
- * a ByteArrayMultipartFileEditor or StringMultipartFileEditor with their data
- * binder, to automatically apply multipart content to command bean properties.
- *
- * <p>As an alternative to using a MultipartResolver with a DispatcherServlet,
- * a MultipartFilter can be registered in web.xml. It will delegate to a
- * corresponding MultipartResolver bean in the root application context.
- * This is mainly intended for applications that do not use Spring's own
- * web MVC framework.
- *
- * <p>Note: There is hardly ever a need to access the MultipartResolver itself
- * from application code. It will simply do its work behind the scenes,
- * making MultipartHttpServletRequests available to controllers.
- *
- * @author Juergen Hoeller
- * @author Trevor D. Cook
- * @since 29.9.2003
- * @see MultipartHttpServletRequest
- * @see MultipartFile
- * @see org.springframework.web.multipart.commons.CommonsMultipartResolver
- * @see org.springframework.web.multipart.cos.CosMultipartResolver
- * @see org.springframework.web.multipart.support.ByteArrayMultipartFileEditor
- * @see org.springframework.web.multipart.support.StringMultipartFileEditor
- * @see org.springframework.web.servlet.DispatcherServlet
- * @see org.springframework.web.servlet.support.RequestContextUtils#getMultipartResolver
- */
- public interface MultipartResolver {
- /**
- * Determine if the request contains multipart content.
- * <p>Will typically check for content type "multipart/form-data", but the actually
- * accepted requests might depend on the capabilities of the resolver implementation.
- * @param request the servlet request to be evaluated
- * @return whether the request contains multipart content
- */
- boolean isMultipart(HttpServletRequest request);
- /**
- * Parse the given HTTP request into multipart files and parameters,
- * and wrap the request inside a MultipartHttpServletRequest object
- * that provides access to file descriptors and makes contained
- * parameters accessible via the standard ServletRequest methods.
- * @param request the servlet request to wrap (must be of a multipart content type)
- * @return the wrapped servlet request
- * @throws MultipartException if the servlet request is not multipart, or if
- * implementation-specific problems are encountered (such as exceeding file size limits)
- * @see MultipartHttpServletRequest#getFile
- * @see MultipartHttpServletRequest#getFileNames
- * @see MultipartHttpServletRequest#getFileMap
- * @see javax.servlet.http.HttpServletRequest#getParameter
- * @see javax.servlet.http.HttpServletRequest#getParameterNames
- * @see javax.servlet.http.HttpServletRequest#getParameterMap
- */
- MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException;
- /**
- * Cleanup any resources used for the multipart handling,
- * like a storage for the uploaded files.
- * @param request the request to cleanup resources for
- */
- void cleanupMultipart(MultipartHttpServletRequest request);
- }