Uppgradering från release 1.5.5 till release 2.0
Om du har version före 1.5.5 då måste man migrera hela vägen till 1.5.5
Observera att sökvägar till Tomcat installation kan variera beroende på hur detta är uppsatt i den avsedda miljön.
Notera
Efter uppgradering av Tjänsteadressingskatalogen krävs en omstart av Tomcat, känt fel som registrerats i JIRA SKLTP-307. Följande ses i loggen och kräver en omstart av Tomcat.
Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class 'com.mysql.jdbc.Driver' for connect URL 'jdbc:mysql://localhost:3306/tp_admin?autoReconnect=true'
... 1 more
Caused by: java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:264)
... 1 more
Köra en databas dump
$ mysqldump -u tp_adminuser -p <databas-namn> > <databas-namn>-dump-<datum>.sql
Köra script för att uppdatera Tjänsteadressingskatalogen med nya tabeller
Ladda ner distributionen av Tjänsteadresseringskatalogen som innehåller sql-script
wget http://central.maven.org/maven2/se/skltp/tak/tak-parent/2.0/tak-parent-2.0-dist.tar.gz
Packa upp distributionen som bla innehåller databasscript
tar -xzf tak-parent-2.0-dist.tar.gz
Kör scriptet i MySQL
$ mysql -u tp_adminuser -p mysql> use tp_admin; mysql> source tak-parent-2.0/sql/patch-tak-versioner/patch-tak-versioner.sql
Om tillägget av tabeller går fel kontakta då tjänsteplattforms-supporten.
Verifiera att databasen uppdaterats med rätt tabeller genom följande kommando:
mysql> show table status from <databas_namn>;
Föregående kommando bör resultera lika med 11 rader och Collation lika med 'utf8_general_ci'.
Köra java program för att generera publicerad version i Tjänsteadressingskatalogen databas:en
$ /tmp/ $ mkdir tak-web-extract $ cd tak-web-extract
$ wget http://central.maven.org/maven2/se/skltp/tak/tak-web/2.0/tak-web-2.0.war
$ jar -xvf /tmp/tak-web-extract/tak-web-2.0.war
mysql driver samt hibernate bibliotek behövs ladda ner.
Windows:
Spara filer under tak-web-extract/
$ "C:\\Program Files\\Internet Explorer\\iexplore.exe" https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.27/mysql-connector-java-5.1.27.jar $ "C:\\Program Files\\Internet Explorer\\iexplore.exe" https://repo1.maven.org/maven2/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar
Linux:
$ wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.27/mysql-connector-java-5.1.27.jar $ wget https://repo1.maven.org/maven2/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar
Ändra innehållet (server-url, databas-namn, användarnamn, och lösenord) i configuration fil och spara nedanstående fil som tak-config-V2.xml under tak-web-extract\
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <!-- post-processors for all standard annotations --> <context:annotation-config /> <!-- lookup all @Service, @Repository --> <context:component-scan base-package="se.skltp.tak"/> <!-- enable @Transactional processing --> <tx:annotation-driven transaction-manager="transactionManager"/> <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory" /> </bean> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="jpaVendorAdapter"> <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"> <property name="showSql" value="true" /> <property name="generateDdl" value="false" /> <property name="database" value="MYSQL" /> </bean> </property> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://<server-url>:3306/<databas-namn>" /> <property name="username" value="<användarnamn>" /> <property name="password" value="<lösenord>" /> </bean> </beans>
Sista steg:
Köra program och slå Enter för att spara genererad data till databas.
$ java -classpath "mysql-connector-java-5.1.27.jar;hibernate-entitymanager-3.4.0.GA.jar;./WEB-INF/lib/*" se.skltp.tak.core.util.InitializeDB file:./tak-config-V2.xml
Verifiera att första version (Core Version) är skapad och sparad i databas:en. Det ska returnera en rad (antal rader lika med 1) med dataSize > 0;
mysql> select id, kommentar, time, utforare, version, storlek from Pubversion;
Driftsätta tak-web
Se till att stänga ned tomcatinstansen innan nedanstående steg görs. Detta för att undvika att tomcatprocessen hänger sig vid installationen.
Ladda ner distribution av tak-web
wget http://central.maven.org/maven2/se/skltp/tak/tak-web/2.0/tak-web-2.0.war
Ta bort tidigare version, verifiera att katalogen webapps/tak-web är flyttad till en backup katalog och plockas bort av Tomcat innan nästa steg görs.
sudo rm /usr/local/apache-tomcat-6.0.37/webapps/tak-web.war
Lägg till ny version genom att kopiera tak-web.war till Tomcat webapps katalog. Observera att versionen inte skall finnas med i namnet på war-filen efter den är kopierad.
sudo cp tak-web-2.0.war /usr/local/apache-tomcat-6.0.37/webapps/tak-web.war
Verifiera installationen enligt nedan.
Driftsätta tak-services
Ladda ner distribution av tak-services
wget http://central.maven.org/maven2/se/skltp/tak/tak-services/2.0/tak-services-2.0.war
Ta bort tidigare version, verifiera att katalogen webapps/tak-services är flyttad till en backup katalog och plockas bort av Tomcat innan nästa steg görs.
sudo rm /usr/local/apache-tomcat-6.0.37/webapps/tak-services.war
Lägg till ny version genom att kopiera tak-services.war till Tomcat webapps katalog. Observera att versionen inte skall finnas med i namnet på war-filen efter den är kopierad.
sudo cp tak-services-2.0.war /usr/local/apache-tomcat-6.0.37/webapps/tak-services.war
Verifiera installationen enligt nedan.
Verifiera installationen
Gå till http://<miljö>:8080/tak-web/ och se att inloggningsfönster för Tjänsteadresseringskatalogens admingui kommer upp.
Gå till http://<miljö>:8080/tak-services och se att de tjänster som exponeras av Tjänsteadresseringskatalogen kommer upp.
Gör en reset cache i SKLTP VP för att säkerställa att anropsbehörigheter och routinginformation hämtas korrekt från Tjänsteadresseringskatalogen, http://<miljö>:23000/resetcache. Värdet att titta på här är "Succesfully saved virtualizations and permissions to local TAK copy: /home/mule/.tk.devtest.localCache" som indikerar att uppdateringen av den lokala TAK cachen har gått bra.