Корисні посилання та документація - LamronNu/i GitHub Wiki

Ссылки на используемые компоненты и примеры:

JAVA

Activiti

Доступні стандартні сервіси описані в документації: http://www.activiti.org/userguide/#_rest_api

Приклади:

  • виклик custom-сервісу, запуск бізнес-процесу за ключем: /service/startProcessByKey/citizensRequest
  • виклик стандартного API, отримання список активних процесів: /service/runtime/process-instances
  • отримання списку останніх процесів: /service/repository/process-definitions /service/repository/process-definitions?latest=true (http://activiti.org/userguide/index.html#_process_definitions)

Контролер, в якому можна реалізувати потрібні нам запити, яких немає у стандартному activiti-rest org.activiti.rest.controller.ActivitiRestApiController

REST для activiti https://github.com/Activiti/Activiti/tree/master/modules/activiti-webapp-rest2

Manual tests для REST: Використовуйте SoapUI http://sourceforge.net/projects/soapui/?source=typ_redirect

Документация по авторизации через BankID:

Официальная Документация BankID Описание работы Сервиса BankID для аутентификации клиента и получение информации о нем:
v.2.01 (22.05.2015)
v.2.02 (04.06.2015)
v.3.00 (07.07.2015)
v.3.01 (17.07.2015)

Сервера BankID

  • полигон: bankid.privatbank.ua
  • продакшен: bankid.org.ua

Алгоритм работы BankID


1. Перейти по ссылке

Тестовая авторизация в приват 24:

  • логин: +380102030405
  • пароль: value
  • SMS: 123456

Получить код, сходить с ним за токеном и вызвать метод, где

  • client_id - id приложения, предварительно зарегенного.
  • redirect_uri - это урл, на который редиректим клиента после аунтетификации.

Через него же мы и передадим код авторизации.

https://vash/url/dlia/redirecta?code=9ma7kO


2. Получить запрос

GET запрос на получение аксеесс токена.

В запросе передаете

  • код авторизации
  • свой id
  • свой secret(пароль, предварительно полученный в п.1)
  • и опять таки тот-же свой урл для редиректа

https://bankid.privatbank.ua/DataAccessService/oauth/token?grant_type=authorization_code&client_id=dniprorada&client_secret=NzVmYTI5NGJjMDg3OThlYjljNDY5YjYxYjJiMjJhNA==&code=&redirect_uri=https://bankid.privatbank.ua/DataAccessService/acceptCode 7S2a3U

В ответ получете аксесс и рефреш токен в таком формате

{"access_token":"caef896e-3d84-4c16-8a2b-f4f2264db6b1","token_type":"bearer","refresh_token":"5fd85cd8-2e71-4921-b102-eecfb0024e1a","expires_in":179,"scope":"read trust write"}

После чего можно выполнять запрос непосредственно на получение данных https://bankid.privatbank.ua/DataAccessService/checked/fio?access_token=caef896e-3d84-4c16-8a2b-f4f2264db6b1

  • client_id=dniprorada
  • секрет NzVmYTI5NGJjMDg3OThlYjljNDY5YjYxYjJiMjJhNA==

Сейчас

  • аксесс токен - 3мин
  • рефреш - по которому можно получить свежий аксесс - 5 мин

Документация и дополнительные возможности

Spring Profiles (профилированные сборки)

В Spring есть собственный механизм профайлов. Выбор активного пофайла влияет на DI-контейнер во время выполнения. Активными могут быть несколько профайлов одновременно. Для задания текущего активного пофайла необходимо установить в системном файле -Dspring.profiles.active= "test" (имя пофайла ) Этот пофайл будет инициализироваться при старте , если указать в переменной его имя.

Для Tomcat Это файл setenv.bat свойство устанавливаем в CATALINA_OPTS =-Dspring.profiles.active= "test"

В нашем проекте файл ../resources: activiti-custom-context.xml ( и )

имя пофайла Для боевого запуска и для его инициализации необходима установить в setenv.bat set "CATALINA_OPTS=-Dspring.profiles.active="prod"" подтягивает боевые настройки, указанные в файлах .properties, которые подкладываем в папку conf на сервере tomcat

имя пофайла Для тестового запуска и для его инициализации необходима установить в setenv.bat set "CATALINA_OPTS=-Dspring.profiles.active="test""

подтягивает тестовые настройки, указанные в файлах .properties, которые находятся в classpath

# Дополнительные возможности по NodeJS и проектам на нем (если необходимо):
  • устанавливаем bower proxy (ссылка для подробного описания http://bower.io/docs/config/#proxy):
  • находим файл. bowerrc и добавляем две строки:

Установка на web-сервере проекта NodeJS (с компилированием):

  • устанавливаем сам сервер NodeJS: инструкция

  • в корне проекта выполняем: grunt build (создается папка dist)

  • копируем папку dist на сервер и запускаем приложение с помощью pm2 (команды под линукс).
    Пример:
    sProject='dashboard-js' sHost=[username]@[host-address] sDate=date +%m.%d.%Y.%H-%M sPathDist='~/web/'$sProject'-'$sDate rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress dist/ $sHost:$sPathDist sCommandSSH='pm2 stop '$sProject'; pm2 delete '$sProject'; cd '$sPathDist'; npm install; pm2 start process.json; pm2 info '$sProject ssh $sHost $sCommandSSH
    (также останавливать и запускать сервер можно скриптами в проекте: /_/_server_stop.sh и /_/_server_start.sh)

  • команды PM2: Evironment-on-an-ubuntu-vps

# Установка PHP:

Встановлюємо веб сервер та Php

У мене локально встановлені nginx + php-fpm різниця apache + php для локальної машини хіба що в налаштуванні віртуального хосту. Встановити

"Витягуємо" код з репозиторію

mkdir -p ~/project/e-government-ua

cd project/e-government-ua

git clone https://github.com/e-government-ua/i.git .

git checkout test

встановлюємо composer та встановлюємо залежності

composer

cd portal-php/application/

composer.phar update

якщо обірветься з помилкою Package yiisoft/jquery is abandoned. запустіть composer.phar global require "fxp/composer-asset-plugin" і повторіть composer.phar update

Налаштовуємо віртуальних хост веб сервера

cd /etc/nginx/sites-available/

sudo nano e-gov-php.local

server {

    listen   80;
    root /home/USER_NAME/project/e-government-ua/portal-php/public_html;
    server_name e-gov-php.local;
    index       index.php;

    location / {
            try_files $uri $uri/ /index.php?$args;
    }

    location ~ .php$ {
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            # fastcgi_pass 127.0.0.1:9000; залежить від налаштувань php-fpm
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

}

cd /etc/nginx/sites-enabled/

sudo ln -s /etc/nginx/sites-available/e-gov-php.local

sudo nano /etc/hosts

Додаємо в кінець файла

127.0.1.1 e-gov-php.local

sudo service nginx restart

Відкриваємо e-gov-php.local

Доповнюйте ...

Гайд по налаштуванню робочого оточення з використанням вбудованого веб-сервера PHP на Ubuntu (Debian-like) системах

Перевага цього методу у мінімальному налаштуванні всього потрібного для швидкого старту розробки php-порталу. Спочатку встановлюємо консольну версію інтерпретатора PHP

sudo apt-get install php5-cli

Встановлюємо Git та Composer

sudo apt-get install git

sudo apt-get install curl

curl -sS https://getcomposer.org/installer | php

Раджу перенести composer в глобальний каталог для зручності

sudo mv composer.phar /usr/local/bin/composer.phar

Клонуємо репозіторій, встановлюємо потрібні залежності для Yii та встановлюємо безпосередньо сам Yii за допомогою composer

git clone https://github.com/e-government-ua/i.git

cd i

git checkout test

cd portal-php/application

composer.phar global require "fxp/composer-asset-plugin:1.0.0"

composer.phar update

Запускаємо вбудований в PHP веб-сервер

cd ../public_html

php -S 127.0.0.1:8080

Заходимо в браузері на 127.0.0.1:8080, все повинно працювати.

⚠️ **GitHub.com Fallback** ⚠️