실패, 사용할 수없는 나는 다음과 같은 코드가 있습니다EJB 타이머 서비스가 배포 취소 문맥
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());
}
}
응용 프로그램을 배포 한 후 오류 메시지 "EJB 타이머 서비스를 사용할 수 없습니다"를 등장.
이 문제를 해결하기 위해 내가 다음 단계에 따라 : 구성에
- 에 액세스 glash 물고기 관리 콘솔 (http://localhost:4848)
- 이동 ->서버 설정 ->EJB 컨테이너
- 탭 선택 EJB 타이머 서비스
- 그리고 타이머 데이터 소스을 작성 : 당신의 JDBC 자원과 (내가 사용 "JDBC/projecto_final") Set/configure the EJB Timer Service’s DataSource에서 제안한 것처럼
- 다시 시작 서버
.
결과적으로 TimerService가 작동하지 않는 경우가 있습니다.
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
Set/configure the EJB Timer Service’s DataSource도이 문제를 언급하고, Glassfish DeploymentException: Error in linking security policy for에 해결책을 제시 : 응용 프로그램을 배포 한 후 다음과 같은 오류 메시지가 나타납니다.
Glassfish DeploymentException: Error in linking security policy for에 제공된 솔루션은 기본적으로 일부 파일을 삭제합니다.
- 생성
- 이/글래스 피쉬/도메인/yourdomainname glassfishhome에서 모든 컨텐츠를 삭제 글래스 피시 서버/중이 야
- 은 글래스 피시는
내가 설치 한 시작일 : 투표 더 대답은 기본적으로 다음 제안 "GlassFish Server 4.1.1"과 같이 작동하지 않습니다. 그 1. 모든
// OSGI 캐시
$ GLASSFISH_HOME/글래스 피쉬/도메인에서 전체 OSGi 프레임 캐시를 삭제되어이 문제를 해결하기 위해 필요한 :
더 투표 두 번째 대답은 기본적으로 다음을 제안한다 이것은 또한 작동하지 않습니다.
내가 할 수있는 일은 무엇입니까?어떤 도움은 매우 그것은 나를 위해 일한
import javax.inject.Singleton;
으로
import javax.ejb.Singleton;
를 교체
안부,
라파엘 코스타
저는 타이머가 매우 중요하다고 생각합니다. 많은 사람들이 똑같은 문제를 가지고있을 것이고, 해결 방법을 모르실 것입니다. –
왜 그렇게 생각하니? 먼저 질문에 올바르게 태그를 추가해야합니다. 코드를 게시 한 곳에서 'jsf'가 보입니까? 나는 그것을 'ejb'라고 태그하는 것이 좋습니다. 그리고 GlassFish와 관련하여 매우 강력하게 보이므로 해당 태그를 추가하십시오 (그리고 jsf 태그를 제거하십시오). – Kukeltje
@Kukeltje 대단히 고마워요. –