У нас есть проект на spring-boot версии 1.5.2.RELEASE.
Нам нужно работать с именованными запросами в спящем режиме в xml (Именованные запросы в аннотации java для нас не вариант).
Для этого мы добавили все наши hbm.xml
файлы (которые содержат эти именованные запросы) в каталог src/main/resources
.
Это не проблема, когда наше приложение работает. Именованные запросы получаются правильно.
Однако, когда мы пишем тестовые примеры интеграции, он не может распознавать именованные запросы.
Мы получаем:
Именованный запрос не найден, исключение
Ниже приведен код нашего тестового примера:
@RunWith(SpringRunner.class)
@SpringBootTest( webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class MyIntegrationTest {
@Autowired
private TestRestTemplate template;
@Test
public void checkRestService() throws Exception {
ResponseEntity<String> response = template.getForEntity("/hello/1", String.class);
assertTrue(response.getStatusCodeValue() == 200);
}
}
Если мы скопируем файлы hbm.xml
в src/test/resources directory
, файлы hbm.xml
будут правильно подобраны, и тест будет выполнен правильно.
В любом случае, файлы xml берутся прямо из папки src/main/resouces
, и нам не нужно копировать эти файлы?