Алгоритм PSHA1 не реализован в Crypto Library, но есть пакет PSHA1
npm, который можно использовать для генерации секретного ключа. После этого вы можете сгенерировать хеш SHA1 стандартным способом, используя сообщение и ключ.
Я задал очень похожий вопрос, который отвечает на вопрос: https://stackoverflow.com/a/55053741/5065447
ИМХО, вы получите сгенерированное имя региона для вашего класса. Это сгенерированное имя "persistence.unit: unitName = pz2EAR.ear / pz2EJB.jar # pz2EJB.pl.bdsdev.seps.encje.Kierunek". И это не определено в вашей конфигурации ehcache.xml. Также он ищет предопределенное имя, поэтому он не может использовать регион по умолчанию.
В качестве опции для решения этой проблемы вы можете использовать свойства аннотации @Cache для предопределения имени региона, например,
@Cache(region = 'Kierunek', usage = CacheConcurrencyStrategy.READ_WRITE)
public class Kierunek implements Serializable {
// ....
}
И в ehcache.xml
<cache name="Kierunek"
maxElementsInMemory="1000"
eternal="true"
overflowToDisk="false"
memoryStoreEvictionPolicy="LRU" />
EHCache нужна конфигурация, которая сообщает ему, как кэшировать объекты в вашем приложении (время жизни, тип кэша, размер кэша, поведение кэширования и т. д.). Для каждого класса, который вы пытаетесь кэшировать, он будет пытаться найти подходящую конфигурацию кэша и напечатает ошибку выше, если это не удастся сделать.
См. http://ehcache.sourceforge.net/documentation/configuration.html для получения информации о настройке EHCache.