Automation: by default, you do not have to give the compiler any hint as to whether code should be compiled towards the client, the server, the database, etc. The compiler solves all of this automatically, inserting whichever Ajax/Comet calls wherever needed. You can, however, provide annotations for optimization and/or security purposes.
Concurrency/distribution: at its heart, Opa is based on an actor model (although you do not need to use actors for simple applications). This actor model lets you connect easily clients, servers, etc. or subsystems through a very simple paradigm.
Security: every Ajax/Comet call inserted is checked for a number of criteria. In particular, the structure of messages is checked automatically, entry points generated dynamically for one single client can only be used by that client, etc.
Note: I'm one of the authors of Opa.