Как установить значение свойства jndiname, используя Spring JndiObjectFactoryBean для tomcat7? Моя ценность свойства здесь - файл - PullRequest
0 голосов
/ 07 мая 2019

Я пытаюсь преобразовать веб-приложение, работающее в jboss5, в tomcat7.Мне нужно изменить конфигурацию JNDI для свойств метаданных для работы в Tomcat.Свойства метаданных настраиваются во внешнем файле свойств, и файл свойств необходимо загружать во время запуска приложения.

<bean id="propertyPlaceholder" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
        <list>                
            <bean class="org.springframework.core.io.FileSystemResource">
                <constructor-arg>
                    <bean class="org.springframework.jndi.JndiObjectFactoryBean">
                        <property name="jndiName" value="${CATALINA_HOME}/conf/metadata.properties" />                           
                    </bean>
                </constructor-arg>
            </bean>                
       </list>
    </property>
</bean>

Приложение должно загрузить значение свойства jndiName, но оно не работает.Выдает следующую ошибку:

Caused by: javax.naming.NameNotFoundException: Name [${CATALINA_HOME}/conf/metadata.properties] is not bound in this Context. Unable to find [${CATALINA_HOME}].

, тогда как та же конфигурация была задана для jboss.Вместо ${CATALINA_HOME} было дано "external/config/".

Можете ли вы, ребята, помочь мне, пропускаю ли я какую-либо другую конфигурацию для tomcat.

(Я также определил переменную окружения ${CATALINA_HOME} в файле catalina.sh, и другие файлы свойств загружены правильно. Даже если я приведу абсолютный путь, он показывает ту же ошибку.)

Caused by: javax.naming.NameNotFoundException: Name [root/user1/apache-tomcat-7.0.92/conf/metadata.properties] is not bound in this Context. Unable to find [root].
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...