J'ai la classe de configuration suivante
@org.springframework.context.annotation.Configuration
public class TemplateConfiguration {
@Bean
public Configuration configuration() {
Configuration configuration = new Configuration(new Version(2, 3, 23));
configuration.setClassForTemplateLoading(TemplateConfiguration.class, "/templates/");
configuration.setDefaultEncoding("UTF-8");
configuration.setLocale(Locale.US);
configuration.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
return configuration;
}
}
et je l'utilise au @service suivant
@Service
public class FreeMarkerService {
@Autowired
private Configuration configuration;
private static final Logger logger = LoggerFactory.getLogger(FreeMarkerService.class);
public String process() {
try {
Template template = configuration.getTemplate("someName");
....
} catch (IOException | TemplateException e) {
logger.error("Error while processing FreeMarker template: " + e);
throw new RuntimeException(e);
}
}
}
mais quand j'essaie d'appeler process() comme
FreeMarkerService f = new FreeMarkerService()
f.process()
J'obtiens une exception car l'objet de configuration est nul.
Je veux créer une instance en utilisant les annotations @Autowired et @Configuration. qu'est-ce que je fais de mal ?