2015-06-16 5 views
0

Здравствуйте, даже после того, как я просмотрел переполнение стека и другие сайты, которые мне еще предстоит решить. Я думаю, что это проблема конфигурации, но файлы persistence.xml и tomee.xml кажутся совершенно прекрасными.jpa getresultslist column index exception

Проблема, как представляется, эта линия:

returnList = mapToDtoList(getEntityManager().createNativeQuery("SELECT * FROM map_category_content_type", entityClass).getResultList()); 

Это порождает «индекс столбца из диапазона исключения 0 < 1» В большинстве случаев это происходит из-за странствующий индекс. Но в моем случае, поскольку я никогда не ссылаюсь на индекс напрямую («волшебство» должно делать это для меня), я могу только обвинить любую конфигурацию или getResultList().

Я ударил кирпичную стену.

Вот исключение и контекст. * Я не разрешается размещать изображения (не хватает «очков репутации»), но я могу заверить вас, что стек трассировки идентичны найденные здесь: Getting column index out of range, 0 < 1

persistence.java код:

@Stateless 
    @TransactionAttribute(TransactionAttributeType.REQUIRED) 
    public class CategoriesAndContentTypesMapPersistence extends AbstractPersistenceService<CategoriesAndContentTypesMap, CategoriesAndContentTypesMapDto, Integer> { 

    public List<CategoriesAndContentTypesMapDto> getCategoriesAndContentTypes() { 

List<CategoriesAndContentTypesMapDto> returnList; 


try { 
    returnList = mapToDtoList(getEntityManager().createNativeQuery("SELECT * FROM map_category_content_type", entityClass).getResultList()); 
} catch (Exception e) { 
    System.out.println("---> "+e); 
    throw new PersistenceException(e, this.getClass()); 
} 
return returnList; 

}

}

код вызывающего абонента:

@Inject 
private CategoriesAndContentTypesMapPersistence catContPersistence; 
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

    int categoryID   = 0; 
    String categoryName = ""; 
    int categorySortOrder = 0; 
    int contentTypeID  = 0; 
    String contentTypeName = ""; 
    int contentTypeSortOrder = 0; 
    int contentTypeRequired = 0; 
    int contentTypeVisibility = 0; 

    Map<Integer, String> categoriesContentTypes = new LinkedHashMap<Integer, String>(); 
    List<CategoriesAndContentTypesMapDto> dbCatsConts = catContPersistence.getCategoriesAndContentTypes();  

    for (CategoriesAndContentTypesMapDto catCotItem : dbCatsConts) { 
    categoryID = catCotItem.getCategoryId(); 
    categoryName = catCotItem.getCategoryName();  
    categorySortOrder = catCotItem.getCategorySortOrder(); 
    contentTypeID  = catCotItem.getContentTypeId(); 
    contentTypeName = catCotItem.getContentTypeName(); 
    contentTypeSortOrder = catCotItem.getContentTypeSortOrder(); 
    contentTypeRequired = catCotItem.getContentTypeRequired(); 
    contentTypeVisibility = catCotItem.getContentTypeVisible(); 

Я подозреваю, что моя проблема в этом заключается: Getting column index out of range, 0 < 1 но файлы conf выглядят прекрасно и работают.

Любые советы приветствуются.

+1

Почему вы используете собственный запрос вместо использования запроса JPQL? Какова полная трассировка стека исключения? –

+0

Я нахожу JPQL немного ... кратким. Если я не буду «использовать» его, я полностью его избегу. – JBL

ответ

0

Nevermind. У меня не было «управляемого bean» среди других архитектурных EJB/JSF/... предметов первой необходимости. Спасибо всем!