Trait

skinny.controller.feature

FileUploadFeature

Related Doc: package feature

Permalink

trait FileUploadFeature extends FileUploadSupport

File upload feature.

When using file upload feature, we cannot use SkinnyController(= serlvet Filter) due to Servlet restriction.

// src/main/scala/controller/FileUploadController.scala

class FileUploadController extends SkinnyServlet with FileUploadFeature {
  def form = render("/fileUpload/form")
  def submit = {
    fileParams.get("file") match {
      case Some(file) => println(new String(file.get()))
      case None => println("file not found")
    }
  redirect(url(Controllers.fileUpload.formUrl))
}

// src/main/scala/controller/Controllers.scala

object fileUpload extends FileUploadController with Routes {
  val formUrl = get("/fileupload")(form).as('form)
  val submitUrl = post("/fileupload/submit")(submit).as('submit)
}
fileUpload.mount(ctx)
Self Type
FileUploadFeature with SkinnyEngineServlet
Linear Supertypes
FileUploadSupport, HasMultipartConfig, SkinnyEngineBase, SessionImplicits, DefaultImplicits, LowPriorityImplicits, LowestPriorityImplicits, engine.implicits.TypeConverterSupport, EngineParamsImplicits, CookiesImplicits, RouteMatcherImplicits, HaltPassControl, UrlGenerator, ResponseStatusAccessor, ResponseContentTypeAccessor, RequestFormatAccessor, ParamsAccessor, EnvironmentAccessor, ErrorHandlerAccessor, AsyncSupported, CoreHandler, Handler, logging.LoggerProvider, ServletContextAccessor, RicherStringImplicits, ServletApiImplicits, RouteRegistryAccessor, SkinnyEngineContextInitializer, Initializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. FileUploadFeature
  2. FileUploadSupport
  3. HasMultipartConfig
  4. SkinnyEngineBase
  5. SessionImplicits
  6. DefaultImplicits
  7. LowPriorityImplicits
  8. LowestPriorityImplicits
  9. TypeConverterSupport
  10. EngineParamsImplicits
  11. CookiesImplicits
  12. RouteMatcherImplicits
  13. HaltPassControl
  14. UrlGenerator
  15. ResponseStatusAccessor
  16. ResponseContentTypeAccessor
  17. RequestFormatAccessor
  18. ParamsAccessor
  19. EnvironmentAccessor
  20. ErrorHandlerAccessor
  21. AsyncSupported
  22. CoreHandler
  23. Handler
  24. LoggerProvider
  25. ServletContextAccessor
  26. RicherStringImplicits
  27. ServletApiImplicits
  28. RouteRegistryAccessor
  29. SkinnyEngineContextInitializer
  30. Initializable
  31. AnyRef
  32. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. trait Config extends AnyRef

    Permalink
    Definition Classes
    Initializable
  2. abstract type ConfigT <: AnyRef { ... /* 3 definitions in type refinement */ }

    Permalink
    Definition Classes
    ServletContextAccessor → Initializable
  3. sealed class TypedMultiParams extends AnyRef

    Permalink
    Definition Classes
    EngineParamsImplicits
  4. sealed class TypedParams extends AnyRef

    Permalink
    Definition Classes
    EngineParamsImplicits

Abstract Value Members

  1. abstract val doNotFound: Action

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  2. abstract def requestPath(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    SkinnyEngineBase
  3. abstract def routeBasePath(implicit ctx: SkinnyEngineContext): String

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. implicit val anyToBoolean: engine.implicits.TypeConverter[Any, Boolean]

    Permalink
    Definition Classes
    LowPriorityImplicits
  5. implicit val anyToByte: engine.implicits.TypeConverter[Any, Byte]

    Permalink
    Definition Classes
    LowPriorityImplicits
  6. implicit val anyToDouble: engine.implicits.TypeConverter[Any, Double]

    Permalink
    Definition Classes
    LowPriorityImplicits
  7. implicit val anyToFloat: engine.implicits.TypeConverter[Any, Float]

    Permalink
    Definition Classes
    LowPriorityImplicits
  8. implicit val anyToInt: engine.implicits.TypeConverter[Any, Int]

    Permalink
    Definition Classes
    LowPriorityImplicits
  9. implicit val anyToLong: engine.implicits.TypeConverter[Any, Long]

    Permalink
    Definition Classes
    LowPriorityImplicits
  10. implicit val anyToShort: engine.implicits.TypeConverter[Any, Short]

    Permalink
    Definition Classes
    LowPriorityImplicits
  11. implicit val anyToString: engine.implicits.TypeConverter[Any, String]

    Permalink
    Definition Classes
    LowPriorityImplicits
  12. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  13. implicit def booleanBlock2RouteMatcher(block: ⇒ Boolean): RouteMatcher

    Permalink
    Attributes
    protected
    Definition Classes
    RouteMatcherImplicits
  14. lazy val charset: Option[String]

    Permalink
    Definition Classes
    SkinnyEngineBase
  15. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. var config: (FileUploadFeature.this)#ConfigT

    Permalink
    Definition Classes
    ServletContextAccessor
  17. implicit def configWrapper(config: (FileUploadFeature.this)#ConfigT): (FileUploadFeature.this)#Config { object initParameters }

    Permalink
    Attributes
    protected
    Definition Classes
    ServletContextAccessor → Initializable
  18. def configureMultipartHandling(config: MultipartConfig): Unit

    Permalink
    Definition Classes
    HasMultipartConfig
  19. def contentType(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    ResponseContentTypeAccessor
  20. def contentTypeInferrer: ContentTypeInferrer

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  21. def contentType_=(contentType: String)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Definition Classes
    ResponseContentTypeAccessor
  22. def context: SkinnyEngineContext

    Permalink
    Definition Classes
    SkinnyEngineContextInitializer
  23. def contextPath: String

    Permalink
    Definition Classes
    ServletContextAccessor
  24. implicit def cookieOptions(implicit ctx: SkinnyEngineContext): CookieOptions

    Permalink
    Definition Classes
    CookiesImplicits
  25. def cookies(implicit ctx: SkinnyEngineContext): SweetCookies

    Permalink
    Definition Classes
    CookiesImplicits
  26. def currentErrorHandler: ErrorHandler

    Permalink
    Attributes
    protected
    Definition Classes
    ErrorHandlerAccessor
  27. val defaultCharacterEncoding: String

    Permalink
    Attributes
    protected
    Definition Classes
    CoreHandler
  28. implicit def defaultStringToSeq[T](implicit elementConverter: engine.implicits.TypeConverter[String, T], mf: Manifest[T]): engine.implicits.TypeConverter[String, Seq[T]]

    Permalink
    Definition Classes
    DefaultImplicits
  29. def detectTooManyErrorFilterRegistrationAsAnErrorAtSkinnyEngineBase: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    ErrorHandlerAccessor
  30. implicit def enrichRequest(request: HttpServletRequest): RichRequest

    Permalink
    Definition Classes
    ServletApiImplicits
  31. implicit def enrichResponse(response: HttpServletResponse): RichResponse

    Permalink
    Definition Classes
    ServletApiImplicits
  32. implicit def enrichServletContext(servletContext: javax.servlet.ServletContext): RichServletContext

    Permalink
    Definition Classes
    ServletApiImplicits
  33. implicit def enrichSession(session: HttpSession): RichHttpServletSession

    Permalink
    Definition Classes
    ServletApiImplicits
  34. def environment: String

    Permalink
    Definition Classes
    EnvironmentAccessor
  35. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  36. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  37. def error(handler: ErrorHandler): Unit

    Permalink
    Definition Classes
    ErrorHandlerAccessor
  38. def executeRoutes(request: HttpServletRequest, response: HttpServletResponse): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase → CoreHandler
  39. implicit def executionContext: ExecutionContext

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  40. def extractStatusCode(e: HaltException): Int

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  41. def fileMultiParams(key: String)(implicit ctx: SkinnyEngineContext): Seq[FileItem]

    Permalink
    Definition Classes
    FileUploadSupport
  42. def fileMultiParams(implicit ctx: SkinnyEngineContext): FileMultiParams

    Permalink
    Definition Classes
    FileUploadSupport
  43. def fileParams(key: String)(implicit ctx: SkinnyEngineContext): FileItem

    Permalink
    Definition Classes
    FileUploadSupport
  44. def fileParams(implicit ctx: SkinnyEngineContext): MultiMapHeadView[String, FileItem]

    Permalink
    Definition Classes
    FileUploadSupport
  45. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  46. def format_=(formatValue: String)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Definition Classes
    RequestFormatAccessor
  47. def fullUrl(path: String, params: Iterable[(String, Any)], includeContextPath: Boolean, includeServletPath: Boolean, withSessionId: Boolean)(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    UrlGenerator
  48. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  49. def halt(result: ActionResult): Nothing

    Permalink
    Definition Classes
    HaltPassControl
  50. def halt[T](status: Integer, body: T, headers: Map[String, String], reason: String)(implicit arg0: Manifest[T]): Nothing

    Permalink
    Definition Classes
    HaltPassControl
  51. def handle(req: HttpServletRequest, res: HttpServletResponse): Unit

    Permalink
    Definition Classes
    FileUploadSupport → CoreHandler → Handler
  52. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  53. def initParameter(name: String): Option[String]

    Permalink
    Definition Classes
    ServletContextAccessor
  54. def initialize(config: (FileUploadFeature.this)#ConfigT): Unit

    Permalink
    Definition Classes
    HasMultipartConfig → Initializable
  55. def invoke(matchedRoute: MatchedRoute): Option[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  56. def isAsyncExecutable(result: Any): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  57. def isDevelopmentMode: Boolean

    Permalink
    Definition Classes
    EnvironmentAccessor
  58. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  59. def isSizeConstraintException(e: Exception): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    FileUploadSupport
  60. def logger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    LoggerProvider
  61. def loggerName: String

    Permalink
    Attributes
    protected
    Definition Classes
    LoggerProvider
  62. implicit def lowestPriorityAny2T[T](implicit arg0: Manifest[T]): engine.implicits.TypeConverter[Any, T]

    Permalink
    Definition Classes
    LowestPriorityImplicits
  63. def methodNotAllowed(f: (Set[HttpMethod]) ⇒ Any): Unit

    Permalink
    Definition Classes
    SkinnyEngineBase
  64. def mount(ctx: javax.servlet.ServletContext): Unit

    Permalink
    Definition Classes
    Handler
  65. def multiParams(key: String)(implicit ctx: SkinnyEngineContext): Seq[String]

    Permalink
    Definition Classes
    ParamsAccessor
  66. def multiParams(implicit ctx: SkinnyEngineContext): engine.MultiParams

    Permalink
    Definition Classes
    ParamsAccessor
  67. def multipartConfig: MultipartConfig

    Permalink
    Definition Classes
    HasMultipartConfig
  68. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  69. def notFound(fun: ⇒ Any): Unit

    Permalink
    Definition Classes
    SkinnyEngineBase
  70. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  71. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  72. def params(implicit ctx: SkinnyEngineContext): engine.Params

    Permalink
    Definition Classes
    ParamsAccessor
  73. def params(key: Symbol)(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    ParamsAccessor
  74. def params(key: String)(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    ParamsAccessor
  75. def pass(): Nothing

    Permalink
    Definition Classes
    HaltPassControl
  76. implicit def pathPatternParser2RouteMatcher(pattern: PathPattern): RouteMatcher

    Permalink
    Attributes
    protected
    Definition Classes
    RouteMatcherImplicits
  77. def redirect(uri: String)(implicit ctx: SkinnyEngineContext): Nothing

    Permalink
    Definition Classes
    SkinnyEngineBase
  78. implicit def regex2RouteMatcher(regex: Regex): RouteMatcher

    Permalink
    Attributes
    protected
    Definition Classes
    RouteMatcherImplicits
  79. def relativeUrl(path: String, params: Iterable[(String, Any)], includeContextPath: Boolean, includeServletPath: Boolean)(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    UrlGenerator
  80. def removeRoute(method: String, route: Route): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  81. def removeRoute(method: HttpMethod, route: Route): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  82. def renderHaltException(e: HaltException)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  83. def renderPipeline(implicit ctx: SkinnyEngineContext): RenderPipeline

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  84. def renderResponse(actionResult: Any)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  85. def renderResponseBody(actionResult: Any)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  86. def renderUncaughtException(e: Throwable)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  87. def request(implicit ctx: SkinnyEngineContext): HttpServletRequest

    Permalink
    Definition Classes
    SkinnyEngineContextInitializer
  88. def respondTo: Seq[engine.Format]

    Permalink
    Attributes
    protected
    Definition Classes
    Handler
  89. def response(implicit ctx: SkinnyEngineContext): HttpServletResponse

    Permalink
    Definition Classes
    SkinnyEngineContextInitializer
  90. val routes: RouteRegistry

    Permalink
    Attributes
    protected
    Definition Classes
    RouteRegistryAccessor
  91. def runRoutes(routes: Traversable[Route]): Stream[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  92. implicit def safe[S, T](f: (S) ⇒ T): engine.implicits.TypeConverter[S, T]

    Permalink
    Definition Classes
    TypeConverterSupport
  93. implicit def safeOption[S, T](f: (S) ⇒ Option[T]): engine.implicits.TypeConverter[S, T]

    Permalink
    Definition Classes
    TypeConverterSupport
  94. implicit def seqHead[T](implicit elementConverter: engine.implicits.TypeConverter[String, T], mf: Manifest[T]): engine.implicits.TypeConverter[Seq[String], T]

    Permalink
    Definition Classes
    DefaultImplicits
  95. implicit def seqToSeq[T](implicit elementConverter: engine.implicits.TypeConverter[String, T], mf: Manifest[T]): engine.implicits.TypeConverter[Seq[String], Seq[T]]

    Permalink
    Definition Classes
    DefaultImplicits
  96. def serverAuthority(implicit ctx: SkinnyEngineContext): String

    Permalink
    Attributes
    protected
    Definition Classes
    ServletContextAccessor
  97. def serverHost(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    ServletContextAccessor
  98. def serverPort(implicit ctx: SkinnyEngineContext): Int

    Permalink
    Definition Classes
    ServletContextAccessor
  99. implicit def servletContext: javax.servlet.ServletContext

    Permalink
    Definition Classes
    ServletContextAccessor
  100. def session(key: Symbol)(implicit ctx: SkinnyEngineContext): Any

    Permalink
    Definition Classes
    SessionImplicits
  101. def session(key: String)(implicit ctx: SkinnyEngineContext): Any

    Permalink
    Definition Classes
    SessionImplicits
  102. implicit def session(implicit ctx: SkinnyEngineContext): HttpSession

    Permalink
    Definition Classes
    SessionImplicits
  103. def sessionOption(implicit ctx: SkinnyEngineContext): Option[HttpSession]

    Permalink
    Definition Classes
    SessionImplicits
  104. def setMultiparams[S](matchedRoute: Option[MatchedRoute], originalParams: engine.MultiParams)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase
  105. def shutdown(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Initializable
  106. def skinnyEngineContext(implicit ctx: javax.servlet.ServletContext): SkinnyEngineContext

    Permalink
    Definition Classes
    SkinnyEngineContextInitializer
  107. def status(implicit ctx: SkinnyEngineContext): Int

    Permalink
    Definition Classes
    ResponseStatusAccessor
  108. def status_=(code: Int)(implicit ctx: SkinnyEngineContext): Unit

    Permalink
    Definition Classes
    ResponseStatusAccessor
  109. implicit def string2RouteMatcher(path: String): RouteMatcher

    Permalink
    Attributes
    protected
    Definition Classes
    RouteMatcherImplicits
  110. implicit val stringToBoolean: engine.implicits.TypeConverter[String, Boolean]

    Permalink
    Definition Classes
    DefaultImplicits
  111. implicit val stringToByte: engine.implicits.TypeConverter[String, Byte]

    Permalink
    Definition Classes
    DefaultImplicits
  112. def stringToDate(format: ⇒ String): engine.implicits.TypeConverter[String, Date]

    Permalink
    Definition Classes
    DefaultImplicits
  113. def stringToDateFormat(format: ⇒ DateFormat): engine.implicits.TypeConverter[String, Date]

    Permalink
    Definition Classes
    DefaultImplicits
  114. implicit val stringToDouble: engine.implicits.TypeConverter[String, Double]

    Permalink
    Definition Classes
    DefaultImplicits
  115. implicit val stringToFloat: engine.implicits.TypeConverter[String, Float]

    Permalink
    Definition Classes
    DefaultImplicits
  116. implicit val stringToInt: engine.implicits.TypeConverter[String, Int]

    Permalink
    Definition Classes
    DefaultImplicits
  117. implicit val stringToLong: engine.implicits.TypeConverter[String, Long]

    Permalink
    Definition Classes
    DefaultImplicits
  118. implicit def stringToRicherString(s: String): RicherString

    Permalink
    Definition Classes
    RicherStringImplicits
  119. implicit val stringToSelf: engine.implicits.TypeConverter[String, String]

    Permalink
    Definition Classes
    DefaultImplicits
  120. def stringToSeq[T](elementConverter: engine.implicits.TypeConverter[String, T], separator: String)(implicit arg0: Manifest[T]): engine.implicits.TypeConverter[String, Seq[T]]

    Permalink
    Definition Classes
    DefaultImplicits
  121. implicit val stringToShort: engine.implicits.TypeConverter[String, Short]

    Permalink
    Definition Classes
    DefaultImplicits
  122. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  123. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  124. implicit def toTypedMultiParams(params: engine.MultiParams): (FileUploadFeature.this)#TypedMultiParams

    Permalink
    Definition Classes
    EngineParamsImplicits
  125. implicit def toTypedParams(params: engine.Params): (FileUploadFeature.this)#TypedParams

    Permalink
    Definition Classes
    EngineParamsImplicits
  126. def url(path: String, params: Iterable[(String, Any)], includeContextPath: Boolean, includeServletPath: Boolean, absolutize: Boolean, withSessionId: Boolean)(implicit ctx: SkinnyEngineContext): String

    Permalink
    Definition Classes
    UrlGenerator
  127. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  128. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  129. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  130. def withRequest[A](request: HttpServletRequest)(f: ⇒ A): A

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineContextInitializer
  131. def withRequestResponse[A](request: HttpServletRequest, response: HttpServletResponse)(f: ⇒ A): A

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineContextInitializer
  132. def withResponse[A](response: HttpServletResponse)(f: ⇒ A): A

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineContextInitializer
  133. def withRouteMultiParams[S](matchedRoute: Option[MatchedRoute])(thunk: ⇒ S): S

    Permalink
    Attributes
    protected
    Definition Classes
    SkinnyEngineBase

Inherited from FileUploadSupport

Inherited from HasMultipartConfig

Inherited from SkinnyEngineBase

Inherited from SessionImplicits

Inherited from DefaultImplicits

Inherited from LowPriorityImplicits

Inherited from LowestPriorityImplicits

Inherited from engine.implicits.TypeConverterSupport

Inherited from EngineParamsImplicits

Inherited from CookiesImplicits

Inherited from RouteMatcherImplicits

Inherited from HaltPassControl

Inherited from UrlGenerator

Inherited from ResponseStatusAccessor

Inherited from ResponseContentTypeAccessor

Inherited from RequestFormatAccessor

Inherited from ParamsAccessor

Inherited from EnvironmentAccessor

Inherited from ErrorHandlerAccessor

Inherited from AsyncSupported

Inherited from CoreHandler

Inherited from Handler

Inherited from logging.LoggerProvider

Inherited from ServletContextAccessor

Inherited from RicherStringImplicits

Inherited from ServletApiImplicits

Inherited from RouteRegistryAccessor

Inherited from SkinnyEngineContextInitializer

Inherited from Initializable

Inherited from AnyRef

Inherited from Any

Ungrouped