Android: не используйте String.isEmpty

Ни eclipse ни intellj Idea ни android lint не предупреждают, что String.isEmpty() появился в Java 6, и после Android 2.3.


java.lang.NoSuchMethodError: java.lang.String.isEmpty
at pro.ezway.carmonitor.entity.TroubleCode.hasTitle(TroubleCode.java:142)
at pro.ezway.carmonitor.ui.fragments.TroubleCodesFragment$TroubleCodesAdapter.getView(TroubleCodesFragment.java:242)
at android.widget.AbsListView.obtainView(AbsListView.java:1315)
at android.widget.ListView.makeAndAddView(ListView.java:1727)

Read more

Java: контролл корректировки времени

В середине 2011 года вышел закон, в котором отменяется певод времени на летнее. #СПАСИБОСАМИЗНАЕТЕЗАЭТО.

Вот только кто софту скажет что всё поменялось? В частности в джаве есть косяки Оракл не торопится выпускать апдейт под венду, который исправляет время.
Напомню, что даже если в венде поставленны патчи и оно показывается правильное время, джава будет по-прежнему показывать GMT+3 (вместо GMT+4), т.е. на час раньше.

Read more

jdbc: неверная кодировка при работе с БД

Имеем:

  • Последний mysql connector/j
  • Кодировку БД, таблиц и полей в utf8_general_ci
  • Системную кодировку системы(древний ASP Linux) - cp1251
  • Принудительную установку кодировки при и после подключения:

    String connectionString = "jdbc:mysql://www.box/database"
    + "?useUnicode=true&characterEncoding=UTF-8"
    + "&charSet=UTF-8&encoding=UTF-8";
    Connection con = DriverManager.getConnection(connectionString,
    "someuser", "somepass");
    con.prepareStatement("SET CHARSET \"utf8\"").executeUpdate();
    con.prepareStatement("SET NAMES \"utf8\"").executeUpdate();

По факту в базу вставляются записи в виде абракадабры. Казалось бы - настроил всё что можно, причём однозначно везде юникод, что может быть не так?

Read more

Dosemu: Disk-device/file [..] doesn’t exist

Очень давно у меня в генте был dosemu, который со временем снёс за ненадобностью. Сейчас он снова понадобился, emerge dosemu прошёл успешно, а вот запускать отказался:

$ xdosemu
In file included from built-in global.conf:677
from built-in global.conf:634
Error in built-in global.conf: (line 672)
Disk-device/file /var/lib/dosemu/drives/k doesn't exist.
1 error(s) detected while parsing the configuration-file

И вот чё прикопался?!

10 минут вдумчивого вкуривания конфига /etc/dosemu/global.conf показали что путь к дискам относительный, т.е. был (у меня строка 73)

$_hdimage = "drives/*"

Поменял на

$_hdimage = "/etc/dosemu/drives/*"

Ошибка ушла :)

Kohana & firePHP: nginx выдаёт 502 при включённом debugToolbar

Те, кто следит за количеством запросов, потребляемой памяти, временем выполнения и другими важными показателями при использовании debugToolbar также наверняка используют firePHP - плагин к плагину fireBug для Firefox позволяющий дебажить работу своего веб-приложения.

По понятным причинам, на сайте после apache поставлен nginx. Наверное кто нибудь пытался сделать дамп большого объекта или массива и запихать его в firePHP. PHP скрипт отрабатывает удачно, в логах также всё нормально(код 200):

123.123.123.123 - - [31/Jan/2010:15:08:44 +0300] "GET /somepage/o.O HTTP/1.0" 200 66939 "-" "Mozilla/5.0 (X11; U; Linux x86_64; ru; rv:1.9.1.6) Gecko/20091216 Iceweasel/3.5.6 (like Firefox/3.5.6; Debian-3.5.6-1) FirePHP/0.4"

А вот nginx в браузер выдаёт

502 Bad Gateway

nginx

Так и в моём случае: всё работало нормально, казалось бы изменил совсем чуть-чуть: добавил ещё один вызов метода у модели. И на тебе - 502 Bad Gateway.

Read more

Debian: обновление MySQL 5.0 к 5.1

Обновил наконец в сквизе мускул, и вот что вылезло:

Настраивается пакет mysql-server-5.1 (5.1.37-2) ...
Устанавливается новая версия файла настройки /etc/init.d/mysql ...
 * Stopping MySQL database server mysqld       [ OK ] 
 * Starting MySQL database server mysqld        [fail] 
 * Please take a look at the syslog

Read more

SE p1i: траблы в wifi

В целом в SonyErricson P1i вифи работает, очень даже прилично. На улице к некоторым точкам не коннектится, ну да ладно, сигнал слабый, малоли..
А вот совершенно странная вещь - не хочет работать с wifi в домашней сети. Совершенно странные, разные симтомы от подключения к подключению: открывает страницу и перестаёт работать, вообще не открывает, по ип заходит, по днс нет, часть сайтов открывает, то перестаёт, скачивает половину страницы и замерает. И не вычислить чтож такое. Проблеммы с софтом телефона я практически сразу исключил: ибо к другим точкам коннектится на ура. У меня стоит dhcp(с привязкой по маку), сначала думал что то из за него. Поставил статик-ип. Ситуация поменялась, но траблы примерно такие же. Менял MTU, RTS, это какбе влияет, но в целом - тоже самое.

Read more

trac: вопросы вместо русских букв

Довелсь мне поднимать svn+trac.
Одна из проблем - при написании тикета с русскими буквами появлялась следующая ошибка:

Oops...
Trac detected as internal error:
  OperationalError: (1267, "Illegal mix of collations (latin1_swedish_ci,IMPLICT) 
  and utf8_general_ci, COERCIBLE) for operation '='")

Read more