Ich habe den folgenden Code:EJB Timer Service nicht verfügbar ist, Undeployment fehlgeschlagen für Kontext
package ejbs;
import javax.annotation.Resource;
import javax.ejb.Singleton;
import javax.ejb.Timeout;
import javax.ejb.Timer;
import javax.ejb.TimerConfig;
import javax.ejb.TimerService;
@Singleton
public class timerbackup {
@Resource
private TimerService timerservice;
@Timeout
public void methodTimeout(Timer timer)
{
System.out.println("timeout");
}
public void settimer(long in)
{
Timer timer=timerservice.createSingleActionTimer(in,new TimerConfig());
}
}
Nach Bereitstellen der Anwendung erscheint die Fehlermeldung „EJB Timer Service ist nicht verfügbar“.
das Problem zu lösen ich diese Schritte folgen:
- Zugang der Glash Fisch Admin-Konsole (http://localhost:4848)
- Zum Konfigurationen ->server-config ->EJB Container
- Wählen Sie die Registerkarte EJB Timer Service
- Füllen Sie dann Timer-Datenquelle: mit JDBC-Ressource (i verwendet "jdbc/projecto_final")
- Restart der Server
Wie in Set/configure the EJB Timer Service’s DataSource vorgeschlagen.
Dies führte jedoch dazu, dass der TimerService nach einiger Zeit nicht mehr funktionierte. Nach dem Bereitstellen der Anwendung erscheint folgende Fehlermeldungen:
Severe: Exception while loading the app
Severe: Undeployment failed for context /ProjetoEE1
Info: /file:/E:/formacaoJAVA/2moduloJEE/pratica/projecto_final /projfinal2/ProjetoEE1/build/web/WEB-INF/classes/_DEFAULT_PU logout successful
Warning: EJB Timer Service is not available. Timers for application with id 96332697224871936 will not be deleted
Das Set/configure the EJB Timer Service’s DataSource auch dieses Problem erwähnen, und eine Lösung in Glassfish DeploymentException: Error in linking security policy for präsentieren.
Die Lösungen präsentiert in Glassfish DeploymentException: Error in linking security policy for besteht grundsätzlich darin, einige Dateien zu löschen. Die Antwort mehr gestimmt schlägt vor, im Grunde die folgenden:
- stoped den Glassfish Server
- von allen Inhalten Gelöschte glassfishhome/Glasfischen/domains/Domänenname/erzeugt
- Glassfish Gestartet
habe ich installiert der "GlassFish Server 4.1.1", und das funktioniert nicht.
Die zweite Antwort stimmte eher auf die im Grunde die folgenden:
1.All das ist erforderlich, um dieses Problem zu beheben, wird die gesamte OSGi-Cache unter $ löschen GLASSFISH_HOME/Glasfischen/domains // osgi-Cache
Das funktioniert auch nicht.
Was kann ich tun?Jede Hilfe wird sehr
Mit freundlichen Grüßen schätzen,
Rafael Costa
Ich denke, Timer sind sehr wichtig, wahrscheinlich haben viele Menschen das gleiche Problem, und sie wissen nicht, wie man es löst. –
Warum denkst du das? Zunächst sollten Sie beginnen, indem Sie Ihre Frage richtig markieren. Wo im Code, den du gepostet hast, siehst du 'jsf'? Ich würde vorschlagen, es ejb 'Tagging es scheint sehr stark GlassFish verwandt, also fügen Sie dieses Tag (und entfernen Sie die JSF-Tag) – Kukeltje
@Kukeltje Vielen Dank. –