Java.Lang.Object,无法转换为 Backed.Bean

标签 java classcastexception

我正在创建一个 native 查询并获​​取结果列表,我想在标签中显示它,但收到错误

private void requestsButtonClicked() {
  try {
    String l_query = "";
    l_query = "SELECT * from tablename";
    Controller controller = new Controller(ui.getDbConnection());
    List<RequestBean> l_list = l_ric.getNativeQueryResult(l_query, RequestBean.class);
    m_requestResultNumber.setCaption(l_list.size() + "");
  } catch (Exception e) {
    m_logger.error("CATCH", e);
    org.ids.geoais.common.Process.showErrorMessage(m_RefGeoAISui, e);
  }
}

这是原生查询的方法

public <T> List<T> getNativeQueryResult(String p_query, Class<T> p_class) throws Exception {
  m_logger.debug("BaseController::getNativeQueryResult()");
  // TODO Auto-generated method stub
  m_logger.debug("SQL = " + p_query);
  List<T> l_returnList = new ArrayList<T>();
  EntityManager l_em = m_connectionInstance.getEntityManager();
  Query l_query = l_em.createNativeQuery(p_query);
  for (Object l_obj : l_query.getResultList()) {
    if (null != l_obj) {
      if (p_class.isAssignableFrom(l_obj.getClass())) {
        l_returnList.add(p_class.cast(l_obj));
      } else {
        m_logger.warn("Cannot cast the object of type " + l_obj.getClass().getName() + " to object of type " + p_class.getName());
      }
    } else {
      m_logger.warn("Search object in get query result is NULL");
    }
  }
  return l_returnList;
}

Error: [2016-04-06 11:51:38,406] - WARN - (db.BaseController) - Cannot cast the object of type [Ljava.lang.Object; to object of type backend.bean [2016-04-06 11:51:38,406] - WARN - (db.BaseController) - Cannot cast the object of type [Ljava.lang.Object; to object of type backend.bean [2016-04-06 11:51:38,406] - WARN - (db.BaseController) - Cannot cast the object of type [Ljava.lang.Object; to object of type backend.bean

最佳答案

您似乎在此调用中省略了实体类型:

Query l_query = l_em.createNativeQuery(p_query);

尝试使用

Query l_query = l_em.createNativeQuery(p_query, p_class);

关于Java.Lang.Object,无法转换为 Backed.Bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36443244/

相关文章:

java - 在java游戏中使用音效

java - 使用 nginx 服务器作为 glassfish 服务器的代理来加载静态内容

java - 单元测试断言 TreeMap 中的对象顺序正确?

java.lang.ClassCastException : org. apache.xerces.jaxp.SAXParserFactoryImpl 与 javax.xml.parsers.SAXParserFactory 不兼容

java - java中的ClassCastException和奇怪的编译问题

android - ClassCastException - Parcelable 对象/自定义对象

javas内存使用无法释放

java - 如何在Java中创建通用数组?

javascript - 如何从 Android Java 中无延迟地调用 WebView Javascript 中的函数?

android - FrameLayout 无法转换为 TextView,奇怪的 ClassCastException