Hibernate Tutorial
Отличный, по моему мнению, туториал по Hibernate:
особенно хорошо показаны построения отношений между таблицами.
Отличный, по моему мнению, туториал по Hibernate:
особенно хорошо показаны построения отношений между таблицами.
В последней Java6 не включена tzdata с информацией о том, что в России, сейчас нет перехода на зимнее время. Дальнейшие пояснения излишни.
Как фиксить? Обновить tzdata при помощи предлагаемой ораклом утилиты:
После очередного обновления, заметил, что Опера перестала стартовать. При запуске из терминала, вываливает следующее:
$ opera
(opera:13093): Gtk-CRITICAL **: IA__gtk_widget_unrealize: assertion `GTK_IS_WIDGET (widget)' failed
(opera:13093): Gtk-CRITICAL **: IA__gtk_widget_is_toplevel: assertion `GTK_IS_WIDGET (widget)' failed
opera [crash logging]: CRASH!!
/usr/lib/opera/opera got signal SIGSEGV at address B6B26E77
Log was created here:
/var/tmp/crash20111110210615.txt
Убито
Для столкнувшихся с этой же проблемой в ArchLinux:
Переехал на BlogTNG вместо классической связки плагинов blog/tag/discussion. Разработчики, к слову, те же самые.
Уже пришлось малость залезть в исходники, для корректировки работы с тегами, но в целом ощущения положительные.
Теперь будем постепенно адаптировать другие части системы под новый блого-движок.
Как сказал один умный дядька (вот к своему позору запамятовал как его зовут, вроде Аристотель): “Дайте мне библиотеку и я в пустыне построю университет!”. Пусть у меня тут не университет, но… полезных и интересных книг? есть их у меня! Посему начинаю проект по публикации своей домашней электронной библиотеки. И вот первые ласточки: материалы по учебе в ДВГТУ
Планирую сходить на Туманную в день шуток и приколов. Желающим присоединиться - в комменты.
Подкинули ссылочку на интересную статью в компьютерее, называется “Пять процентов”
Интересная нужно сказать теория. Тут вот думаю, к каким “пяти процентам” отношусь я?
Вообще жизнь интересная штука: каждый день, новая шуточка, даже интересно, а что ж завтра то будет?
В QLandkarteGT есть удобная вещь - экспорт видимой области карты со всеми отображаемыми точками, треками, измерениями и т.п. в растровый (PNG) файл.
Мне же потребовалось, что бы вся карта как есть была экспортирована. Пришлось полезть в исходники. Прямого пути сделать такое не нашлось, пришлось сделать несколько костыльно (имхо), но работоспособно (ибо нужно срочно - готовить карту к предстоящим соревнованиям).
Патч подкатом.
Сегодня столкнулся с тем, что привязывая карту в QLandkarteGT, получаю такую ошибку:
/usr/bin/gdal_translate -a_srs +proj=merc +a=6378245.0000 +b=6356863.0188 +towgs84=24,-123,-94,-0.02,0.25,0.13,1.1,0 +units=m +no_defs -gcp 108 182 inf inf -gcp 3310 189 inf inf -gcp 3308 3126 inf inf -gcp 93 3119 inf inf -gcp 1704 1657 inf inf /home/hatred/maps/1/src/K-53-26-view-raw.tiff /tmp/qt_temp.B12852
Input file size is 3402, 3428
0...10...20...30...40...50...60...70...80...90...100 - done.
/usr/bin/gdalwarp -order 1 -r cubic -dstnodata "255" /tmp/qt_temp.B12852 /tmp/qt_temp.u12852
ERROR 1: Attempt to create -2147483648x-2147483648 dataset is illegal,sizes must be larger than zero.
Creating output file that is -2147483648P x -2147483648L.
Неудачно!
Сначала было подумал, что поломано в SVN версии, однако, в релизной 1.2.4 ситуация точно такая же.
Сразу и сходу смутили параметры inf
в опции -gcp
. Так что решил поглядеть в коде, благо собираю из SVN и он у меня всегда под рукой.
Немного времени, расстановка логов, анализ привели к тому что обнаружилось двойное преобразование координат в функции
bool GPS_Math_Str_To_LongLat(const QString& str, float& lon, float& lat, const QString& srcproj, const QString& tarproj)
в файле GeoMath.cpp
Первое преобразование было в блоке кода:
if(GPS_Math_Str_To_Deg(str, lon, lat,true))
{
if(pjTar)
{
u = lon * DEG_TO_RAD;
v = lat * DEG_TO_RAD;
pj_transform(pjSrc,pjTar,1,0,&u,&v,0);
}
}
else
а второе преобразование в следующем блоке кода:
if(pjTar && pjSrc)
{
pj_transform(pjSrc,pjTar,1,0,&u,&v,0);
}
Беглый анализ привёл к мысли, что производился редизайн кода, оптимизация и убирание дублирующихся блоков кода, в результате просто недосмотрели одно место.
Сменил первый блок на такой:
if(GPS_Math_Str_To_Deg(str, lon, lat,true))
{
u = lon * DEG_TO_RAD;
v = lat * DEG_TO_RAD;
}
else
пересобрал и всё заработало отлично и замечательно.
UPD: а теперь всё то же самое, но в виде патча:
Index: src/GeoMath.cpp
===================================================================
--- src/GeoMath.cpp (revision 3010)
@@ -392,12 +392,8 @@
if(GPS_Math_Str_To_Deg(str, lon, lat,true))
{
- if(pjTar)
- {
- u = lon * DEG_TO_RAD;
- v = lat * DEG_TO_RAD;
- pj_transform(pjSrc,pjTar,1,0,&u,&v,0);
- }
+ u = lon * DEG_TO_RAD;
+ v = lat * DEG_TO_RAD;
}
else
{
PS автору письмо отправлено