Да, вы можете использовать ehcache для этой цели, но тогда он все еще не «кэшируется» внутри EJB и остается в памяти узла, на котором работает сервер.
В EJB без состояния у вас есть только эта опция, тогда как в EJB с состоянием вы можете хранить данные в EJB (но иметь EJB с состоянием в течение такого длительного времени просто глупо), так что это не совсем альтернатива. 1003 *
Еще один подход заключается в статическом использовании некоторого держателя данных внутри EJB. Например. создать статическую карту, в которой хранятся данные или статический список. Конечно, это только для загрузчика классов, но пока класс не удален из загрузчика классов, статические данные остаются там. Это тогда действительно в памяти. Для обновления вы можете создать кварцевое задание, которое периодически обновляет данные внутри статического элемента.