Я только начинаю работать со Spring (MVC, Webflow и т. Д.) И пытаюсь написать собственное небольшое веб-приложение.В качестве базы данных я использую Apache Derby, который я настроил с помощью плагинов Eclipse Database Developer.
Теперь моя проблема: каждый раз, когда я запускаю запросы через JDBCTemplate, я получаю исключение "Недопустимое состояние курсора" во время выполнения.Это запросы, которые работают, когда они проверяются вручную (или запрашивают базу данных через SQL Scrapbook.
Это мой самый простой метод DAO:
public List<Player> getAllPlayers() {
JdbcTemplate select = new JdbcTemplate(dataSource);
List<Player> result = select.query(
"SELECT ID , Name , TeamID " +
"FROM PLAYERS " , new PlayerExtractor());
return result;
}
И это соответствующий ResultSetExtractor:
@Override
public Object extractData(ResultSet rs) throws SQLException,
DataAccessException {
Player player = new Player();
player.setId(Integer.valueOf(rs.getString(1)));
player.setName(rs.getString(2));
TeamDAO t_dao = new TeamDAOImpl();
Team team = t_dao.getTeamByKey( Integer.valueOf(rs.getString(3)) );
player.setTeam(team);
return player;
}
Как только rs.getString (1) «недопустимое состояние курсора». В чем проблема? У меня такое ощущение, что это проблема конфигурации ..
Вот мойКонфигурация JDBC в моем ApplicationContext:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.apache.derby.jdbc.Driver169"/>
<property name="url" value="jdbc:derby:C:\Dokumente und Einstellungen\araptarc\MyDB"/>
<property name="username" value="APP"/>
<property name="password" value="test"/>
Есть идеи?
Спасибо!