1 | Allow application developer to concentrate on business logic, instead of systems details of distributed systems, transaction logic, database access, security, scalability and integration with existing systems. |
2 | Cross-platform capability - using Java means "write once run anywhere". |
3 | Logical extension of JavaBeans component programming. |
4 | Existing non-Java enterprise applications can be used as components. |
5 | Certain behaviors such as security and transactions should be set as properties of the component, instead of hand-programmed. |
6 |