Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
quadenes
2 / 2 / 1
Регистрация: 14.07.2015
Сообщений: 50
#1

Ошибка Value null at rows of type org.json.JSONObject$1 cannot be converted to JSONArray - Программирование Android

04.08.2016, 15:19. Просмотров 277. Ответов 6

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
public class MainActivity extends Activity {
  JSONObject jsonobject;
    JSONArray jsonarray;
    ListView listview;
    ListViewAdapter adapter;
    ProgressDialog mProgressDialog;
    ArrayList<HashMap<String, String>> arraylist;
    static String IMAGE = "media";
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Get the view from listview_main.xml
        setContentView(R.layout.listview_main);
        // Execute DownloadJSON AsyncTask
        new DownloadJSON().execute();
    }
 
  
    private class DownloadJSON extends AsyncTask<Void, Void, Void> {
 
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
           
            mProgressDialog = new ProgressDialog(MainActivity.this);
           
            mProgressDialog.setTitle("test");
     
            mProgressDialog.setMessage("Loading...");
            mProgressDialog.setIndeterminate(false);
       
            mProgressDialog.show();
        }
 
        @Override
        protected Void doInBackground(Void... params) {
            
          
            arraylist = new ArrayList<HashMap<String, String>>();
            
            jsonobject = JSONfunctions
                    .getJSONfromURL("http://****");
 
 
            try {
                
                jsonarray = jsonobject.getJSONArray("rows");
 
 
                for (int i = 0; i < jsonarray.length(); i++) {
                    HashMap<String, String> map = new HashMap<String, String>();
                    jsonobject = jsonarray.getJSONObject(i);
                    map.put("media", jsonobject.getString("media"));
                    arraylist.add(map);
                }
            } catch (JSONException e) {
                Log.e("Error", e.getMessage());
                e.printStackTrace();
            }
            return null;
        }
 
        @Override
        protected void onPostExecute(Void args) {
          
            listview = (ListView) findViewById(R.id.listview);
      
            adapter = new ListViewAdapter(MainActivity.this, arraylist);
 
            listview.setAdapter(adapter);
 
            mProgressDialog.dismiss();
        }
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.08.2016, 15:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка Value null at rows of type org.json.JSONObject$1 cannot be converted to JSONArray (Программирование Android):

