Добавление системного параметра и приложения в контексте Проблема - PullRequest
0 голосов
/ 09 декабря 2011

ПЕРВАЯ ЧАСТЬ: меня попросили добавить -DAPP_ENCRYPTION_PW = pw в мою команду запуска из-за файла свойств для хранения зашифрованного пароля БД вместо открытого текста? : S Так что я добавил это в JAVA_OPTS. Альтернатива -> Добавлен параметр в Catalina.sh. Пожалуйста, дайте мне знать, если я здесь не прав !!! Также предоставьте мне ответ с шагами относительно того, что делать !!!

ВТОРАЯ ЧАСТЬ: я развернул файл war в папке webapps (aapbase). Пытался запустить его через TomcatManager, но он выдает мне эту ошибку: application at context path could not be started ...

Кто-нибудь имеет какое-то представление о том, что здесь делать ??? К вашему сведению: используя кота 6 ... Я получаю эту ошибку при запуске в Tomcat 6.

ОШИБКА:

SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.NullPointerException
    at org.jasypt.encryption.pbe.config.SimplePBEConfig.getPasswordCharArray(SimplePBEConfig.java:434)
    at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.resolveConfigurationPassword(StandardPBEByteEncryptor.java:740)
    at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.initialize(StandardPBEByteEncryptor.java:590)
    at org.jasypt.encryption.pbe.StandardPBEStringEncryptor.initialize(StandardPBEStringEncryptor.java:570)
    at org.jasypt.encryption.pbe.StandardPBEStringEncryptor.decrypt(StandardPBEStringEncryptor.java:697)
    at org.jasypt.properties.PropertyValueEncryptionUtils.decrypt(PropertyValueEncryptionUtils.java:72)
    at org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer.convertPropertyValue(EncryptablePropertyPlaceholderConfigurer.java:108)
    at org.springframework.beans.factory.config.PropertyResourceConfigurer.convertProperty(PropertyResourceConfigurer.java:121)
    at org.springframework.beans.factory.config.PropertyResourceConfigurer.convertProperties(PropertyResourceConfigurer.java:104)
    at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:81)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:668)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:643)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:437)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:294)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:215)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
    at org.apache.catalina.core.StandardService.start(StandardService.java:525)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

Ответы [ 2 ]

0 голосов
/ 01 июня 2015

Хотя этот вопрос довольно старый, я столкнулся с тем же NPE при настройке jasypt 1.9.2 для mule.Убедитесь, что у вас настроено свойство passwordSysPropertyName org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig.Возможно, это должно решить проблему.

<spring:bean id="environmentVariablesConfiguration"
    class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
    <spring:property name="algorithm" value="PBEWithMD5AndDES" />
    <spring:property name="passwordSysPropertyName" value="MULE_ENCRYPTION_PASSWORD" />
</spring:bean>
0 голосов
/ 11 января 2012

Если вы используете пароль, заданный в системном свойстве JVM (с -D), вы должны использовать объект конфигурации EnvironmentPBEConfig или EnvironmentStringPBEConfig вместо объекта SimplePBEConfig, который вы, похоже, используете.

Этот EnvironmentPBEConfigобъект позволит вам установить имя системного свойства JVM, которое содержит пароль шифрования (setPasswordSysPropertyName ("APP_ENCRYPTION_PW")), и, следовательно, заставить jasypt правильно читать и использовать этот пароль.

Regards.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...