Архив

Архив раздела ‘Soft’

Как запустить FrameGrabber для OV7670

6 Июнь 2016 18 comments

В одной из своих статей я приводил пример, как работать с камерой OV760. Для облегчения понимая, клиентская программа была реализована на Java, который проще в использовании, чем C++. Но это вызвало трудности у новичков. Ниже будет описано, как правильно запускать программку FrameGrabber из примера.

frame-grabber-main

Читать далее…

Categories: Hard, Soft Tags: ,

Детектирование звука на Java

22 Март 2016 3 comments

После небольших экспериментов с детектором движения на java пришла пора детектировать звук. Для этой задачи можно воспользоваться Java SDK, пакет «javax.sound.sampled». Работа будет основана на примере записи звука в javа. Для этого придётся разобраться, какая информация приходит в AudioInputStream.

Sound detector

Читать далее…

Categories: Soft Tags: ,

Определение движения на java с помощью вебкамеры и OpenCV

12 Март 2016 2 comments

После попыток получить картинку с помощью Arduino, возник вопрос, а как сделать то же самое, но на обычном компьютере. Пришлось перебрать несколько вариантов и остановиться на библиотеке OpenCV, которая в отличие от java media framework, активно развивается.

OpenCV and Java

Библиотека оказалась полностью написана на c++, имеет реализации для разных платформ и предоставляет обертку для работы из Java через native интерфес.

Если у вас нет опыта работы с этом библеотекой, я бы советовал начать с добавления opencv в вашу IDE. Этот шаг приводиться не будет, т.к. он достаточно хорошо описан в документации. Далее можно попробовать получить картинку с камеры. После этого можно приступать к дальнейшему чтению статьи.

Читать далее…

Categories: Soft Tags: , ,

Список существительных русского языка в txt

12 Ноябрь 2015 1 комментарий

Для одного проекта понадобился список существительных русского языка. Оказалось, что не так и просто его найти, т.к. много списков с глаголами, прилагательными и просто неполные словари, в которых отсутствуют популярные слова. Ниже придлагается для скачивания список существительных в формате txt.  Список включает существительные, названия стран, городов и имена.

Список существительных

Как разбирать ошибки SSL в Java приложении

31 Октябрь 2015 Нет комментариев

SSLНедавно пришлось делать миграцию приложения, которое работает через OpenAM, с WAS6 на WAS8. Особенность миграции было изменение версии JDK и сервера, а это могло стать причиной проблем в приложении.

Неприятности не заставили себя ждать. При первом запуске приложения появилась ошибка “Error decrypting SAML message”. Подозрения сразу пали на SSL, но текст ошибки нам ничего не говорил, поэтому пришлось смотреть глубже. Для этого хорошо подходит особый параметр JVM (его нужно прописать в параметрах процесса сервера, используя консоль администратора).

-Djavax.net.debug=ssl:handshake

С его помощью удалось получить больше деталей.

*** ClientHello, SSLv3

main, WRITE: SSLv3 Handshake, length = 81
main, READ: SSLv3 Alert, length = 2
main, RECV TLSv1 ALERT: fatal, handshake_failure

Читать далее…

Categories: Soft Tags: , , , ,

Как запустить Word документ из Java

Java является замечательным кроссплатформенным языком программирования, но не всё можно решить только его средствами. Порой возникают проблемы, которые можно решить только в связке с другими технологиями. И одной из такой проблем является открытие Word документа из Java. Всё можно ещё усложнить, если нужно не только открыть, а запустить шаблон и при этом вызвать макрос. Такая задача становится неподъемной для стандартных средств. Решить её можно просто прибегнув к COM объектам. Об этом и пойдёт речь.

Читать далее…

Categories: Soft Tags: , ,

Основные ошибки Windows

7 Август 2015 1 комментарий

Сегодня пришлось исследовать проблему с вызовом метода CoCreateInstanceEx, который выдавал ошибку 800401f0. Оказалось, что найти описание кодов достаточно сложно. Поэтому привожу список некоторых из них ниже.

Читать далее…

Categories: Soft Tags: ,

Как получить список бесплатных proxy

24 Январь 2015 Нет комментариев

Как получить список бесплатных proxyКак хорошо уметь писать!
Не надо к другу приставать,
Не надо умолять админа:
«Ну, напиши ты скрипт, скотина».
Не надо звать,
Не надо ждать,
А можно взять
И написать!

Именно такие строки приходят в голову, когда понимаешь, как хорошо уметь программировать.

Одним прекрасным днём возникла необходимость получить список proxy, которые можно использовать для скачивания картинок с хостинга файлов. Сразу же возник вопрос, где взять список proxy адресов, которые можно использовать для этой цели.

Читать далее…

Categories: Soft Tags: ,

rollback() vs setRollbackOnly()

20 Январь 2015 Нет комментариев

Вот и случился постыдный баг на WAS6: пользователь видит вот такое сообщение вместо реальной ошибки. Особенно противно, когда понимаешь, что это сделал ты из-за своей лени, просто не хотелось проверять это место и вот результат.

…
java.lang.IllegalStateException
>> at com.ibm.ejs.container.BMStatelessBeanO.setRollbackOnly(BMStatelessBeanO.java:69)
…

Небольшой пример кода, где происходит ошибка

this.context.setRollbackOnly(); //Баг
logger.info(“Some error"));
throw new Exception("Some error");

Читать далее…

Categories: Soft Tags: , ,

ClassCastException: com.sun.jndi.ldap.LdapCtx incompatible with org.springframework.ldap.core.DirContextAdapter

17 Январь 2015 Нет комментариев

Наше jee приложение работает на WAS 6 и использует LDAP для авторизации. Работа с LDAP реализована с помощью стандартных классов Spring: BindAuthenticator и DefaultLdapAuthoritiesPopulator.

Схема классов в Spring

Читать далее…

Categories: Soft Tags: , , ,