An exception in the stream "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be applied to model.AdminPopulate

I tried converting the List I got from Hibernate to the AdminPopulate type using the following code and I got this error

An exception in the stream "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be applied to model.AdminPopulate

public class Test
{
public static void main(String[] args)
{
     SubUser subUser=new SubUser();        

     List subUserList=subUser.getSubUserAll();

     List<AdminPopulate> subUserListAdminPop=new ArrayList<AdminPopulate>();

     for(Object p:subUserList)
     {
         subUserListAdminPop.add((AdminPopulate)p);
     }         

     for(AdminPopulate p:subUserListAdminPop)
     {
         System.out.println("first ="+p.getFirstName());
     }
 }

}

.... and this is the getSubUserAll () method

 public List getSubUserAll()
{
    Session session=null;
    List resultsList=null;

    try
    {
       CreateHibernateSession hbSession=new CreateHibernateSession();

       session=hbSession.getHBSession();

       String sql = "SELECT SubUser.FirstName,\n" +
                    "SubUser.LastName,\n" +
                    "SubUser.UserName,\n" +
                    "SubUserType.Name\n" +
                    "FROM SubUser\n" +
                    "INNER JOIN SubUserType ON SubUser.idSubUserType = SubUserType.idSubUserType\n" +
                    "WHERE SubUserType.idSubUserType !=  0";

       Query query = session.createSQLQuery(sql);  

       resultsList = query.list(); 

       return resultsList;
    }
    catch(Exception ex)
    {
        ex.printStackTrace();
    }
    finally
    {
        session.close();
    }
    return resultsList;
}
+4
source share
2 answers

If the class is SubUsercorrectly mapped to the query result, you can simply call query.addEntity(SubUser.class)before the query is executed.

Query query = session.createSQLQuery(sql);  
query.addEntity(SubUser.class);
resultsList = query.list(); 
+1
source

Hibernate, array of objects
(Object [] → [Ljava.lang.Object;)), , Query.list . SQL, , select.
, Query.list Object [2] SubUser SubUserType .

0

All Articles