Перехват нажатия Enter на текстовом поле

Categories: JavaScript
Comments: No Comments
Published on: 22.11.2011

Для перехвата нажатой клавиши используется переопределение события onkeypress (возварщает true — если событие должно обрабатываться дальше при bubling, false — прерывает дальнейшее выполнение ), которое возникает в браузере при нажатии любой клавиши на клавиатуре. Пример использования:

function customOnKeyPress(evt) {
    var evt = (evt) ? evt : ((event) ? event : null);
    var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
    if ((evt.keyCode == 13) && (node.type=="text"))  {
        return false;
    }
}
var newObjectNameField = document.getElementById('textField');
newObjectNameField.onkeypress = customOnKeyPress;

node.type=="text" — указывает, что привязываем только к текстовому полю

Список плагинов которые облегчают программирование

Eclipse Color Themes или как сменить подсветку кода в редакторе

При программировании в Eclipse важным моментом является подсветка кода, ведь в подсвеченном коде разобраться куда проще и легче, чем в сплошном и плохо разделяемом, хотя тут некоторые могут поспорить :)

Для изменения подсветки кода в Eclipse я использую дополнение, которое называется Eclipse Color Themes для меня этот плагин удобен и установить его очень просто.
Сайт обновления: http://eclipse-color-theme.github.com/update/
Официальный сайт плагина: http://www.eclipsecolorthemes.org/

Java 7 и стоит ли её использовать?

Categories: Eclipse, IDE, Java
Comments: No Comments
Published on: 13.11.2011

После выхода в свет Java 7,  все стали бурно обсуждать критическую ошибку с циклами, которая была обнаружена и воспроизведена группой разработчиков Tomcat(если мне не изменяет память). Эта ошибка с циклами, по-заверениям разработчиков Java, будет исправлена в Java 7 Build 2, а пока этого не произошло, то можно использовать опцию JVM, которая изолирует этот баг (у меня за все время работы с Java 7 — небыло ни одного падения, а вот прирост скорости «на глаз» ощутим). Вписываем эту опцию при запуске JVM (например в eclipse.ini) и радуемся жизни:

-XX:-UseLoopPredicate

Eclipse «Contacting Software Sites» has encountered a problem

Categories: Eclipse, IDE, Java
Comments: No Comments
Published on: 13.11.2011

Сегодня столкнулся с очередной проблемой, которая как-всегда подкралась незаметно из-за угла. Дело обстояло следующим образом. После скачивания Eclipse Indigo 3.7 и запуска его в JVM 7 я обычно ставлю плагины, которые облегчают программирование, например подсветку синтаксиса в окне редактора, или авто дополнение кода JavaScript и т.п. После того, как я зашел в установку программ (Help -> Install New Software…) появилось сообщение «Problem Occurred»
Вот текст того, что написано при нажатии Details:

Some sites could not be found.  See the error log for more detail.
Unable to read repository at http://download.eclipse.org/eclipse/updates/3.7/compositeContent.xml.
Cannot assign requested address: connect
Unable to read repository at http://download.eclipse.org/technology/epp/packages/indigo/content.xml.
Cannot assign requested address: connect
Unable to read repository at http://andrei.gmxhome.de/eclipse/site.xml.
Cannot assign requested address: connect
Unable to read repository at http://download.eclipse.org/mylyn/releases/indigo/compositeContent.xml.
Cannot assign requested address: connect
Unable to read repository at http://regex-util.sourceforge.net/update/content.xml.
Cannot assign requested address: connect
Unable to read repository at http://download.eclipse.org/webtools/repository/indigo/compositeContent.xml.
Cannot assign requested address: connect
Unable to read repository at http://download.eclipse.org/technology/epp/packages/indigo/R/content.xml.
Cannot assign requested address: connect
Unable to read repository at http://download.eclipse.org/releases/indigo/content.xml.
Cannot assign requested address: connect

Само окно с ошибкой представлено на скриншоте:
Ошибка загрузки сайтов обновленийАналогичное сообщение о том, что Eclipse не может найти сайты с обновлениями, получаем и при добавлении какого-нибудь Update сайта для установки дополнений в Eclipse.
Решение проблемы оказалось как-всегда не тривиальным, но легким. Для этого необходимо открыть файл настроек Eclipse — eclipse.ini и вставить в конец него следующую строку:

-Djava.net.preferIPv4Stack=true

Из-за чего собственно проблема? Да из-за того, что попытки достучатся до сайта обновлений происходили по протоколу IPv6, а он у провайдера не поддерживается, поэтому мы принудительно заставляем использовать протокол IPv4.

