Notas de la version de Sun GlassFish Enterprise Server v3

Solución provisional

Asegúrese de que la datasource-classname especificada para la agrupación del temporizador representa una fuente de datos XA.

Pasos específicos de MySQL:

  1. Desempaquete glassfishv3/glassfish/lib/install/applications/ejb-timer-service-app.war .

  2. Agregue lo siguiente a WEB-INF/classes/__ejb_timer_mappings.xml después de <persistence-unit-metadata>:

    <persistence-unit-defaults>
    <delimited-identifiers/>
    </persistence-unit-defaults>
  3. Vuelva a empaquetar el archivo WEB-INF/classes/__ejb_timer_mappings.xml.

  4. (Este paso sólo es necesario si la instalación actual ya ha utilizado el servicio de temporizador EJB.) Cree manualmente el EJB__TIMER__TBL en la base de datos mediante esta instrucción de creación:

    CREATE TABLE `EJB__TIMER__TBL` (`TIMERID` VARCHAR(255) NOT NULL,
    `BLOB` BLOB(64000), `INITIALEXPIRATIONRAW` BIGINT, `SCHEDULE` VARCHAR(255),
    `INTERVALDURATION` BIGINT, `OWNERID` VARCHAR(255), `STATE` INTEGER,
    `LASTEXPIRATIONRAW` BIGINT, `PKHASHCODE` INTEGER, `CREATIONTIMERAW` BIGINT,
    `CONTAINERID` BIGINT, PRIMARY KEY (`TIMERID`))