Best frameworks & tools to develop distributed and scalable java applications (web or not)
Following the [question][1] about best practices to develop distributed and scalable applications, I believe it is necessary to create this question to collect feedback on frameworks and tools too.

**Summarizing Contributions:**

I will update this question as contributions are made. The following is a first set of categories:

*Web Applications*

- Vaadin?

*Desktop Applications*

- NetBeans Platform?

*Data Structures & ORM*


*Databases & Replication*

- H2?

*Communication (between nodes and user)*

*Project Implementation*

- Maven? Ant?

*Programming, Modularization*

- OSGi?
- Guice?

*Testing & Coverage*

- Emma?
- Mockito?

*Documentation & Manuals*

*Security & Encryption*

- BouncyCastle?

*Monitoring & Logging*

- Log4J?

  [1]: http://stackoverflow.com/questions/5876661/best-practices-to-develop-distributed-and-scalable-java-applications-web-or-not
Best frameworks & tools to develop distributed and scalable java applications (web or not)
===

Following the [question][1] about best practices to develop distributed and scalable applications, I believe it is necessary to create this question to collect feedback on frameworks and tools too.

**Summarizing Contributions:**

I will update this question as contributions are made. The following is a first set of categories:

*Web Applications*

- Vaadin?

*Desktop Applications*

- NetBeans Platform?

*Data Structures & ORM*


*Databases & Replication*

- H2?

*Communication (between nodes and user)*

*Project Implementation*

- Maven? Ant?

*Programming, Modularization*

- OSGi?
- Guice?

*Testing & Coverage*

- Emma?
- Mockito?

*Documentation & Manuals*

*Security & Encryption*

- BouncyCastle?

*Monitoring & Logging*

- Log4J?

  [1]: http://stackoverflow.com/questions/5876661/best-practices-to-develop-distributed-and-scalable-java-applications-web-or-not