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. |
Cross-platform capability - using Java means "write once run anywhere". |
Logical extension of JavaBeans component programming. |
Existing non-Java enterprise applications can be used as components. |
Certain behaviors such as security and transactions should be set as properties of the component, instead of hand-programmed. |