2009-11-14 6 views
1

Mon code estNullpointer Exception dans la fonction J2MEmicroDb createTable

  J2MESDLIB.generateDB(true); 
     J2MEColumn c1 = new J2MEColumn("desc", true, J2MEColumn.ColumnType.VARCHAR, 20); 
     J2MEColumn c2=new J2MEColumn("date", false, J2MEColumn.ColumnType.VARCHAR, 20); 
     J2MEColumn c3=new J2MEColumn("type", false, J2MEColumn.ColumnType.VARCHAR, 20); 
     J2MEColumn c4=new J2MEColumn("assigned", false, J2MEColumn.ColumnType.VARCHAR, 100); 

     Vector vector=new Vector(4); 
     vector.addElement(c1); 
     vector.addElement(c2); 
     vector.addElement(c3); 
     vector.addElement(c4); 

     J2METable table1=J2MESDLIB.createTable("todo", vector, 1); 

donne exception à la dernière ligne -à-dire java.lang.NullPointerException java.lang.NullPointerException à edu.upc.J2MESDLIB.J2MEDBException. (J2MEDBException.java:82) à edu.upc.J2MESDLIB.J2MESDLIB.createTable (J2MESDLIB.java:193) à hello.TodoRecordStore.openRecord (TodoRecordStore.java:52)

Répondre

0

Quand je J2MEMicroDB téléchargé à partir du first result d'un google search, il a uniquement pris en charge une langue par défaut pour les messages J2MEDBException. Je suppose que la version que vous avez aurait été localisée.

Le code NullPointerException peut être provoqué par un ensemble de messages d'erreur spécifiques au langage. Malheureusement, cela signifie que le NullPointerException ne fait que masquer le J2MEDBException que J2MEMicroDB essayait de lancer.

Compte tenu du code que vous avez posté, ma seule supposition quant à l'original J2MEDBException serait que la table "todo" existe déjà.

Questions connexes