Я пытаюсь использовать java.security.MessageDigest с пружиной, вот так.
Определение бина ...
<spring:bean id="messageDigest" name="messageDigest" class="java.security.MessageDigest" factory-method="getInstance">
<spring:constructor-arg value="${hash.algorithm}"/>
</spring:bean>
И это я использую бин ...
<invoke name="invokeMessageDigestDigest" object-ref="messageDigest" method="digest" methodArguments="#[flowVars.myCustomTextOne]" methodArgumentTypes="byte[]" />
Это работает для меня.
Проблема в том, как только я пытаюсь использовать это где-то еще в моем приложении, как это ....
<invoke name="invokeMessageDigestDigest" object-ref="messageDigest" method="digest" methodArguments="#[flowVars.myCustomTextTwo]" methodArgumentTypes="byte[]" />
Я понял ...
Failed to instantiate [java.security.MessageDigest]: Factory method 'getInstance' threw exception; nested exception is java.security.NoSuchAlgorithmException: SHA256 MessageDigest not available
Я попытался добавить магию к определению bean-компонента, используя scope = prototype, потому что я думал, что это может быть что-то смешное в создании экземпляра bean-компонента, но это не решило проблему.
Кто-нибудь может пролить свет на это для меня?
заранее спасибо