- metoda z @Transactional musi być publiczna
- wywołanie metody z @Transactional musi pochodzić 'z zewnątrz' (być zrealizowane na proxy springowym)
W przypadku aspectj te tematy nie mają zastosowania.
W przypadku aspectj te tematy nie mają zastosowania.
... bo nie może być wywoływany ręcznie.
Zlecenie jego wykonania musi pochodzić ze springa. Zadziała idealnie np. w kontrolerze.
Widać, że nie do końca: http://spring.io/blog/2010/01/05/task-scheduling-simplifications-in-spring-3-0/. Czyli wystarczy, że obiekt z metodą z @async jest wstrzyknięty.
Podczas próby logowania może się pojawiać przyjemny komunikat:
log4j:WARN Please initialize the log4j system properly
Próby przenoszenia pliku log4j.properties w różne miejsca nie dają efektu. Potencjalna przyczyna problemu? Błąd w pliku log4j.properties. Przykładowy, poprawny plik:
log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# Pattern to output the caller's file name and line number.
#Spring Framework
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.logger.org.springframework=INFO
log4j.logger.org.springframework.oxm=INFO
log4j.logger.org.springframework.transaction=WARN
lokalizacja: src/main/resources/log4j.properties