首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Exception >

javax.microedition.rms.InvalidRecordIDException异常,J2ME数据库问题。

2014-01-26 
[wtkrun] javax.microedition.rms.InvalidRecordIDException[wtkrun] at javax.microedition.rms.RecordSto

[wtkrun] javax.microedition.rms.InvalidRecordIDException
  [wtkrun] at javax.microedition.rms.RecordStore.findRecord(+86)
  [wtkrun] at javax.microedition.rms.RecordStore.getRecord(+22)
  [wtkrun] at com.fastmobile.crake.model.ByteDatabase.getRecord(+13)
  [wtkrun] at com.fastmobile.crake.model.ContactDatabase.put(+123)
  [wtkrun] at com.fastmobile.crake.model.ContactDatabase.putFromNetwork(+29)
  [wtkrun] at com.fastmobile.crake.controller.AddressBookHandler.parseAddrResponse(+825)
  [wtkrun] at com.fastmobile.crake.controller.AddressBookHandler.handleAddrBookResponse(+23)
  [wtkrun] at com.fastmobile.crake.controller.AddressBookHandler.handleServerMessage(+90)
  [wtkrun] at com.fastmobile.crake.controller.MessageDispatcher.dispatchMessage(+150)
  [wtkrun] at com.fastmobile.crake.controller.MessageDispatcher.handleExtSvcMessage(+22)
  [wtkrun] at com.fastmobile.crake.controller.MessageDispatcher.handleExtSvcFragment(+210)
  [wtkrun] at com.fastmobile.crake.controller.MessageDispatcher.handleExtSvcMessage(+11)
  [wtkrun] at com.fastmobile.crake.controller.MessageDispatcher.run(+34)
 
  查了一下资料,一般情况下是当记录被删除的时候会报这个错。可是实际代码
 
  synchronized (m_store)
  {
  boolean isUpdate = m_store.findRecord(I_ADDR_ID, (byte) 4, id);
  if (isUpdate)
  {
  oldDetails = new ContactDetails(m_store.getRecord(), m_store.getDataLength());
  else
  oldDetails=null;
  }
  }
 
  已经被锁定了,而且确实没有任何删除操作在别的进程中,所以不知道为什么总是抛出这个错,请不吝赐教!

------解决方法--------------------------------------------------------
它报的是无效的记录号,那就看看记录号有没有问题

        

热点排行