Я показываю некоторые данные статистики как услугу REST с использованием Джерси. Я использую Weblogic@PostConstruct используется с Джерси 1.17, Weblogic
Однако каждый раз, когда я выполняю запрос на получение статистики System.out.println («In PostConstruct»); называется.
Это происходит, даже если я аннотируюсь рядом с дорогой @Stateless.
Это ведет себя как StorageService конкретизируется по каждому запросу (REQ области видимости)
Есть ли способ, чтобы Initialize вызывается только один раз и не создавать StorageService на каждом запросе?
@Path("/statistics")
public class StorageService {
@Context
private ServletContext application;
StatisticsStorage statisticsStorage;
@PostConstruct
public void initialize() {
System.out.println("In PostConstruct");
try {
statisticsStorage = new StatisticsStorage((String) application.getAttribute(AppProperties.PropKey.STATS_OUTPUT_PATH_PROP.toString()));
} catch (Exception sqle) {
sqle.printStackTrace();
}
}
@GET
// The Java method will produce content identified by the MIME Media type "text/plain"
@Produces({MediaType.APPLICATION_JSON})
public Domain getSnapshot() {}
Благодаря