scala playframework servlet-filters playframework-2.3

scala - No puedo importar filtros en playframework 2.3.0



servlet-filters playframework-2.3 (3)

Yo uso playframework 2.3.0, recientemente quiero agregar el CSRFFilter

cuando importo csrf en global.scala:

import play.filters.csrf._

Me sale un error por esto:

[error] G: / testprojects / app / Global.scala: 7: object filters no es miembro de package play [error] import play.filters.csrf._

Mi plugin.sbt es

... // The Play plugin addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.0") ...

Yo uso Build.scala en lugar de build.sbt

lazy val root = Project("root", base = file(".")).enablePlugins(PlayScala) .settings(baseSettings: _*) .settings(libraryDependencies++=appDependencies) .settings( scalaVersion := "2.11.1", version := "1.0" )


De acuerdo con la documentación , debe agregar la dependencia de filtros a su proyecto:

libraryDependencies += filters

La documentación es para build.sbt pero supongo que debería funcionar también con Build.scala.


En Play 2.4.3, la importación es:

import play.filters.cors.CORSActionBuilder

Ya no se llama csrf , sino cors .


Play Framework GzipFilter está trabajando para mí,

mi archivo build.sbt

name := "GZIP" version := "1.0-SNAPSHOT" libraryDependencies ++= Seq( javaJdbc, javaEbean, cache, filters ) play.Project.playJavaSettings

steps to get play.filters package 1. play 2. update //important 3. clean 4. eclipse 5. compile 6. run

finalmente funcionará .... (el comando de actualización es importante) si IDE no detecta play.filters
hacer los pasos anteriores una vez más
finalmente copiar pegar debajo del código

import play.GlobalSettings; import play.api.mvc.EssentialFilter; import play.filters.gzip.GzipFilter; public class Global extends GlobalSettings { public <T extends EssentialFilter> Class<T>[] filters() { return new Class[]{GzipFilter.class}; } }