Архив

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

Heroku.com: как получить реализацию Websockets на java (JSR-365 подход)

23 Октябрь 2016 Нет комментариев

Я уже описывал, как удалось запустить java веб-приложение с Websockets на Heroku. Этот подход основывается на запуске war файла со legacy кодом для tomcat 7. Для современных приложение такое решение не подходит. Хочется, чтоб код использовал JSR 365.

Heroku.com

 

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

Categories: Soft Tags: , , ,

Heroku.com: как получить реализацию Websockets на java (native подход)

22 Октябрь 2016 Нет комментариев

Для реализации одной идеи возникла потребность разместить в интернете где-нибудь приложение с поддержкой Websockets, которое будет доступно из любого места. Главное условие — бесплатно. Ранее я уже делал вещание с камеры на websocket и java. Этот пример с небольшими изменениями я планировал попробовать разместить в глобальной сети. В качестве целевой площадки выбор пал на Heroku.com.

Heroku.com: как получить Websocket на java

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

Categories: Soft Tags: , , , ,

Вещание звука через websocket, реализация на java

5 Сентябрь 2016 Нет комментариев

В прошлой статье был описан способ вещания с веб-камеры через websocket. Сейчас пришла пора попробовать организовать вещание с микрофона. Архитектура примера будет такой же, как и прошлого:

Вещание с звука через websocket, реализация на java

Сигнал с микрофона поступает прямо на сервер, где он считывается и отправляется через websocket клиенту. В качестве сервера для обработки запросов WebSocket будет использоваться Jetty, поэтому вещание звука хорошо дополняет вещание картинки. Будет достаточно доработать прошлый пример.

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

Categories: Soft Tags: , , ,

Как записать звук на Java в byte массив

28 Август 2016 Нет комментариев

Есть много задач, в которых может понадобиться передать звук в виде массива байтов через сеть. Java сильно отстала в этом вопросе и давно не развивала свой API для работы со звуком. Это вызывает трудности при решение простых на первый взгляд вопросов.

Sound recording to byte array

На сайте уже есть пример про запись звука с помощью Java. Пример простой и пишет звук только в файл.

AudioSystem.write(m_audioInputStream, m_targetType, m_outputFile);

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

Categories: Soft Tags: ,

Вещание с web-камеры через websocket, реализация на java

27 Август 2016 Нет комментариев

После эксперимента с получением картинки с помощью Java и OpenCV пришла идея организовать вещание видео на сайте своей локальной сети. Но как это проще сделать?

Сейчас Javascript достиг того уровня, когда можно не ограничиваться простой перезагрузкой картинки на странице, а воспользоваться другими более удобными методами. Мой выбор пал на относительно молодую технологию WebSockets. Она позволяет организовать duplex соединение клиент-сервер, что уменьшает потери времени на установление подключения.

Последние версии Application и Web серверов для java приложений уже поддерживают спецификацию JSR356, которая определяет стандартный интерфейс для WebSocket. Поэтому в данном примере будут очень уместно этим воспользоваться на примере Jetty

 Архитектура примера будет следующей:

Вещание с web-камеры через websocket, реализация на java

Камера будет подключена к локальному серверу, который с помощью OpenCV будет забирать картинки и через WebSocket передавать в браузер.

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

Categories: Soft Tags: , , , ,

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

6 Июнь 2016 5 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 Нет комментариев

Для одного проекта понадобился список существительных русского языка. Оказалось, что не так и просто его найти, т.к. много списков с глаголами, прилагательными и просто неполные словари, в которых отсутствуют популярные слова. Ниже придлагается для скачивания список существительных в формате 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: ,