Skip to main content

Posts

Showing posts from October, 2013

Scala: get rid of not-null validations

Scala has been always known as a language which allows special handling of null  values. There is ton of articles regarding Some[T], None, Option[T] . What is most annoying code for me? Null validations, see usual example: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 class Entity { } class ServiceA { def method ( a : Entity , b : Entity , c : Entity , d : Entity ) = { Validate . notNull ( a ) Validate . notNull ( b ) Validate . notNull ( c ) Validate . notNull ( d ) } } class ServiceB ( val a : ServiceA ) { def method () = { a . method ( null , null , null , null ) } } When you start to write save code in the term of fails-as-fast-as-possible , your code, services or even domain model, will be weedy, you will find such boilerplate code at every method because you can't be sure which parameter supplied someone to you class or method. Unfortunately Scala has beautiful way how to achieve nice and

Tomcat 7 remote deployment

I decided to provide automatic deployment of war packaged application using Jenkins and Deployment plugin . The target platform is Amazon with Tomcat 7, see nice set of articles  to find out how to setup such environment for free. Well, there is couple of tutorials but they missing some points so it pushed me to lost one hour of my work. What I got Fresh installation of Tomcat 7 on remote machine with opened 8080 port on firewall Personal war file supposed to be deployed How to push it to tomcat? 1. First of all, there is simple configuration of tomcat users in file tomcat-users.xml  - it was my pain in the ass :-) As original comprehensive documentation says, it's necessary to define user, but which one(s)? Here is working example of tomcat-users.xml : <tomcat-users> <user username="manager-gui" password="changeit" roles="manager-gui"/> <user username="manager-script" password="changeit" roles