Posts

Showing posts from August, 2013

ADempiere: How To Use Scala For Customisations

Image
Scala is a viable alternative to Java. This guide shows how easy it is to develop ADempiere ERP customisations in Scala. Introduction Scala is becoming an increasingly popular language and for many companies/developers it's a superior alternative to Java. ADempiere open source ERP/CRM , is written in Java but since Scala runs on JVM and has very good Java interoperability, it's very easy to customise ADempiere with Scala. We'll see how it can be done. Prerequisites The only things you're going to need is ADempiere binaries.  You can either download them from SourceForge or build it directly from source with RUN_build (at the time of this writing 3.7.0LTS was the latest). JDK 1.6 Scala 2.10.x  (at the time of this writing 2.10.2 is the latest) SBT 0.12.x (at the time of this writing 0.12.4 is the latest) Project Template I have created a template project which is hosted on github to speed up things for people. First clone it: git clone https://github.com/bahm...

Grails: How To Secure Your Application Using Spring Security Core

Image
A step by step tutorial on how to use Spring Security Core to secure your Grails application. Introduction Any web-based application must have a mechanism for authenticating users and authorising them to do their defined activities in the system. One can go for the traditional approach of doing it with a login form; it works for the start. But on today's Internet, a classic pair of username and password is not always available as many people prefer to use a single OpenID, Twitter or Facebook account to access their data across different web sites. Also in corporate environments usually authentication and authorisation is done against an LDAP database. This is where Spring Security collection comes to play by allowing you to connect to a wide range of data sources and acquire access information from them instead of strong them yourself. At the heart of Spring Security lies Spring Security Core and as usual there's a Grails plugin for that! Let's see how we can use it. ...