Я использую Netbeans IDE 9.0 Glassfish 5.0 JDK 1.8.0_191 x64
Я также использую AES Cryptogtraphy для запросов / ответов на Glassfish. Когда я запускаю glassfish 5.0 из среды IDE Netbeans, код криптографии работает. При запуске одного только Glassfish 5.0 (asenv.exe) криптография выдает ошибку: Не удается найти провайдера, поддерживающего AES / CBC / PKCS5Padding
Перед обновлением до Glassfish 5 я использовал Glassfish 4.0, и криптография работала в обоих случаях(запускается один и внутри Netbeans).
Когда я запускаю glassfish 4.0 самостоятельно или внутри Netbeans, криптография работает нормально. В обоих случаях (glassfish 4.0, glassfish 5.0) мое приложение .war точно такое же.
Я запускаю Netbeans 5.0, glasssfish 5.0, glassfish 4.0 с тем же JDK (1.8.0_191 x64).
Я предполагаю, что некоторые библиотеки не поставляются в Glassfish 5.0, хотя я не смогнайти решение.
Код, который я использую для шифрования всех ответов в моем приложении glassfish:
cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
key = new SecretKeySpec(encryptionKey.getBytes("UTF-8"), "AES");
cipher.init(Cipher.ENCRYPT_MODE, key, new IvParameterSpec(iv.getBytes("UTF-8")));
enc1 = cipher.doFinal(in.toByteArray());
out.write(enc1);
encryptionKey и iv - 16-символьные строки (128-битные ключи).
Ошибка журнала, которую я получаю:
2019-10-31 13: 22: 46: 807 ОШИБКА Не удается найти любого поставщика, поддерживающего AES / CBC / PKCS5Padding
java.security.NoSuchAlgorithmException: не удается найтилюбой провайдер, поддерживающий AES / CBC / PKCS5Padding на
javax.crypto.Cipher.getInstance (Cipher.java:539)