2014-01-24 66 views
0

Maven的Web應用程序部署我有一個JEE7 Maven的web應用程序,直到我把@Schedule註釋上我的EJB的一個運行良好。附表標註塊的Netbeans 7.4

此後,的NetBeans 7.4不想部署我的項目更多的使用與GlassFish服務器4.0。我只需對我的註釋行進行評論即可再次部署。

這裏是我的類的代碼:

package org.m2acsi.boundary; 

import javax.ejb.Schedule; 
import javax.ejb.Stateless; 

@Stateless 
public class Automaton { 

    @Schedule(second = "*/10", minute = "*", hour = "*") 
    public void everyDay() { 
     System.out.println("Test"); 
    } 
} 

這裏是例外,我得到:

Grave: Exception while loading the app 
Grave: Undeployment failed for context /FullStore 
Avertissement: EJB Timer Service is not available. Timers for application with id 91131533448380416 will not be deleted 
Infos: file:/C:/Sites/FullStore/target/FullStore-1.0-SNAPSHOT/WEB-INF/classes/_storePU logout successful 
Grave: Exception while loading the app : EJB Timer Service is not available 

編輯: 我試圖平的EJB計時器服務在GlassFish管理控制檯。它以失敗告終。這是我的阻礙點,但我不明白爲什麼或如何解決它。

+0

嘗試停止GlassFish並在glassfish4/glassfish/domains/domain1/lib/databases/ejbtimer中查找.lck文件。刪除它們並重新啓動。 –

+0

沒有這樣的目錄。我的「數據庫」目錄只包含mysql-connector-java-5.1.29-bin.jar – Florent

+0

然後我會檢查完整的server.log文件,看看定時服務失敗的原因。這個問題也可能是相關的。 http://stackoverflow.com/questions/13292473/set-configure-the-ejb-timer-services-datasource –

回答

0

EJB定時器服務不在Java EE 7 Web配置文件中,因此請確保在Project - > Properties中確定應用程序類型爲javaee-7,而不是javaee-7-web。

+0

一些同事正在使用JEE 7,它適用於他們。 – Florent