вторник, 27 ноября 2012 г.

Как научить NetBeans работать с интерфейсом только на английском языке


NetBeans определяет язык по настройкам локали. Если локаль русская, он и подсунет русский язык в интерфейс. Как его от этого отучить.

в каталоге с установленным NetBeans находит etc/netbeans.conf

Добавляем в конец строки netbeans_default_options="....." параметра  --locale en:US
Т.е. получим что-то вроде

netbeans_default_options="......... --locale en:US"

четверг, 15 ноября 2012 г.

Convert EPS to JPG


Имеем исходный файл myfile.eps, получаем myfile.jpg

gs -sDEVICE=jpeg -dJPEGQ=100 -dNOPAUSE -dBATCH -dSAFER -r300 -sOutputFile=myfile.jpg myfile.eps

При этом создается файл с лишними полями и т.п. Подрезать его можно с помощью

mogrify -trim -resize 800x600 myfile.jpg

среда, 14 ноября 2012 г.

udev и права на устройство


Если потребовалось задать права при создании (подключении) устройства usb, можно добавить правило. Создаем в /etc/udev/rules.d файл с именем 55-usbhid.rules

и содержанием:

SUBSYSTEM=="usb", ATTR{bInterfaceClass}=="03", MODE:="0666"

либо 


SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="05d0", MODE:="0666"

первый вариант всем новым hid присвоит 666
второй вариант - только заданному в vendor/product

И перезапускаем udev
/etc/init.d/udev restart

пятница, 9 ноября 2012 г.

Glassfish 3.1.2 и проблема mysql авторизации

Тема уже не новая, но нашелся досадный баг. Все настроено по многочисленным мануалам и не раз, но логин и пароль пользователя не проходит.

В расширенных логах glassfish отыскалась такая строка:

Caused by: java.sql.SQLException: No database selected

Скорее всего при установке соединения (JDBC Connection Pool) не подхватывает имя базы, хотя ping честно работает. В качестве обхода этого явления можно отредактировать параметр URL в виде:

jdbc:mysql://127.0.0.1:3306/yourbase?user=user&password=password

обратите внимание, URL все большие буквы, потому как есть там и Url - он не влияет на результат.

NetBeans и ошибка "Not a valid GlassFish Server installation"

Проблема получена с NetBeans 7.1.1 и Glassfish 3.1.2.2

Если Вы попытались настроить в NetBeans новый сервер Tools->Servers->Add server->Glassfish Server 3+ и заполучили ошибку "Not a valid GlassFish Server installation" то решить можно довольно не тривиальным способом - переименовать файл 

...glassfish3/glassfish/lib/install/applications/__admingui/WEB-INF/lib/console-core-3.1.2.1-SNAPSHOT.jar

в 

console-core-3.1.2.jar

Собственно на этом все, ошибка устранена. Весьма досадное упущение со стороны NetBeans

Glassfish и non-root


Создаем пользователя glassfish (или как вам больше нравится):

groupadd glassfish
useradd -s /bin/bash -d /home/glassfish -m -g glassfish glassfish

необходимо изменить собственника на каталог с установкой glassfish - к примеру /opt/glassfish3


chown glassfish.glassfish /opt/glassfish3/ -R

Теперь запустим и остановим вручную из-под нашего юзера:

 su -l glassfish -c "/opt/glassfish3/glassfish/bin/asadmin start-domain"

получим запрос на ввод пароля для admin
Enter an admin password for user "admin"> 
вводим пароль дважды и проверим на порту 8080 ответ от сервера и на 4848 войти как "admin" 
(в дальнейшем сменить пароль можно "asadmin> change-admin-password" )
Если на 4848 логинится с внешнего ip - получим ошибку "Configuration Error
Secure Admin must be enabled to access the DAS remotely. " - решается с помощью
asadmin> enable-secure-admin
вводим логин admin и пароль и перезапускаем (stop-domain, start-domain)
и если все нормально - останавливаем:

su -l glassfish -c "/opt/glassfish3/glassfish/bin/asadmin stop-domain"


Изменим пароль "master":

/opt/glassfish3/glassfish/bin/asadmin change-master-password --savemasterpassword=true
вводим старый пароль "changeit", затем вводим новый два раза.


Теперь можно добавить скрипт автоматического запуска в /etc/init.d - соотвественно отредактировав его.
#!/bin/sh
GF_USER=glassfish
GF_HOME=/opt/glassfish3/glassfish
ASADMIN=$GF_HOME/bin/asadmin
DOMAIN=domain1
case $1 in
start)
start-stop-daemon -c $GF_USER --start --exec $ASADMIN start-domain $DOMAIN
;;
stop)
start-stop-daemon -c $GF_USER --start --exec $ASADMIN stop-domain $DOMAIN
;;
restart)
start-stop-daemon -c $GF_USER --start --exec $ASADMIN stop-domain $DOMAIN
start-stop-daemon -c $GF_USER --start --exec $ASADMIN start-domain $DOMAIN
;;
*)
  echo "Usage: /etc/init.d/glassfish3 {start|stop|restart}"
  exit 1
;;
esac
exit 0

Меняем права для запуска:

sudo chmod a+x /etc/init.d/glassfish3
И добавляем, если нужно, в автозагрузку:

sudo update-rc.d glassfish3 defaults