2012-06-13 4 views
1

J'utilise Kundera comme JPA avec HBase et java. Voici la méthode qui appelle la méthode getResultList():Une exception Nullpointer est levée lors de l'utilisation de la méthode getResultList() dans Kundera

@Override 
    public List<Activity> getAllActivities() 
    { 
     em = emf.createEntityManager();   
     Query q = em.createQuery("select ac from Activity ac"); 
     List<Activity> activities = q.getResultList(); 
     return activities; 
    } 

Il déclenche une exception nullpointer.

Exception in thread "main" java.lang.NullPointerException 
    at com.impetus.kundera.index.IndexManager.search(IndexManager.java:191) 
    at com.impetus.kundera.query.LuceneQuery.getResultList(LuceneQuery.java:101) 
    at com.impetus.activity.dao.ActivityService.getAllActivities(ActivityService.java:100) 
    at ActivityExample.main(ActivityExample.java:44) 

P.S: La table d'activité dans HBase a 6 enregistrements.
Quelle peut en être la raison?

Répondre

2

S'il vous plaît essayer d'ajouter une propriété mentionné ci-dessous

<property name="index_home_dir" value="./lucene" /> 

dans persistence.xml.

Raison est votre il n'y a aucun support d'indexation par défaut disponible avec HBase.

Cela devrait marcher pour vous.

0

Eh bien, il semble que at com.impetus.kundera.index.IndexManager.search([IndexManager.java][1]:191) il y a un extrait:

public final Map<String, String> search(String query, int start, int count) 
{ 
    return indexer.search(query, start, count, false); //line 191 
} 

Et indexeur semble être nulle. L'indexeur est transmis en tant que paramètre à IndexManager. Recherchez l'instanciation de l'indexeur dans votre application.

Questions connexes