upgraded dependencies
This commit is contained in:
parent
405aa64926
commit
44556dc57d
6 changed files with 50 additions and 65 deletions
|
|
@ -29,25 +29,25 @@
|
|||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-server</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-json</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-client</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-atom</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
|
|
|||
|
|
@ -202,17 +202,17 @@
|
|||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-core</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-server</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-json</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
|
|
@ -222,7 +222,7 @@
|
|||
<dependency>
|
||||
<groupId>com.sun.jersey.contribs</groupId>
|
||||
<artifactId>jersey-scala</artifactId>
|
||||
<version>1.1.2-ea-SNAPSHOT</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.atmosphere</groupId>
|
||||
|
|
|
|||
|
|
@ -14,10 +14,10 @@ import com.sun.jersey.spi.container.WebApplication
|
|||
import javax.servlet.{ServletConfig}
|
||||
import javax.servlet.http.{HttpServletRequest, HttpServletResponse}
|
||||
|
||||
import org.atmosphere.cpr.{AtmosphereServletProcessor, AtmosphereEvent}
|
||||
import org.atmosphere.cpr.{AtmosphereServletProcessor, AtmosphereResource, AtmosphereResourceEvent}
|
||||
import org.atmosphere.cpr.AtmosphereServlet.AtmosphereHandlerWrapper
|
||||
import org.atmosphere.container.GrizzlyCometSupport
|
||||
import org.atmosphere.handler.ReflectorServletProcessor
|
||||
import org.atmosphere.handler.{ReflectorServletProcessor,AbstractReflectorAtmosphereHandler}
|
||||
import org.atmosphere.core.{JerseyBroadcaster}
|
||||
|
||||
import java.net.URLClassLoader
|
||||
|
|
@ -28,61 +28,46 @@ import scala.collection.jcl.Conversions._
|
|||
/**
|
||||
* @author <a href="http://jonasboner.com">Jonas Bonér</a>
|
||||
*/
|
||||
class AkkaServlet extends ServletContainer with AtmosphereServletProcessor with Logging {
|
||||
class AkkaServlet extends ServletContainer with Logging {
|
||||
|
||||
override def initiate(rc: ResourceConfig, wa: WebApplication) = {
|
||||
akka.Kernel.boot // will boot if not already booted by 'main'
|
||||
val configurators = ConfiguratorRepository.getConfigurators
|
||||
override def initiate(rc: ResourceConfig, wa: WebApplication) = {
|
||||
akka.Kernel.boot // will boot if not already booted by 'main'
|
||||
val configurators = ConfiguratorRepository.getConfigurators
|
||||
|
||||
rc.getClasses.addAll(configurators.flatMap(_.getComponentInterfaces))
|
||||
rc.getProperties.put("com.sun.jersey.spi.container.ResourceFilters", akka.Config.config.getString("akka.rest.filters").getOrElse(""))
|
||||
rc.getClasses.addAll(configurators.flatMap(_.getComponentInterfaces))
|
||||
rc.getProperties.put("com.sun.jersey.spi.container.ResourceFilters", akka.Config.config.getString("akka.rest.filters").getOrElse(""))
|
||||
|
||||
wa.initiate(rc, new ActorComponentProviderFactory(configurators))
|
||||
}
|
||||
|
||||
// Borrowed from AbstractReflectorAtmosphereHandler
|
||||
override def onMessage(event: AtmosphereEvent[HttpServletRequest, HttpServletResponse]): AtmosphereEvent[_, _] = {
|
||||
|
||||
val response = event.getResponse
|
||||
val data = if(event.getMessage ne null ) event.getMessage.toString else null
|
||||
val isUsingStream = try {
|
||||
response.getWriter
|
||||
false
|
||||
} catch { case e: IllegalStateException => true }
|
||||
|
||||
if (isUsingStream)
|
||||
{
|
||||
if (data != null)
|
||||
response.getOutputStream.write(data.getBytes)
|
||||
response.getOutputStream.flush
|
||||
wa.initiate(rc, new ActorComponentProviderFactory(configurators))
|
||||
}
|
||||
else
|
||||
{
|
||||
if (data != null)
|
||||
response.getWriter.write(data)
|
||||
response.getWriter.flush
|
||||
}
|
||||
|
||||
event
|
||||
}
|
||||
|
||||
override def onEvent(event: AtmosphereEvent[HttpServletRequest, HttpServletResponse]): AtmosphereEvent[_, _] = {
|
||||
event.getRequest.setAttribute(ReflectorServletProcessor.ATMOSPHERE_EVENT, event)
|
||||
event.getRequest.setAttribute(ReflectorServletProcessor.ATMOSPHERE_HANDLER, this)
|
||||
service(event.getRequest, event.getResponse)
|
||||
event
|
||||
}
|
||||
}
|
||||
|
||||
class AkkaCometServlet extends org.atmosphere.cpr.AtmosphereServlet {
|
||||
override def init(sconf: ServletConfig) = {
|
||||
val servlet = new AkkaServlet
|
||||
config = new AtmosphereConfig { ah = servlet }
|
||||
atmosphereHandlers.put("/*", new AtmosphereHandlerWrapper(servlet, new JerseyBroadcaster))
|
||||
setCometSupport(new GrizzlyCometSupport(config))
|
||||
getCometSupport.init(sconf)
|
||||
servlet.init(sconf)
|
||||
}
|
||||
override def init(sconf: ServletConfig) = {
|
||||
val servlet = new AkkaServlet with AtmosphereServletProcessor {
|
||||
|
||||
override def loadAtmosphereDotXml(is: InputStream, urlc: URLClassLoader) = () //Hide it
|
||||
//Delegate to implement the behavior for AtmosphereHandler
|
||||
private val handler = new AbstractReflectorAtmosphereHandler {
|
||||
override def onRequest(event: AtmosphereResource[HttpServletRequest, HttpServletResponse]) : Unit = {
|
||||
event.getRequest.setAttribute(ReflectorServletProcessor.ATMOSPHERE_RESOURCE, event)
|
||||
event.getRequest.setAttribute(ReflectorServletProcessor.ATMOSPHERE_HANDLER, this)
|
||||
service(event.getRequest, event.getResponse)
|
||||
}
|
||||
}
|
||||
|
||||
override def onStateChange(event : AtmosphereResourceEvent[HttpServletRequest, HttpServletResponse] ) {
|
||||
handler onStateChange event
|
||||
}
|
||||
|
||||
override def onRequest(resource: AtmosphereResource[HttpServletRequest, HttpServletResponse]) {
|
||||
handler onRequest resource
|
||||
}
|
||||
}
|
||||
config = new AtmosphereConfig { ah = servlet }
|
||||
atmosphereHandlers.put("/*", new AtmosphereHandlerWrapper(servlet, new JerseyBroadcaster))
|
||||
setCometSupport(new GrizzlyCometSupport(config))
|
||||
getCometSupport.init(sconf)
|
||||
servlet.init(sconf)
|
||||
}
|
||||
|
||||
override def loadAtmosphereDotXml(is: InputStream, urlc: URLClassLoader) = () //Hide it
|
||||
}
|
||||
|
|
|
|||
|
|
@ -37,17 +37,17 @@
|
|||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-core</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-server</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-json</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
|
|
@ -57,7 +57,7 @@
|
|||
<dependency>
|
||||
<groupId>com.sun.jersey.contribs</groupId>
|
||||
<artifactId>jersey-scala</artifactId>
|
||||
<version>1.1.2-ea-SNAPSHOT</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.atmosphere</groupId>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
<dependency>
|
||||
<groupId>com.sun.jersey</groupId>
|
||||
<artifactId>jersey-server</artifactId>
|
||||
<version>1.1.2-ea</version>
|
||||
<version>1.1.3-ea</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@
|
|||
service = on
|
||||
hostname = "localhost"
|
||||
port = 9998
|
||||
filters = "se.scalablesolutions.akka.security.AkkaSecurityFilterFactory;org.atmosphere.core.AtmosphereFilter"
|
||||
filters = "se.scalablesolutions.akka.security.AkkaSecurityFilterFactory"
|
||||
authenticator = "sample.secure.SimpleAuthenticationService"
|
||||
</rest>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue