ReactiveMongo, macros and NoSuchElementException: None.get

ReactiveMongo employs scala macros to generate readers(deserializers) and writers(serializers) for scala case classes. They work pretty good, but sometimes you can get a java.lang.NoSuchElementException with message None.get :( Let's say you have case class Person(fisrtName: String, lastName: String, age: Int) object readers { implicit val personReader = Macros.reader[Person] } and somewhere »

Akka: Stop Your Router Gracefully

Let's say you want to find an answer to Life, the Universe and Everything and you know it will take some time, so you want to do it in parralel while doing something else (DSE). You say to yourself "okay, I'll fire an actor and send him a message or bunch of messages, then DSE »

Debug an sbt plugin in IntelliJ IDEA

So you have your own sbt plugin (or someone's plugin if you are not so cool and sexy) and you want to debug it. It happens that there is nothing easier than that. If you run sbt through sbt-extras script (if you don't you should) just start your test sbt app with the plugin added »

Testing Security.Authenticated in Play 2.0 and 2.1

You have a Play application and let's say you want to add some simple authentication logic to restrict access to your actions. You want all your users to provide a ticket (e.g cas proxy ticket) in a request header, so you can use the ticket to authenticate them. Play's Security.Authenticated to the rescue! »

Camel and Scala 2.10

Camel and Scala is a good combination, but if you like to be on the bleeding edge and almost done converting your scala app to 2.10 you can find that camel still doesn't have a stable release supporting scala 2.10. So SNAPSHOT will do the trick in this case, but you know... it's »

Root Application Context in Play 2.1

So Play 2.1 is officialy out and one of the new features it brings is the ability to configure root application context. It have been in 2.1 branch for a long-long time and I don't see this mentioned in highlights section, but nevertheless it's there and it works. To assign a root context »