Certifique-se de que o datasource-classname especificado para o conjuntos de timer represente um XA DataSource.
Etapas específicas do MySQL:
Descompacte glassfishv3/glassfish/lib/install/applications/ejb-timer-service-app.war .
Adicione o seguinte a WEB-INF/classes/__ejb_timer_mappings.xml depois de <persistence-unit-metadata>:
<persistence-unit-defaults> <delimited-identifiers/> </persistence-unit-defaults>
Compacte o arquivo WEB-INF/classes/__ejb_timer_mappings.xml novamente.
(Esta etapa é necessária somente se a instalação atual já usou o EJB Timer Service.) Crie manualmente o EJB__TIMER__TBL no banco de dados usando esta instrução de criação:
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`))