Tickets - postup inštalácie

Z Hotelové systémy - Wiki
Skočit na navigaci Skočit na vyhledávání

<viewsecurity consultant />

Vytvorenie databázovej schémy a používateľa

TitanTickets využíva postgres. Po nainštalovaní je potrebné vytvoriť databázu, používateľ a schému podľa skriptov nižšie.

\connect postgres
CREATE ROLE titan_tickets WITH PASSWORD 'titan_tickets' CREATEDB CREATEROLE SUPERUSER LOGIN;
CREATE DATABASE titan_tickets_01 WITH OWNER titan_tickets; --ENCODING 'utf8';
\connect titan_tickets_01
CREATE SCHEMA titan_tickets AUTHORIZATION titan_tickets;
GRANT ALL PRIVILEGES ON DATABASE titan_tickets_01 TO titan_tickets;
GRANT ALL PRIVILEGES ON SCHEMA titan_tickets TO titan_tickets;
CREATE LANGUAGE plpgsql;

Konfigurácia security vrstvy v JBoss

Tieto sa dopĺňajú do súboru standalone.xml, ktorý je v ..\jboss-eap-6.2\standalone\configuration\, medzi tagy <security-domains>.

<subsystem xmlns="urn:jboss:domain:security:1.2">
   <security-domains>
       <security-domain name="titan-tickets" cache-type="default">
           <authentication>
               <login-module code="Database" flag="required">
                   <module-option name="dsJndiName" value="java:jboss/datasources/PostgreSQL-TitanTickets"/>
                   <module-option name="principalsQuery" value="select PASSWORD from USER_APP where LOGIN=?"/>
                   <module-option name="rolesQuery" value="select B.CODE, cast('Roles' as varchar) from USER_APP A join USER_AUTHORITY B on A.USER_AUTHORITY_ID=B.ID where A.LOGIN=?"/>
                   <module-option name="hashAlgorithm" value="MD5"/>
                   <module-option name="hashEncoding" value="base64"/>
                   <module-option name="hashCharset" value="UTF-8"/>
               </login-module>
           </authentication>
       </security-domain>
       <security-domain name="EncryptedPassword-TitanTickets">
           <authentication>
               <login-module code="SecureIdentity" flag="required">
                   <module-option name="username" value="titan_tickets"/>
                   <module-option name="password" value="192eef7eb3b720e84ef8eecb85dc4d86"/>
               </login-module>
           </authentication>
       </security-domain>
   </security-domains>
</subsystem>

Konfigurácia datasource vrstvy pre JBoss

Tieto sa dopĺňajú do súboru standalone.xml, ktorý je v ..\jboss-eap-6.2\standalone\configuration\, medzi tagy <datasources>.

<subsystem xmlns="urn:jboss:domain:datasources:1.2">
   <datasources>
       <datasource jndi-name="java:jboss/datasources/PostgreSQL-TitanTickets" pool-name="PostgreSQL-TitanTickets" enabled="true" use-java-context="true">
           <connection-url>jdbc:postgresql://localhost:5432/titan_tickets_01</connection-url>
           <driver>postgresql</driver>
           <pool>
               <min-pool-size>10</min-pool-size>
               <max-pool-size>100</max-pool-size>
               <prefill>true</prefill>
           </pool>
           <security>
               <security-domain>EncryptedPassword-TitanTickets</security-domain>
           </security>
       </datasource>
       <drivers>
           <driver name="postgresql" module="org.postgresql">
               <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
           </driver>
       </drivers>
   </datasources>
</subsystem>

Systémové parametre pre JBoss

Tieto sa dopĺňajú do súboru standalone.xml, ktorý je v ..\jboss-eap-6.2\standalone\configuration\, medzi tagy <system-properties>. Pozor, ak zákazník na tom istom jBoss používa aj Kassandru, potom už tam sú nastavenia pre Kassandru a tieto nesmú byť zmazané ani upravované.

<system-properties>
   <property name="org.apache.el.parser.COERCE_TO_ZERO" value="false"/>
   <property name="sk.asol.titan.tickets.maxTicketsPerEvent" value="500000"/>
   <property name="sk.asol.titan.tickets.gridMaxRowsPerPage" value="20"/>
</system-properties>

Modules

V prípade, že je problém so štartom a deploy Tickets, potom postačuje prekopírovať celý adresár org do adresára modules (..\jboss-eap-6.2\modules\) v jboss.

deploy Tickets.war

Pri štarte aplikácie resp. pri deployi warka sa spustia update-y, ktoré vytvoria základnú DB štruktúru.