Ошибка - Errororg.json.JSONExceprion: Value bd.json of type java.lang.String cannot be converted to JSONObject - Программирование Android
Здравствуйте! Есть база данных bd.json, которая находится в проекте в папке assets. Вот содержимое базы данных; { &quot;name&quot;:...

Ошибка при обработке Json - Cannot deserialize the current JSON array because the type requires a JSON object - C#
Всем привет! Помогите, плиз, разобраться с ошибкой: An unhandled exception of type 'Newtonsoft.Json.JsonSerializationException'...

Ошибка: Could not convert variant of type (Null) into type (String) - Фильтрация - Delphi БД
В polycom200U1GTADOQuery1 свойстве Events - OnFilterRecord пишу procedure TDataModule2.polycom200U1GTADOQuery1FilterRecord( ...

Ошибка в коде could not convert variant of type null into type integer - Delphi БД
var i,j:byte; n:string; begin form7.ComboBox1.Enabled:=false; with dm.T_sub do begin Open; while...

При конвертации даты возникает ошибка could not convert variant of type(Null) into type (date) - C++ Builder БД
Добрый день.Помогите пожалуйста. При конвертации даты возникает ошибка could not convert variant of type(Null) into type (date) . ...

Ошибка: Could not convert variant of type (Null) into type (String) - Delphi
Здраствуйте. Как вы уже поняли проблема с ошибкой &quot;Could not convert variant of type (Null) into type (String)&quot; Вот код на...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
vxg
Модератор
3158 / 1960 / 219
Регистрация: 13.01.2012
Сообщений: 7,504
04.08.2016, 19:38 #2
quadenes, и что тут не ясно? Вам приходит null а вы хотите получить массив - вот оно и брыкается - проверьте приходят ли данные, какого они типа и как они называются
quadenes
2 / 2 / 1
Регистрация: 14.07.2015
Сообщений: 50
05.08.2016, 09:43  [ТС] #3
Нет. суть в том, что на JSON другого источника, у меня все работает.
А на JSON, который нужно, не пашет.
Вот код:
JSON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{"timestamp":1470379316,"type":"news","rows":[{"categorytitle":"Происшествия","dateline":"1470378720","media":[{"width":"200","filename":"https://www.***.ru/media/80/63/money_dengi_b10(1)__0.jpg","height":"133"}],"text":"
В Армавире возбудили уголовное дело в отношении инспектора ДПС, которого заподозрили в получении взятки.
 
\r\n
По версии следствия, 23 июня полицейский патрулировал поселок Заветный. Он остановил автомобиль с пьяным водителем и сказал, что готов не отправлять его на освидетельствование за 25 тыс. рублей, сообщает пресс-служба СУ СК РФ по Краснодарскому краю.
 
\r\n
Водитель согласился, отдал требуемую сумму, но потом сообщил о случившемся в правоохранительные органы. Расследование уголовного дела продолжается.
 
\r\n
По итогам служебной проверки принято решение об увольнении инспектора ДПС из МВД по отрицательным мотивам. Его руководителей привлекут к дисциплинарной ответственности, бывший полицейский понесет наказание в соответствии с действующим законодательством, сообщает пресс-служба ГУ МВД РФ по Краснодарскому краю.
 
","link":"https://www.***.ru/news/401542/","username":"Anton","categoryid":"7","title":"В Армавире полицейского заподозрили в получении взятки в 25 тыс. рублей","anouns":"Инспектор ДПС предлагал за деньги не отправлять пьяного водителя на освидетельствование","newsid":"401542"},{"categorytitle":"Образование","dateline":"1470378360","media":[{"width":"200","filename":"https://www.***.ru/media/c0/1c/money_dengi_b8__0.jpg","height":"133"}],"text":"
На подготовку 73 городских образовательных организаций столицы Адыгеи Адыгеи к новому учебному году было направлено свыше 19 млн рублей, часть из которых – депутатские средства. Об этом сообщили в пресс-службе администрации Майкопа.
 
\r\n
"В зданиях школ и детских садов проводится косметический ремонт спортивных и актовых залов, столовых, учебных и медицинских кабинетов, рекреаций. Производится замена дверных и оконных блоков, ремонтируются крыши и ограждения, приобретается мебель и необходимое оборудование", – отметили в администрации города.
 
\r\n
Кроме того, в рамках федерального проекта, направленного на создание условий для занятий спортом в сельских образовательных организациях, из федерального бюджета получена субсидия на ремонт спортзала в СОШ №18 поселка Гавердовского. 
 
"Соответствующие мероприятия в рамках муниципальной программы "Доступная среда" будут выполнены в ДОУ №26, ДОУ №37, ДОУ№39, а также в МКОУ "Специальная (коррекционная) общеобразовательная школа VIII вида". Качество выполняемых работ – на контроле мэра города Александра Наролина", – уточнили в пресс-службе мэрии Майкопа.
 
","link":"https://www.yuga.ru/news/401541/","username":"Дарья","categoryid":"120","title":"В Майкопе на косметический ремонт школ выделили 19 млн рублей","anouns":"В Майкопе на косметический ремонт 73 образовательных организаций выделили 19 млн рублей","newsid":"401541"},{"categorytitle":"Курорты и туризм","dateline":"1470378060","media":[{"width":"200","filename":"https://www.***.ru/media/2f/95/sea_beach_b25__0.jpg","height":"133"}],"text":"
В министерстве по курортов, туризма и олимпийского наследия Краснодарского края сообщили, что загрузка пляжей черноморских курортов Кубани превысила 100%.
 
\r\n
Основной наплыв отдыхающих в пик курортного сезона наблюдают в Сочи, Геленджике и Анапе. При этом пляжи Азовского моря заполнены менее чем на половину, сообщает "Интерфакс".
 
\r\n
vxg
Модератор
3158 / 1960 / 219
Регистрация: 13.01.2012
Сообщений: 7,504
05.08.2016, 12:51 #4
quadenes, не очень информативно. покажите объект и имя поля которые вы читаете и не можете прочитать
quadenes
2 / 2 / 1
Регистрация: 14.07.2015
Сообщений: 50
05.08.2016, 12:55  [ТС] #5
vxg,
Рассказываю. К примеру, взяли вручную написали данный JSON, все работает:
JSON
1
2
3
4
5
6
{
  "news":[
    {"categorytitle":"Футбол",      "dateline":"1470387060","image":"https://www.yuga.ru/media/69/b3/krasnodar-birkirkara_b19__zdhiikm.jpg","text":"текст новости","link":"https://www.yuga.ru/news/401560/","username":"Светлана Кочеткова","categoryid":"126","title":"Чемпионы Сербии и Казахстана могут стать следующими соперниками "Краснодара" в Лиге Европы","anouns":"Определились все потенциальные соперники "Краснодара" в раунде плей-офф квалификации Лиги Европы","newsid":"401560"},
    {"categorytitle":"Происшествия","dateline":"1470386760","image":"https://www.yuga.ru/media/45/50/naruchniki_new_b003__11rn4jj.jpg",     "text":"текст новости","link":"https://www.yuga.ru/news/401559/","username":"Маша Волобуева",    "categoryid":"7",  "title":"В Ейском районе напавший на продуктовый магазин избил охранника трубой",                      "anouns":"Двое мужчин похитили из кассы магазина около 8 тыс. рублей",                                        "newsid":"401559"}
   ]
}
Но когда грузим JSON, описанный ранее, то прилетает ошибка "Value null at rows of type org.json.JSONObject$1 cannot be converted to JSONArray"
То есть по факту идет объект в объекте (не может прочитать ROWS)
vxg
Модератор
3158 / 1960 / 219
Регистрация: 13.01.2012
Сообщений: 7,504
05.08.2016, 13:05 #6
quadenes, в "плохом" объекте больше массивов чем в этом. на каком именно поле выбивает? тут
Java
1
jsonarray = jsonobject.getJSONArray("rows");
?
ну так в "хорошем" объекте такого поля вообще нет. как то не вяжется

Добавлено через 52 секунды
попробуйте убрать переносы может дуреет он них
quadenes
2 / 2 / 1
Регистрация: 14.07.2015
Сообщений: 50
05.08.2016, 15:08  [ТС] #7
vxg, Да, на этой строке ошибка

Добавлено через 56 минут
vxg, Нашли ошибку.
Проблема: в случае, если брать статический URL (к примеру, "http://lolita.com/news.json"), то работает.
Но так как страница динамическая, то беда...
Взглянул на URL, нашел символ "&".
Заменил, выглядит теперь вот так:
"http://www.****.ru/cgi-bin/kernel.cgi?module=news"+URLEncoder.encode("%26")+"act=get_json"+URLEncoder.encode("%26")+"type=news"+URLEncoder.encode("%26")+"json_response=1"+URLEncoder.encode("%26")+"media=0"
И все равно не пашет((
Даже через String пытался. Тщетно
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.08.2016, 15:08
Привет! Вот еще темы с ответами:

Ошибка Could not convert variant of type (Null) into type (String) - Delphi БД
У меня вопрос по моему проекту...!) Если кто знает помогите, в свойствах компонента DBGrid --&gt; OnDrowColumnCell --&gt; пишу код ...

Ошибка: Could not convert variant of type (null) into type (olestr) - Delphi
здравствуйте подскажите пожалуйста использую для ввода в базу sql cxgrid (по идеи у меня cxgrid много на форме только проблема возникла...

Ошибка: Could not convert variant of type (Null) into type (String) - Delphi
Хочу осуществить фильтрацию в DbGrid c помощью FilterRecord, но выдаёт такую ошибку (Could not convert variant of type (Null) into...

Ошибка Could not convert variant of type (Null) into type (String) - Delphi
Как только начинаю вводить инфу в edit появляется ошибка Could not convert variant of type (Null) into type (String)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
05.08.2016, 15:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru