Руководство системного программиста » История » Версия 29
Rustam Usmanov, 16.02.2016 14:49
| 1 | 1 | Rustam Usmanov | h1. Руководство системного програмиста |
|---|---|---|---|
| 2 | |||
| 3 | {{toc}} |
||
| 4 | |||
| 5 | h2. Аннотация |
||
| 6 | |||
| 7 | В данном документе приведены общие сведения о программе "Web-сервисы Руслан", ее структура. Описаны порядок настройки и проверки программы, дополнительные возможности. |
||
| 8 | |||
| 9 | 26 | Rustam Usmanov | h2. Глава 1. Общие сведения о программе |
| 10 | 1 | Rustam Usmanov | |
| 11 | 16 | Rustam Usmanov | Программа "Web-сервисы Руслан" предназначена для обеспечения простого и удобного доступа удалённых пользователей к ресурсам АБИС "Руслан". Удалёнными пользователями могут являться любые пользователи сервера приложений "WildFly":http://wildfly.org, на базе которого функционирует программа. Ресурсами АБИС "Руслан" являются БД, поддерживаемые сервером "Руслан" и записи, содержащиеся в этих базах данных. Доступ к ресурсам заключается в выполнении над ними следующих операций: |
| 12 | 11 | Rustam Usmanov | * Поиск (по протоколу "SRU 2.0":http://www.loc.gov/standards/sru/sru-2-0.html) |
| 13 | 15 | Rustam Usmanov | * Извлечение, модификация, создание, удаление (по протоколу "WebDAV":http://tools.ietf.org/html/rfc4918) |
| 14 | 16 | Rustam Usmanov | * Заказ услуги (бронирование, копия) по найденному библиографическому описанию (по протоколу "NCIP v. 2.0.2":http://www.ncip.info/) |
| 15 | 1 | Rustam Usmanov | |
| 16 | 11 | Rustam Usmanov | Операции, связанные с чтением данных с ограниченным доступом и записью данных, требуют наличия соответствующих прав у пользователя, а следовательно и идентификации пользователя. Идентификация пользователя осуществляется при помощи провайдера идентификации по протоколу SAML 2.0. |
| 17 | 1 | Rustam Usmanov | |
| 18 | 11 | Rustam Usmanov | Взаимодействие с сервером "Руслан" осуществляется по протоколу Z39.50. |
| 19 | |||
| 20 | 12 | Rustam Usmanov | Ресурсы представляются в двух форматах: XML и JSON, в зависимости от предпочтений пользователя. |
| 21 | 1 | Rustam Usmanov | |
| 22 | 17 | Rustam Usmanov | Программа может функционировать на любых технических средствах под управлением сервера приложений *WildFly 8.**. Обязательным требованием для выполнения программы является возможность сетевого взаимодействия с сервером "Руслан" и с сервером *Oracle*, используемым АБИС "Руслан". |
| 23 | 12 | Rustam Usmanov | |
| 24 | 26 | Rustam Usmanov | h2. Глава 2. Структура программы |
| 25 | 1 | Rustam Usmanov | |
| 26 | 12 | Rustam Usmanov | Программа "Web-сервисы Руслан" состоит из следующих компонентов: |
| 27 | |||
| 28 | 14 | Rustam Usmanov | # @jrzs-ear*.ear@ - Z39.50-клиент, реализованный в виде EJB. |
| 29 | 12 | Rustam Usmanov | # @ridp*.war@ - провайдер идентификации. |
| 30 | # @rrs-web*.war@ - Web-интерфейс ресурсов АБИС "Руслан" |
||
| 31 | |||
| 32 | 26 | Rustam Usmanov | h2. Глава 3. Настройка программы |
| 33 | 1 | Rustam Usmanov | |
| 34 | 26 | Rustam Usmanov | h3. 3.1. Установка программы |
| 35 | 19 | Rustam Usmanov | |
| 36 | 16 | Rustam Usmanov | Установка программы заключается в "развёртывании компонентов программы на сервере приложений WildFly":https://docs.jboss.org/author/display/WFLY8/Application+deployment. |
| 37 | 1 | Rustam Usmanov | |
| 38 | 26 | Rustam Usmanov | h3. 3.2. Настройка программы |
| 39 | 19 | Rustam Usmanov | |
| 40 | 26 | Rustam Usmanov | h4. 3.2.1. Настройка сервера приложений WildFly |
| 41 | 21 | Rustam Usmanov | |
| 42 | 26 | Rustam Usmanov | h5. 3.2.1.1. Настройка источников данных |
| 43 | 21 | Rustam Usmanov | |
| 44 | 25 | Rustam Usmanov | Все источники данных Oracle, используемые сервером Руслан, должны быть "включены в конфигурацию сервера приложений WildFly":https://docs.jboss.org/author/display/WFLY8/DataSource+configuration. Следует обратить внимание на то, что настройка источников данных предусматривает "установку":https://docs.jboss.org/author/display/WFLY8/Application+deployment "JDBC драйвера Oracle":http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html. Пример результата настройки источников данных, отражённого в конфигурационном файле сервера приложений WildFly, приведён в [[Руководство системного програмиста#Приложение 1. Конфигурационный файл сервера приложений WildFly|Приложении 1]]. |
| 45 | 20 | Rustam Usmanov | |
| 46 | 29 | Rustam Usmanov | h5. 3.2.1.2 Настройка доменов безопасности |
| 47 | 28 | Rustam Usmanov | |
| 48 | В "подсистему безопасности сервера приложений WildFly":https://docs.jboss.org/author/display/WFLY8/Security+subsystem+configuration необходимо "добавить два домена безопасности":https://docs.jboss.org/author/display/WFLY8/Security+subsystem+configuration#Securitysubsystemconfiguration-securitydomains с именами @idp@ и @sp@. |
||
| 49 | |||
| 50 | 4 | Rustam Usmanov | h2. Перечень сокращений |
| 51 | 1 | Rustam Usmanov | |
| 52 | table{border:none}. |
||
| 53 | 18 | Rustam Usmanov | |EJB|Enterprise JavaBeans| |
| 54 | 1 | Rustam Usmanov | |JSON|JavaScript Object Notation| |
| 55 | 16 | Rustam Usmanov | |NISO|National Information Standards Organization| |
| 56 | |NCIP|NISO Circulation Interchange Protocol| |
||
| 57 | 1 | Rustam Usmanov | |XML|The Extensible Markup Language| |
| 58 | 19 | Rustam Usmanov | |АБИС|Автоматизированная библиотечно-информационная система| |
| 59 | 1 | Rustam Usmanov | |БД|База данных| |
| 60 | 23 | Rustam Usmanov | |
| 61 | h2. Приложение 1. Конфигурационный файл сервера приложений WildFly |
||
| 62 | |||
| 63 | h3. Источники данных |
||
| 64 | <pre><code class="xml"> |
||
| 65 | <subsystem xmlns="urn:jboss:domain:datasources:2.0"> |
||
| 66 | <datasources> |
||
| 67 | <datasource jta="false" jndi-name="java:jboss/datasources/ruslan" pool-name="ruslan" enabled="true" use-ccm="false"> |
||
| 68 | <connection-url>jdbc:oracle:thin:@oracle.test.org:1521/ORA11</connection-url> |
||
| 69 | <driver-class>oracle.jdbc.OracleDriver</driver-class> |
||
| 70 | <driver>ojdbc6.jar</driver> |
||
| 71 | <security> |
||
| 72 | <user-name>libmgr</user-name> |
||
| 73 | <password>libmgr_pwd</password> |
||
| 74 | </security> |
||
| 75 | <validation> |
||
| 76 | <validate-on-match>false</validate-on-match> |
||
| 77 | <background-validation>false</background-validation> |
||
| 78 | </validation> |
||
| 79 | <statement> |
||
| 80 | <share-prepared-statements>false</share-prepared-statements> |
||
| 81 | </statement> |
||
| 82 | </datasource> |
||
| 83 | <datasource jta="false" jndi-name="java:jboss/datasources/lib1" pool-name="lib1" enabled="true" use-ccm="false"> |
||
| 84 | <connection-url>jdbc:oracle:thin:@oracle.test.org:1521/ORA11</connection-url> |
||
| 85 | <driver-class>oracle.jdbc.OracleDriver</driver-class> |
||
| 86 | 27 | Rustam Usmanov | <new-connection-sql>alter session set current_schema=lib1</new-connection-sql> |
| 87 | 23 | Rustam Usmanov | <driver>ojdbc6.jar</driver> |
| 88 | <security> |
||
| 89 | <user-name>lib1</user-name> |
||
| 90 | <password>lib1_pwd</password> |
||
| 91 | </security> |
||
| 92 | <validation> |
||
| 93 | <validate-on-match>false</validate-on-match> |
||
| 94 | <background-validation>false</background-validation> |
||
| 95 | </validation> |
||
| 96 | <statement> |
||
| 97 | <share-prepared-statements>false</share-prepared-statements> |
||
| 98 | </statement> |
||
| 99 | </datasource> |
||
| 100 | </datasources> |
||
| 101 | </subsystem> |
||
| 102 | </code></pre> |