Java 设置/配置EJB计时器服务’;s数据源
我正在尝试在我的应用程序中使用EJB3.1中的计时器服务Java 设置/配置EJB计时器服务’;s数据源,java,jakarta-ee,glassfish,ejb-3.1,Java,Jakarta Ee,Glassfish,Ejb 3.1,我正在尝试在我的应用程序中使用EJB3.1中的计时器服务 @Stateless @LocalBean public class StatelessTimerSessionBean { @Schedule(minute = "*", second = "0", dayOfMonth = "*", month = "*", year = "*", hour = "9-17", dayOfWeek = "Mon-Fri") public void myTimer() {
@Stateless
@LocalBean
public class StatelessTimerSessionBean {
@Schedule(minute = "*", second = "0", dayOfMonth = "*", month = "*", year = "*", hour = "9-17", dayOfWeek = "Mon-Fri")
public void myTimer() {
System.out.println("Timer event: " + new Date());
}
}
“。将EJB计时器服务的计时器数据源设置设置为有效的JDBC资源…”
从
我不知道如何正确配置计时器数据源
部署时出现的错误是:
SEVERE: Exception while invoking class org.glassfish.ejb.startup.EjbApplication start method
java.lang.RuntimeException: EJB Timer Service is not available
运行:glassfish-3.1.2.2听起来glassfish-3.1.2.2不支持EJB3,请尝试使用jboss7 1。数据库设置示例
{GF_HOME}/glassfish/lib/install/databases/ejbtimer{DB_ENGINE}.sql创建表
创建表EJB\uuuu计时器\uuuu TBL(
`CREATIONTIMERAW`BIGINT不为空,
`一滴一滴,
`TIMERID`VARCHAR(255)不为空,
`CONTAINERID`BIGINT不为空,
`OWNERID`VARCHAR(255)NULL,
`状态`整数不为空,
`PKHASHCODE`整数不为空,
`INTERVALDURATION`BIGINT不为空,
`INITIALEXPIRATIONRAW`BIGINT不为空,
`LASTEXPIRATIONRAW`BIGINT不为空,
`附表'VARCHAR(255)空,
`APPLICATIONID`BIGINT不为空,
约束'PK\u EJB\uuu TIMER\uu TBL'主键('TIMERID`)
);
2.服务器配置
http://localhost:4848
发布日期:2015年3月8日出于好奇,设置非持久计时器是否有效@计划(second=“/5”,minute=“”,hour=“*”,persistent=false)它不起作用。我刚解决了,我要写答案了。
...
INFO: [TimerBeanContainer] Created TimerBeanContainer: TimerBean
INFO: EJB5181:Portable JNDI names for EJB TimerBean: [java:global/ejb-timer-service-app/TimerBean, java:global/ejb-timer-service-app/TimerBean!com.sun.ejb.containers.TimerLocal]
INFO: WEB0671: Loading application [ejb-timer-service-app] at [/ejb-timer-service-app]
INFO: EJB5109:EJB Timer Service started successfully for data source [mysql-pu]
INFO: Setting DBReadBeforeTimeout to false
INFO: ==> Restoring Timers ...
INFO: There are no EJB Timers owned by this server
INFO: <== ... Timers Restored.
...
Severe: Exception while loading the app
Severe: Undeployment failed for context /ejb-timer-service-app
Warning: Cannot deploy or load EJBTimerService: org.glassfish.deployment.common.DeploymentException: Error in linking security policy for ejb-timer-service-app -- Inconsistent Module State