Hide last authors
Outhman Moustaghfir 16.2 1 (% class="box successmessage" %)
2 (((
3 Contents :
Outhman Moustaghfir 1.1 4
Outhman Moustaghfir 15.2 5 {{toc/}}
6
Outhman Moustaghfir 16.2 7
8 )))
9
10 = Introduction =
11
Outhman Moustaghfir 23.2 12 This current doc will guide you to install correctly iXPath and will give more details about each present configuration.
Outhman Moustaghfir 1.1 13
Outhman Moustaghfir 40.1 14 == Installation methods : ==
Outhman Moustaghfir 1.1 15
Outhman Moustaghfir 1.3 16 The installation can be done in 2 ways :
Outhman Moustaghfir 1.1 17
Outhman Moustaghfir 1.3 18 1. Online Installation: this installation requires downloading some resources online, so it's necessary to have an internet network, then complete the installation.
19 1. Offline Installation: this installation requires the existence of resources on a hard disk or any sources of storage (CD / USB ...), and does not require an internet network.
20
21 |(% style="width:205px" %) |(% style="width:843px" %)Installation elements
22 |(% style="width:205px" %)**Online**|(% style="width:843px" %)(((
23 * jar executable: ixpath.exe
24 * directory bin, that must be next to the jar executable.
25 )))
26 |(% style="width:205px" %)**Offline**|(% style="width:843px" %)(((
27 * jar executable: ixpath.exe
28 * directory bin, that must be next to the jar executable.
29 * the "Install.zip" archive which contains all necessary resources for the installation.
30 )))
31
Outhman Moustaghfir 20.2 32 = I - First Installation (Première installation) =
Outhman Moustaghfir 1.7 33
Achraf El Kari 66.2 34 == A) Online Installation ==
Outhman Moustaghfir 1.3 35
Outhman Moustaghfir 2.3 36 The online installation uses remote resources, which makes the internet connection mandatory.
Outhman Moustaghfir 2.2 37
Outhman Moustaghfir 2.3 38
Outhman Moustaghfir 2.2 39 [[image:1657192466936-778.png||height="491" width="796"]]
Outhman Moustaghfir 3.2 40
41 if no window displays, please make sure of the existence of the "bin" directory, that contains the java virtual machine to launch the iXPath installation.
42
43 Click on "Pemière installation", and it redirects you to the window below, which gives you the components needed to be installed.
44
45 [[image:1657197821929-405.png||height="441" width="693"]]
46
47 Installation components :
48
Outhman Moustaghfir 4.2 49 * Portail: frontend code of iXPath
50 * Moteur (Engine): backend package of iXPath code source. it will install two services: COM (running on port 8091) and Engine (running on port 8090), so please make sure to free these ports, or you can change both of them in the configuration that will be explained later in this document.
51 * Base de données: Script to install the database with all the newest updates.
52 * MySQL: Relational database management system installation.
53 * WebServer (Apache & PHP): Apache server and PHP installation for both "Moteur" and "Portail"
54 * RabbitMQ & Erlang.
Outhman Moustaghfir 3.2 55
Outhman Moustaghfir 6.2 56 if you already have the RabbitMQ component installed, uncheck it.
Outhman Moustaghfir 3.2 57
Outhman Moustaghfir 6.2 58 the installation begins with the broker RabbitMQ, and it uses Erlang OTP which is mandatory for its functioning.
59
60 uncheck "Erlang Documentation" as shown below : 
61
62 [[image:1657203367108-301.png||height="440" width="566"]]
63
64 After that, it comes the installation of RabbitMQ :
65
66 [[image:1657203596434-660.png||height="410" width="528"]]
67
Outhman Moustaghfir 7.2 68 Next, continue the installation of RabbitMQ, followed by the installation of the "Moteur"/Engine.
Outhman Moustaghfir 6.2 69
70
Outhman Moustaghfir 7.2 71 [[image:1657203808711-492.png||height="334" width="561"]]
Outhman Moustaghfir 6.2 72
Outhman Moustaghfir 14.2 73 **Congrats !!! **you have installed iXPath successfully, and you can log in to the app on the "http:~/~/localhost" URL and use "admin" as user and "admin" as password.
Outhman Moustaghfir 6.2 74
75
Achraf El Kari 66.2 76 == B) Offline installation ==
Outhman Moustaghfir 7.2 77
Outhman Moustaghfir 7.3 78 As mentioned before, the offline installation does not require an internet network.
Outhman Moustaghfir 7.2 79
Outhman Moustaghfir 10.2 80 Click on the executable "ixpath.exe"
Outhman Moustaghfir 7.2 81
Outhman Moustaghfir 10.2 82 [[image:1657205308850-727.png||height="375" width="608"]]
Outhman Moustaghfir 7.3 83
84
Outhman Moustaghfir 11.2 85 Then click on "Première installation", and will pop up this window indicating that no internet connection has been detected:
Outhman Moustaghfir 10.2 86
87 [[image:1657205397383-147.png||height="112" width="445"]]
88
Outhman Moustaghfir 11.2 89 Click on "Oui"/yes.
90
91 if the "Install.zip" does not exist in the same directory as "Ixpath.exe", mention the directory where it belongs:
92
93 [[image:1657205582948-948.png||height="112" width="540"]]
Outhman Moustaghfir 12.2 94
Outhman Moustaghfir 12.3 95 Eg: if the path is **"C:/InstallationIxpath/Install.zip"**, you will fill in the field with **"C:/InstallationIxpath/". **And the Installation begins...
Outhman Moustaghfir 12.2 96
97 [[image:1657205737602-896.png||height="344" width="578"]]
98
Outhman Moustaghfir 12.3 99 Accept the 3 Windows authorizations that will pop up during the installation. they are related to 3 components: "Database", "WebServer" and "Engine".
Outhman Moustaghfir 12.2 100
101
Outhman Moustaghfir 14.2 102 [[image:1657206588463-690.png||height="339" width="570"]]
103
104 **Congrats !!! **you have installed iXPath successfully, and you can log in to the app on the "http:~/~/localhost" URL and use "admin" as user and "admin" as password.
105
Outhman Moustaghfir 26.2 106 = II - Architecture of iXPath : =
Outhman Moustaghfir 17.1 107
Outhman Moustaghfir 23.2 108 here is a brief presentation of the roles of each component in the iXPath app.
109
110 [[image:2022-07-07_17h21_37.png||height="414" width="547"]]
111
Achraf El Kari 66.2 112 In the COM server, the service "ixpathCom.jar" can run solo or with the rabbitMQ. for accessibility reasons (Firewall...), we can install the web server inside the com server (Apache, PHP, and iXPath web).
113
Achraf El Kari 67.1 114 in the engine server, the service "ixpath.jar" can run solo, we should specify in his configuration all those information: COM IP address, BDD IP address, broker IP address, and port.
Achraf El Kari 66.2 115
Achraf El Kari 67.1 116 See **chapter VI**, for more details about the remote installation.
Achraf El Kari 66.2 117
Outhman Moustaghfir 23.2 118 = III - Update =
119
Outhman Moustaghfir 45.2 120 Updating the iXPath app or just some components g__oes exactly the same as the online installation__, which makes the internet network necessary to fetch any updates from remote resources.
Outhman Moustaghfir 17.1 121
Outhman Moustaghfir 36.5 122 = IV - Configurations & Monitoring =
Outhman Moustaghfir 17.1 123
Outhman Moustaghfir 20.2 124 there are configuration files that help to maintain all needed parameters for the functioning of iXPath.
125
Outhman Moustaghfir 39.2 126 * config.properties: configuration of the Engine. here we can configure ports, directories, hosts ... it's located in **/SERVER/engine/config.properties **path
127 * config.ini: Configuration of "Portail". here we configure all parameters to connect Engine to Portail. it's located in **./SERVER/wwwroot/config/config.ini **path
Outhman Moustaghfir 20.2 128
Achraf El Kari 67.1 129 == A) Ports ==
Outhman Moustaghfir 20.2 130
131 * As mentioned before, iXPath takes 8090 (Engine) and 8091 (COM) automatically as ports.
132 if in any case, you want to change them, go to **./SERVER/engine/ixEngine.cmd **script and change them to wanted ports, then execute the script on administrator mode. 
133 For example, we want to change the Engine port to 9090 and the COM port to 9091 
Outhman Moustaghfir 26.2 134 [[image:1657208183258-245.png||height="48" width="712"]]
Outhman Moustaghfir 20.2 135 \\and make the changes on **./SERVER/engine/config.properties :** 
Outhman Moustaghfir 26.2 136 \\[[image:1657208426432-822.png||height="349" width="478"]]
Outhman Moustaghfir 39.2 137 \\and same for  **./SERVER/wwwroot/config/config.ini ** : 
Outhman Moustaghfir 20.2 138 [[image:1657208646920-357.png||height="146" width="543"]]
Outhman Moustaghfir 39.3 139 \\NB: 'Rest' refers to Engine service, and 'COM' refers to COM service 
Outhman Moustaghfir 17.1 140
Outhman Moustaghfir 23.5 141 * the Engine also uses ports 22920 and 22921 for FTP and FTPS respectively** **
Outhman Moustaghfir 22.2 142 [[image:2022-07-07_17h03_53.png||height="337" width="501"]]
143
144 * SFTP port : 
145 [[image:2022-07-07_17h09_58.png||height="124" width="425"]]
146 \\
Outhman Moustaghfir 20.2 147
Outhman Moustaghfir 25.2 148 NB: You can change all these COM ports via the iXPath interface directly, by selecting the configuration target
Outhman Moustaghfir 23.9 149
Outhman Moustaghfir 25.2 150 [[image:2022-07-07_17h46_52.png]]
Outhman Moustaghfir 23.9 151
Outhman Moustaghfir 25.2 152 and change the port from the system configuration:
153
154 [[image:2022-07-07_17h45_14.png||height="163" width="724"]]
155
156
Achraf El Kari 67.1 157 == B) Services ==
Outhman Moustaghfir 23.9 158
Outhman Moustaghfir 30.3 159 * To maintain services on your operating system, go to the search bar and type "services.msc" :
Outhman Moustaghfir 26.2 160
Outhman Moustaghfir 29.2 161 [[image:1657272390060-679.png||height="200" width="387"]]
Outhman Moustaghfir 26.2 162
Outhman Moustaghfir 29.2 163 the services related to iXPath are :
Outhman Moustaghfir 26.2 164
Outhman Moustaghfir 29.2 165 [[image:2022-07-08_10h29_02.png||height="62" width="646"]]
166
167 [[image:2022-07-08_10h30_20.png||height="16" width="654"]]
168
Outhman Moustaghfir 36.2 169 here you can start, restart, pause, or stop the service target by right-clicking on it and choosing the option needed after accessing its properties:
Outhman Moustaghfir 30.2 170
Outhman Moustaghfir 35.2 171 [[image:manage-startup-type.png]] [[image:startup-type.png]]
Outhman Moustaghfir 30.2 172
Outhman Moustaghfir 35.2 173
174
Outhman Moustaghfir 30.3 175 {{{NB: all services must be running to run the iXPath app correctly.
176 }}}
Outhman Moustaghfir 30.2 177
Outhman Moustaghfir 35.2 178 * if the Apache service cannot be on running status because of the unavailability of port 80, please follow these steps :
Outhman Moustaghfir 32.2 179 ** open a command line and type :  **netstat -aon | findstr :80**
180 [[image:1657273380453-615.png||height="308" width="512"]]
181
Outhman Moustaghfir 32.4 182 ** Next, you type the command: **tasklist /fi  "pid eq 4" **
Outhman Moustaghfir 32.2 183 [[image:1657273433854-228.png||height="202" width="513"]]
Outhman Moustaghfir 32.7 184 ** stop and disable the following services :
Outhman Moustaghfir 32.6 185 *** **world wide web publishing service (W3SVC)**
Outhman Moustaghfir 32.7 186 *** **windows activation service (WAS)**
187 *** **SQL Server Reporting Services (ReportServer)**
188 *** **BranchCache (PeerDistSvc)**
189 *** **Network Connection Broker (NcbService) **
Outhman Moustaghfir 36.2 190 ** start apache service  
191 [[image:1657275791598-755.png||height="233" width="356"]]
Outhman Moustaghfir 32.7 192
Achraf El Kari 67.1 193 == C) Logs ==
Outhman Moustaghfir 32.7 194
Outhman Moustaghfir 36.8 195 There are some log files to help you figure out what causes the dysfunctioning of the iXPath app, and here are all of them :
Outhman Moustaghfir 36.4 196
Outhman Moustaghfir 36.10 197 |(% rowspan="8" %)(((
Outhman Moustaghfir 37.2 198 (% class="wikigeneratedid" id="HCOM" %)
199 //**COM**//
Outhman Moustaghfir 36.10 200 )))|(% rowspan="2" %)(((
Outhman Moustaghfir 37.2 201 (% class="wikigeneratedid" id="HPORTAL" %)
202 //**PORTAL**//
Outhman Moustaghfir 36.11 203 )))|iXPath Front Php:|.\SERVER\wwwroot\Logs
204 |Portal Log:|.\SERVER\wwwroot\Logs
Outhman Moustaghfir 36.10 205 |(% rowspan="6" %)(((
Outhman Moustaghfir 37.2 206 (% class="wikigeneratedid" id="HCOM-1" %)
207 //**COM**//
Outhman Moustaghfir 36.10 208 )))
Outhman Moustaghfir 36.11 209 |(% colspan="1" rowspan="2" %)Communication Protocol
210 |.\SERVER\Data\config\COM
211 |Communication Protocol (AS2) Log (Example)|.\SERVER\Data\config\COM\AS2\LOGS
Outhman Moustaghfir 36.13 212 |(% colspan="1" rowspan="2" %)LogCom
213 |.\SERVER\Engine\ (logRESTCOM.log)
Outhman Moustaghfir 36.10 214 |(% rowspan="4" %)(((
Outhman Moustaghfir 37.2 215 (% class="wikigeneratedid" id="HENGINE" %)
216 //**ENGINE**//
Outhman Moustaghfir 36.10 217 )))|(% rowspan="3" %)(((
Outhman Moustaghfir 37.2 218 (% class="wikigeneratedid" id="HENGINE2019sLog" %)
219 //**ENGINE’s Log**//
Outhman Moustaghfir 36.13 220 )))|Source:|.\SERVER\Engine\ixpath.jar
221 |LogRest:|.\SERVER\Data\LOGS\REST (logREST.log)
222 |LogApp:|.\SERVER\Engine\ (ixpath.log ou ixpathErr.log)
Outhman Moustaghfir 36.10 223 |(((
Outhman Moustaghfir 37.2 224 (% class="wikigeneratedid" id="HProcessLOGS" %)
225 //**Process LOGS**//
Outhman Moustaghfir 36.13 226 )))|Process LOGS|.\SERVER\Data\LOGS\ENGINE
Outhman Moustaghfir 36.10 227 |(((
Outhman Moustaghfir 37.2 228 (% class="wikigeneratedid" id="HBDD" %)
229 //**BDD**//
Outhman Moustaghfir 36.10 230 )))|(((
Outhman Moustaghfir 37.2 231 (% class="wikigeneratedid" id="HDataBase" %)
232 //**DataBase**//
Outhman Moustaghfir 36.13 233 )))|Query Log|.\SERVER\mysql\logs
Outhman Moustaghfir 36.5 234
Outhman Moustaghfir 44.2 235 = V - FAQ =
236
237 * During the installation, it might happen that the directory already exists, and that will block it.
238 [[image:1657290152857-725.png||height="361" width="606"]]
239 you should take action by following these steps below :
240 ** make a backup for the directory '**SERVER'.**
241 ** delete the directory '**SERVER'**
242 ** relaunch the installation.
243 * if you can't start RabbitMQ service, 
244 [[image:1657290453989-461.png||height="99" width="560"]]
245 add new environment variable named RABBITMQ_SERVER with the RabbitMQ installation Path  :
246 [[image:1657290504230-487.png||height="159" width="554"]]
247 \\RABBITMQ_SERVER : C:\Program Files\RabbitMQ Server\rabbitmq_server-3.10.1C:\Program Files\RabbitMQ Server\rabbitmq_server-3.10.1
248 \\And now restart the RabbiMQ service. 
249 [[image:1657290585573-818.png||height="66" width="585"]]
Outhman Moustaghfir 66.1 250
251 * (((
Outhman Moustaghfir 65.1 252 = VI - Remote installation =
Outhman Moustaghfir 64.2 253
254 In case you want to install each service on its own server, you only need to specify all these details inside the configuration files (config.ini & config.properties (COM and Engine))
Outhman Moustaghfir 66.1 255 Eg: We need to implement this kind of installation.
Outhman Moustaghfir 64.2 256
257 (((
Outhman Moustaghfir 49.2 258 (% style="width:365px" %)
259 |(% style="width:200px" %)**Service**|(% style="width:160px" %)**Host**
260 |(% style="width:200px" %)COM|(% style="width:160px" %)10.0.0.1
261 |(% style="width:200px" %)Engine|(% style="width:160px" %)10.0.0.2
262 |(% style="width:200px" %)MySQL|(% style="width:160px" %)10.0.0.3
263 |(% style="width:200px" %)RabbitMQ|(% style="width:160px" %)10.0.0.4
Outhman Moustaghfir 62.2 264 |(% style="width:200px" %)Portal|(% style="width:160px" %)10.0.0.5
Outhman Moustaghfir 49.2 265
266 That can be designed as architecture below :
Outhman Moustaghfir 62.2 267 [[image:1662053701761-722.png]]
Outhman Moustaghfir 55.3 268
269 **1 - Installation**
270 On each server, install the service in question : 
Outhman Moustaghfir 51.2 271 We start with the database
Outhman Moustaghfir 54.2 272 [[image:2022-09-01_17h53_14.png||height="253" width="394"]]
Outhman Moustaghfir 51.2 273 \\then the broker RabbitMQ: 
274 [[image:2022-09-01_17h53_37.png||height="308" width="480"]]
Achraf El Kari 67.1 275 \\next, for each COM and Engine services, we do the same installation, it will install for both servers, and you disable the undesired service.
Outhman Moustaghfir 52.2 276 \\[[image:2022-09-01_17h54_18.png||height="294" width="459"]]
Outhman Moustaghfir 54.2 277 \\for example, if we're installing COM in 10.0.0.1, we disable the engine service 
278 [[image:2022-07-08_10h29_02.png]]
Outhman Moustaghfir 62.2 279 (Same for Engine)
280
281 Finally, install the portal in 10.0.0.5
Outhman Moustaghfir 63.1 282 [[image:2022-09-01_18h36_21.png||height="284" width="443"]]
Outhman Moustaghfir 62.2 283 **2 - The next step will concern the configuration**
Achraf El Kari 66.2 284 __//On 10.0.0.1 (COM server)//__
Outhman Moustaghfir 59.2 285 Inside config.properties, identify all hosts that COM can communicate with.
286 [[image:2022-09-01_18h16_32.png||height="241" width="321"]]
287
288 [[image:2022-09-01_18h17_14.png||height="50" width="463"]]
Outhman Moustaghfir 59.3 289 \\ __//On 10.0.0.2 (Engine server)//__
290 we make the same modifications, and we identify the COM host 
Outhman Moustaghfir 60.2 291 [[image:2022-09-01_18h21_18.png||height="277" width="304"]]
Outhman Moustaghfir 63.2 292
Outhman Moustaghfir 63.5 293 __//On 10.0.0.5 (Portal server)//__
Outhman Moustaghfir 63.2 294
Outhman Moustaghfir 63.5 295 Set the config.ini file.
Outhman Moustaghfir 64.2 296 [[image:2022-09-01_19h05_22.png||height="90" width="457"]]
Achraf El Kari 67.1 297
298 == **Note : ** ==
299
300 We can install iXPath in just two or 3 servers, the combination of services that we recommend :
301
302 - COM with the rabbitMQ and Portal
303
304 - Engine
305
306 - BDD
307
308
309
310
Outhman Moustaghfir 47.2 311 )))
Outhman Moustaghfir 64.2 312 )))
This wiki is hosted and managed by iXPath
Powered by XWiki 13.3 debian