Теперь после сохранения настроек и перезапуска Eclipse — никаких ошибок об отсутствующем сайте обновлений мы не получим.

Куда «посылать» искать информацию или «давай поищу вместо тебя в google»

Часто на форумах, в чатах, в ICQ и Skype нам задают много вопросов, которые вполне, при желании, можно было бы найти в Google, но по каким-то причинам не сделали этого. В таких случаях я предлагаю давать ссылки через сервис http://lmgtfy.com/ (На оригинале пишится как: Let me google that for you)

Для использования сервиса, просто вставляете ссылку в строку поиска, которая сделана как google и сервис Вам выдаст ссылку, перейдя по-которой человек, для которого Вы искали, увидит как пользоваться Google.

Библиотека тегов PrimeFaces

Categories: Java, JQuery, Other
Comments: No Comments
Published on: 17.10.2011

Привожу ссылку на достаточно хорошую библиотеку тегов и к тому же — бесплатную !
Библиотека находится здесь — http://www.primefaces.org

Презентацию можно увидеть на видео чуть ниже, в общем мне библиотека очень даже понравилась

Итерация по всем ключам Map

Categories: Java
Comments: No Comments
Published on: 14.10.2011

Итерация (т.е. последовательный перебор всех ключей) класса, который реализует Map интерфейс в Java, можно осуществить такими способами:

Map map = new HashMap();
for (Map.Entry<K,V> entry : map.entrySet()){
 // entry.getKey().customMethod(entry.getValue());
}

или таким

Map map = new HashMap();
for (K key : map.keySet()){
map.get(key).customMethod(entry.getValue());
}

Включение поддержки Java в браузере Firefox

Когда возникает вопрос запуска Java приложений в браузере Firefox, то нужно знать лишь одно:
- если у Вас Firefox 3.6 и выше, то для запуска Java приложений в браузере у Вас должна быть установлена Java версии 6 апдейт 10 и выше (т.е. Java 1.6.10 и выше);
- если версия Firefox ниже 3.6 , то версия Java — любая.
Для включения поддержки Java в Firefox, потребуется сделать следующее (инструкция для windows):

  1. Идём в ПускПанель приложений > Java (или может быть другое название — Java Control Panel) > Advance tab > Java Plug-in и отмечаем браузеры в которых хотим разрешить работу Java (браузеры при этом должны быть выключены), см. картинку ниже и делаем как на ней:
    Как должно быть отмечено
  2. После сохранения идём в Firefox и в разделе плагинов (Меню > Дополнения ) просто включаем появившейся плагин Java.

Теперь у Вас включена поддержка Java в браузере Firefox.

Бесплатный конструктор баз данных

Часто при проектировании баз данных встаёт вопрос о среде, где их можно было бы удобно проектировать, изменять, дополнять, менять связи между таблицами и желательно, чтобы это всё работало визуально, т.е. требуется конструктор баз данных. Такой конструктор баз данных есть, он  доступен из браузера он-лайн, т.е. теперь можно проектировать в любом месте где имеется интернет. Данный конструктор позволяет строить таблицы, изменять связи между ними, визуально двигать таблицы и генерировать SQL код для создания созданной схемы. Ниже на скриншоте можно посмотреть как оно вообще выглядит. Для маленького проекта вполне удобно использовать, для промышленных же целей к сожалению данный инструмент не пригоден, хотя кто-знает. Для входа в данный конструктор баз данных Вам необходимо вначале обзавестись почтовым ящиком который использует google account, без него Вы попросту не залогинитесь в этом конструкторе.

Адрес ресурса: http://dbdsgnr.appspot.com/

Windows — панель в стиле MacOS

Некоторые до сих пор не знают, что и для Windows есть панель в стиле MacOS, правда, хранить на ней можно лишь иконки программ которые Вы часто запускаете и которые Вам приятно видеть перед глазами, но это ни сколько не умиляет возможностей панели. Панель очень удобная в использовании и после того, как к ней привыкнешь, то используя другой компьютер без такой панели Вы сразу почувствуете, что чего-то не хватает. Панель называется RocketDock. Внешний вид самой панели вот такой (нажмите на картинку и увидите панель в действии, размер картинки 310кб):

Панель для Windows в стиле MacOSСаму панель RocketDock можно скачать кликнув по этой ссылке: СКАЧАТЬ

page 1 of 3»
EnglishFrenchGermanItalianPortugueseRussianSpanish

Welcome , today is Воскресенье, 29.01.2012