Java + JSON. Пути к дружбе.

This acrticle at wikidot.com

J2EE JSON

Введение

Спешу поделиться результатами небольшого исследования, оказавшегося необходимым для текущего проекта. Рассматривается возможность связки Java и JSON, её преимущества и недостатки. Я расскажу о практической части, о теории больше поведают нижеприведённые ссылки (англ.).

Если кратко — JSON (JavaScript Object Notation) не является ничем более сложным, чем описано в его названии. Если вы можете описать сложно-структурированный объект на JavaScript — то о клиентской стороне JSON вы знаете практически всё. Серверная часть JSON занимается тем, что принимает каким-либо способом объект, записанный в нотации JavaScript и разворачивает данные таким образом (наверное можно сказать, десериализует), чтобы они стали доступны (или хотя бы понятны :) ) остальной части кода.

Read more…

Редеплойинг приложения на Tomcat средствами Ant

This acrticle at wikidot.com

J2EE Apache Tomcat Apache Ant

Процесс разработки нашего проекта обладает одним минусом, свойственным многим J2EE-проектам: при изменении кода проекта и пересборке его сервер не сразу подхватывает обновку, а требует полного останова себя, очистки кэша, запуска себя по-новой и передеплойинга пакета.

Для того чтобы не делать это каждый раз ручками есть несколько простых способов: например, те же скрипты (batch’и для windows и shell-скрипты для linux). Но мне показалось более простым сделать так, чтобы делал это сам собирающий ant-скрипт (сценарий?): одно нажатие клавиши и все просходит автоматически…

Read more…

ООП и JavaScript

This acrticle at wikidot.com

JavaScript

В предыдущей статье я представил на ваше рассмотрение небольшой кусок кода, который позволяет использовать три столпа ООП в JavaScript. Все это достигается довольно хитро и я, честно признаюсь, пока не слишком хорошо знаю, как это работает (остальное — конечно — знаю :) ) — в комментах меня вывели на чистую воду :). Тем не менее я позволил себе чуточку изменить функцию extend, дабы классы имели понятие о том, что такое статические константы (на самом деле константы конечно получились условные, но это думаю можно оправдать условностью их в самом JavaScript). Здесь я рассмотрю этот вопрос поподробнее и, видимо, буду расширять статью по мере его более глубокого понимания.

Read more…

16 действительно полезных решений для JavaScript

This acrticle at wikidot.com

JavaScript AJAX

Представляю вам набор функций, которые у меня лежат в отдельном файле utils.js — это функции, которые я использую чаще всего. Они стараются быть кроссбраузерными и проверены на IE6/7, FF2 и Safari 2 и на боевой, сложной системе, в XHTML документах. Должны, по идее, работать, и на других, но не очень старых версиях браузеров — проверку браузера я использовал только в исключительных случаях. Некоторая часть из них, конечно же, просто нарыта на просторах интернета (где — обычно указано) и заимствована ввиду открытости, а большая часть — сконструирована из многих ресурсов и своих идей (и советов коллег), дабы работать на ура — поскольку часто в разных скриптах не учитываются разные тонкости, которые, тем не менее — при ближайшем рассмотрении — оказываются общностями :) , ну и быть довольно читабельными.

Фукнции разделены тематически:

  • ООПобеспечение (или, вернее сказать — эмуляция) возможности использовать принципы ООП в JavaScript
  • Объектная модель JSиспользование и расширение встроенных объектов JS
  • Определение браузерачтобы использовать в тех редких случаях, когда это все-таки неизбежно необходимо :)
  • Координаты / Позициионированиевычисление координат и позиционирование объектов — ввиду того, что это часто довольно хитрая штука
  • DOMработа с объектной моделью документа
  • AJAXвспомогательные функции для AJAX — так как это средство часто применимо :)
  • Логгинг — иногда он нужен чтобы везде :)

Read more…

Первыйэхъ

Таки значит гхм. (прокашлялся). Кажется я уже своими инкарнациями повсюду наследил и не нашел себе пока статичного места, извините :). Тут скорее всего тоже не оно, а оно будет на локальном компе, когда я вспомню сказать при оплате телефона что неплохо бы было оформить мне статический ай-пи и не поленюсь поставить базу для текстпаттерна и починить свой дамп, который тут на днях убил другой мой локальный мускул :). Тем не менее здесь оставлю наибольшее количество своих околокомпутерных статей, если они кому нужны конечно (я тут почитал старые, охх :) ), которые потом занесу к себе, если опять же все организую. Пока залил основные старые с жж и соответственно блога, задними числами, чтобы потом можно было экспортировать и слить в тот же, например, textpattern.

Неожиданный баг textpattern

This acrticle at wikidot.com

Textpattern

Пока игрался с textpattern на шаредкоде, обнаружил сей баг, который потенциально может затронуть тех, кто собственно textpattern пользует.

Испугало то, что отключалось (правильнее сказать истекало) комментирование в статьях, с постинга которых прошло много времени. излазил все настройки – нету ничего такого – хотя видно, что должно ведь быть по разумению. И ведь хорошо что погуглил. наткнулся на пост, а из него – по комментам – на статью FAQ.

Суть состоит в том, что если в Admin -> Preferences -> Basic для раздела Comments вы наблюдаете только два пункта (и у вас версия 4.0.4 и нет желания/возможности пока апдейтить) – эта заметка для вас.

Сделать надо всего лишь два действия. Раз – забрать с вашего хостинга файл ./textpattern/include/txp_prefs.php, найти в нем строку 89:

$evt_list = safe_column('event', 'txp_prefs', "type = 0 and prefs_id = 1 group by 'event' order by event desc");

и удалить из нее кавычки вокруг event (чтобы она совпадала с этим вариантом):

$evt_list = safe_column('event', 'txp_prefs', "type = 0 and prefs_id = 1 group by event order by event desc");

два – залить файл обратно. Финита ля комедия – добро пожаловать в настройки, в пункт Comments:Disabled after.

Eric IDE 4.0.1 на Ubuntu 7.04

This acrticle at wikidot.com

Ubuntu Python Eric IDE

Eric – очень даже хорошее IDE под Python. и не далее как вчера вышла версия 4.0.1, в репозиториях же на данный момент лежит версия 3.9. и захотелось мне вспомнить старые добрые времена и собрать этот пакет. Представляю вам на всякий случай листинг того, что делать – чтобы не возвращаться обратно, выясняя что нужно поставить еще что-то или разбираясь в ошибках компиляции, которые меня посещали :). Кое-где – ориентировка на последние версии :). Так как устанавливалось на чистой практически убунте – все должно быть адекватно… если что-то упустил – прошу сообщать.

Read more…