Class timertask

Fala galera, to com uma dúvida, meu método para chamar um dialogo usando o timertask ta dando erro.
ele é para fazer o seguinte, assim que o usuário se logar, ele chama esse metodo e de acordo com a data ele abre um dialogo, só que o system.out ele executa mas o executeScript do prime ele da erro, alguém sabe como resolver? se precisarem de mais algum código eu posto.

public void teste() {
	//TarefasBean tf = new TarefasBean();
	Calendar data = Calendar.getInstance();
	data.set(2018, 9, 07);
	
	
	final Timer t = new Timer();
	
	t.schedule(new TimerTask() {
		@Override
		public void run() {
			System.out.println("teste");
			PrimeFaces current = PrimeFaces.current();
			current.executeScript("PF('dlgNotificacao').show();");
			t.cancel();
			//execucao aqui 
		}
	}, data.getTime() );
	
}

erro:

Exception in thread “Timer-0” java.lang.NullPointerException
at org.primefaces.PrimeFaces.executeScript(PrimeFaces.java:82)
at br.stefanini.projetopausa.bean.NotificacoesBean$1.run(NotificacoesBean.java:30)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)

Aparentemente não tem erro nesse código testei aqui e funcionou normal sô desativeis as funções:

//PrimeFaces current = PrimeFaces.current();
//current.executeScript(“PF(‘dlgNotificacao’).show();”);