1. Introducción
    1. Enterprise Java Beans
    2. Modelo de componentes distribuido
    3. Enterprise JavaBeans != JavaBeans
    4. Cuando usar EJB
      1. Escalable
      2. Transacciones con integridad de datos
      3. Variedad de clientes
    5. Versiones
      1. EJB 1.0
        1. Especificación original
      2. EJB 1.1
        1. La primera incluida dentro de J2EE
      3. EJB 2.0
        1. J2EE 1.3
        2. JSR 19
        3. Interfaces Locales
        4. Message-Driven beans
      4. EJB 2.1
        1. J2EE 1.4
        2. JSR 153
      5. EJB 3.0
        1. JavaEE 5
        2. JSR 220
        3. Anotaciones
      6. EJB 3.1
        1. JSR 318
    6. Características
      1. Comunicación remota
        1. CORBA
        2. RMI/IIOP
      2. Transacciones
        1. JTA
      3. Control de la concurrencia
      4. Eventos
        1. JMS
      5. Servicios de nombres y de directorio
        1. JNDI
      6. Ubicación de componentes
        1. JNDI
      7. Seguridad
        1. JCE
        2. JAAS
  2. Tipos
    1. Session Beans
      1. http://www.xmind.net/share/lshimokawa/javaee-session-beans/
    2. Entity Beans
      1. http://www.xmind.net/share/lshimokawa/javaee-persistencia/
    3. Message Driven Beans
      1. Características
        1. Se ejecutan al recibir un mensaje del cliente
        2. Asíncronos
        3. Short-lived.
        4. Transaction-aware.
        5. Stateless
      2. @MessageDriven
      3. onMessage Method
        1. The return type must be void.
        2. Single argument of type javax.jms.Message.
  3. Transacciones
    1. Introducción
      1. Integridad de datos
      2. Unidad de trabajo indivisible
      3. Termina en un commit o rollback
    2. Tipos
      1. Container-Managed Transactions
        1. EJB container sets the boundaries of the transactions
        2. Para session message-driven
        3. Transaction Scope
          1. Required: TransactionAttributeType.REQUIRED
          2. RequiresNew: TransactionAttributeType.REQUIRES_NEW
          3. Mandatory: TransactionAttributeType.MANDATORY
          4. NotSupported: TransactionAttributeType.NOT_SUPPORTED
          5. Supports: TransactionAttributeType.SUPPORTS
          6. Never: TransactionAttributeType.NEVER
        4. Rollback
          1. Unchecked exceptions
          2. setRollbackOnly
        5. No utilizar
          1. The commit, setAutoCommit, and rollback methods of java.sql.Connection
          2. The getUserTransaction method of javax.ejb.EJBContext
          3. Any method of javax.transaction.UserTransaction
      2. Bean-Managed Transactions
        1. javax.transaction.UserTransaction
          1. begin
          2. commit
          3. rollback
        2. No utilizar
          1. setRollbackOnly
          2. setRollbackOnly
  4. Seguridad
    1. Características
      1. Authentication
      2. Authorization
      3. Data integrity
      4. Confidentiality
      5. Non-repudiation
      6. Quality of Service (QoS)
      7. Auditing
    2. Mecanismos
      1. Java SE
        1. Java Authentication and Authorization Service (JAAS)
          1. Programmatic user authentication and authorization
        2. Java Generic Security Services (Java GSS-API)
          1. Token-based API
          2. Kerberos
        3. Java Cryptography Extension (JCE)
          1. Encryption
          2. Key generation and key agreement
          3. Message Authentication Code
        4. Java Secure Sockets Extension (JSSE)
          1. SSL and TLS protocols
          2. data encryption
          3. server authentication
          4. message integrity
          5. optional client authentication
        5. Simple Authentication and Security Layer (SASL)
      2. JavaEE
        1. Application-Layer Security
        2. Transport-Layer Security
        3. Message-Layer Security
    3. Application Server
      1. Usuarios
        1. Realm
        2. User
        3. Group
        4. Role
    4. EJB
      1. javax.ejb.EJBContext
        1. java.security.Principal getCallerPrincipal();
        2. boolean isCallerInRole(String roleName);
  5. Acerca de
    1. Topic
    2. Topic