Я действительно застрял на этом ... Помогите! :)
Я использую j2ee: jndi lookup для файла свойств. Следующее работает отлично:
<bean class="org.springframework.core.io.FileSystemResource">
<constructor-arg>
<jee:jndi-lookup id="myProps" jndi-name="myProps" resource-ref="true" />
</constructor-arg>
</bean>
Однако я хочу обработать случай, когда поиск jndi завершится неудачно, но будет использоваться файл по умолчанию, расположенный в папке WEB-INF / classes. Если я использую значение по умолчанию, как показано ниже, веб-приложение выдает исключение, сообщающее, что оно не может найти файл "classpath: myprops.properties"
<bean class="org.springframework.core.io.FileSystemResource">
<constructor-arg>
<jee:jndi-lookup id="myProps" jndi-name="myProps" resource-ref="true"
default-value="classpath:myprops.properties" />
</constructor-arg>
</bean>
Однако, если я жестко закодирую конкретный путь для значения по умолчанию, то он работает нормально, но это не приемлемо в качестве окончательного решения.
Таким образом, моя проблема в том, как использовать «classpath:», чтобы он был правильно решен?
Это общее использование, которое я использую:
<bean id="authServerProperties"
class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="ignoreResourceNotFound" value="true"/>
<property name="location">
<bean class="org.springframework.core.io.FileSystemResource">
<constructor-arg>
<jee:jndi-lookup id="myProps" jndi-name="myProps" resource-ref="true"
default-value="classpath:myprops.properties" />
</constructor-arg>
</bean>
</property>
.....
</bean>