Установка приложений OTA - PullRequest
1 голос
/ 04 мая 2010

У меня есть система, настроенная на загрузку jad-файлов на Blackberry пользователей, но она работает только периодически и, по-видимому, случайно. Если пользователь нажимает на ссылку в своем браузере BlackBerry, в 95% случаев при первой попытке появляется сообщение об ошибке, сообщающее об ошибке HTTP 500 (которую наш сервер никогда не возвращает).

Просматривая подробности этого сообщения в браузере Blackberry, он ничего не говорит, кроме java.lang.nullpointerexception, который, опять же, не мог прийти с нашего сервера (работает apache / php).

Однако, если пользователь нажимает на ссылку еще несколько раз или уходит и возвращается на эту страницу, она неожиданно работает. Без изменений на сервере, он просто показывает экран установки приложения. К сожалению, это не всегда работает; иногда ошибка 500 просто продолжает появляться.

Ссылка довольно длинная (содержащая хэш sha в качестве токена как часть URL), но я думаю, что длинный URL будет либо всегда битым, либо всегда работа, а не работа с перерывами.

Ссылка использует скрипт php для загрузки файлов jad и cod. Связывание с файлами напрямую, а не использование сценария, кажется, работает чаще (я не определил, есть ли в нем ошибка 500 или нет), но я не могу найти никаких проблем с заголовками. Тип содержимого установлен правильно, и, как я уже сказал, если бы заголовки были проблемой, я бы подумал, что это будет либо всегда работа, либо всегда перерыв.

Есть какие-нибудь подсказки?

Ответы [ 2 ]

1 голос
/ 04 мая 2010

Вы можете пролить свет на проблему, посмотрев журналы событий, которые вы можете получить с помощью JavaLoader:

javaloader -u eventlog> event.log

Ищите исключение NullPointerException в этих журналах, и вы сможете увидеть, что его вызывает.

0 голосов
/ 26 января 2011

Я не могу объяснить прерывистое поведение, но у меня была похожая ситуация, когда я получал java.lang.NullPointerException в деталях браузера. К сожалению, журнал событий (в виде javaloader.exe) или при просмотре на устройстве с использованием Alt - L - G - L - G не показывал исключение.

(я использую bb-ant-tools и JDE 4.6.1.) Когда инструмент подписи запустился, я заметил, что два .cod файла подписаны, и я вижу оба из них внутри .jar файл, который создает компилятор. Но записанный вывод представлял собой один .cod файл размером 92306 байт, который был , а не .zip меньших .cod файлов. Компилятору как-то не удалось создать .cod, который содержал братьев и сестер. Для сравнения, компиляция проекта с использованием JDE 5.0.0 создала одноуровневые файлы .cod, которые можно было загружать через OTA.

Мой проект включал в себя .mp3 файл размером 53542 байта, который мне не понадобился. После его удаления компилятор 4.6.1 выдал один .cod, и я смог успешно загрузить его через OTA.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...