0
即使在我仔細閱讀Stack Overflow和其他網站之後,我仍然沒有解決這個問題。我認爲這是一個配置問題,但persistence.xml和tomee.xml文件似乎都很好。jpa getresultslist列索引異常
問題似乎是這樣的線:
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文件看起來很好,並正在工作。
任何意見非常感謝。
爲什麼您使用本機查詢而不是使用JPQL查詢?什麼是異常的完整堆棧跟蹤? –
我覺得JPQL有點...簡潔。如果我不完全「必須」使用它,我會完全避免它。 – JBL