2017-09-17 43 views
-1

您好我有来自REST的响应问题。我收到对象JSON解析它,一切都很好,但是当我尝试将它添加到领域我得到空指针异常。 这是链接到我的项目: https://github.com/666Angelus666/MobileDealerNullPointerException:尝试'null com.mobiledealer.dao.OrderDAO.insertOrUpdate(com.mobiledealer.model.Order)'null对象引用

MainActivity我通话功能synchronizeContractorsItems然后在3次呼叫我是得到错误。 Line where i get error

+0

请在问题代码和堆栈跟踪,而不是屏幕截图。 –

+0

你在列表中有'null'.... –

+0

将代码粘贴到此处。为了找到需要帮助的代码,我们不应该深入研究您的回购。 – Beto

回答

0

我看到了你的代码。我认为这个问题是因为你没有在您的活动初始化orderDAO对象,你必须使用

orderDAO = new OrderDAO(); 


Call<OrderResponse> orderResponseCall = apiService.getOrdersList(); 
     orderResponseCall.enqueue(new Callback<OrderResponse>() { 
      @Override 
      public void onResponse(Call<OrderResponse> call, Response<OrderResponse> response) { 
       orderList = response.body().getOrdersList(); 

       for (Order order : orderList) { 
        try { 
         orderDAO.insertOrUpdate(order); 
        } catch (Exception e) { 
         Log.d("REST", "Error"); 
         e.printStackTrace(); 
        } 
       } 
      }` 

我想,这可能会解决你的问题之前,初始化orderDAO对象。

+0

是的,你是对的,我忘了初始化'orderDAO'后我做代码开始工作。 Thx寻求帮助。 – Angel666

+0

我很高兴知道我可以帮助你!快乐编码 – UltimateDevil

0

犯罪嫌疑人可能是您的订单可能是空,可能是一个空检查将有助于

public void insertOrUpdate(Order order) { 

if(order != null) 

{ 

    realm.beginTransaction(); 
    realm.insertOrUpdate(order); 
    realm.commitTransaction(); 

} 

    }` 
相关问题