В моей конфигурации сервлета Spring (назовем это service-servlet.xml
) я загружаю свойства из файла:
<util:properties id="ServiceProperties" location="classpath:service.properties" />
А потом позже автопроводка их в мой класс обслуживания:
@Value("#{ServiceProperties['my.property']}")
private Integer myProp;
Это работает нормально, и служба работает без проблем при развертывании под Glassfish.
Теперь я пишу тестовый класс для своего сервиса и запускаю его с SpringJUnit4ClassRunner:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({
"classpath:service-test-servlet.xml",
"classpath:service-test-context.xml"
})
public class ServiceTest {
// ...
}
Таким образом, в service-test-servlet.xml
, который является копией service-servlet.xml
с небольшими изменениями для среды тестирования, я включаю файл свойств таким же образом, но, похоже, он просто игнорируется ...
Во-первых, я подумал, что, возможно, мой файл не найден или около того, но потом, даже если я намеренно ввел неправильное имя - он просто игнорирует его и идет дальше со сбоями в какой-то более поздний момент, потому что нет имени компонента " ServiceProperties ", и он не может автоматически связать" myProp "в моем классе обслуживания ...
Является ли <util:properties>
полностью игнорируемым в среде JUnit?