13
respostas

Syso não está aparecendo no console

Após subir o servidor, não está sendo escrito de 10 em 10 segs.

package br.com.bring.timer;

import javax.ejb.Schedule;
import javax.ejb.Singleton;
import javax.ejb.Startup;

@Singleton
@Startup
public class Agendador {
    @Schedule(hour="*",minute="*",second="*/10", persistent=false)
    void agendado () {
        System.out.println("VERIFICANDO");

    }

}
13 respostas

Olá, Daniel.

Qual servidor de aplicação você está usando?

Oi Daniel,

Já tentou usar a assinatura com cron?

@Scheduled(cron = "*/10 * * * * *")

Fonte: http://blog.alura.com.br/agendando-tarefas-com-scheduled-do-spring/

Avisa aí se deu certo.

Abraço.

Eu uso o Wildfly 8.0 como application.

Tentei por o Cron no annotation porém o java não entende o "cron"

Olá, Daniel e Rafael.

Essa @Scheduled, com o d no final, é do Spring: https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/scheduling/annotation/Scheduled.html

Como está a parte do <timer-service> na sua configuração?

Oi Alexandre

Eu fiz apenas esse código copiando da demonstração do curso. Será que é alguma configuração no Wildfly? ou o @Startup não está funcionando?

Pode ser configuração!

Como está o seu standalone.xml?

Aliás, é essa configuração que você está usando?

Eu não mexi no standalone.xml do Wildfly. O que especificamente preciso ver la?

Não tem muito segredo.

Deveria estar tipo assim:

            <timer-service thread-pool-name="default" default-data-store="default-file-store">
                <data-stores>
                    <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/>
                </data-stores>
            </timer-service>

Hm entendi. Ele está assim:

<timer-service thread-pool-name="default" default-data-store="default-file-store">
    <data-stores>
        <file-data-store name="default-file-store" relative-to="jboss.server.data.dir" path="timer-service-data"/>
    </data-stores>
</timer-service>

Igualzinho!

Faz o seguinte. Vá no standalone/data e apague o diretório timer-service-data.

Quem sabe! :)

Nada ;(

Não é possível que vou ter que usar outra aplicação haha

Ih! Muito estranho mesmo... :(

Valeu Alexandre,

Nem reparei que um era Schedule e o outro Scheduled.

Qual erro ocorre, Daniel?

Além de não imprimir, aparece algo na saída do console do servidor de aplicação?