Set up ItemBank service for single instance of ExamDeveloper

 Set up Project service for single instance of ExamDeveloper

 ExamDeveloper setup home page

 

This page covers Setting Up the User service for Single Instance of ExamDeveloper. If you are running multiple instances of ExamDeveloper, you can go to the User service installation and configuration for multiple instances of ExamDeveloper in User Service Setup for Multiple Instances of ED.
 

The following is applicable only for ExamDeveloper version 7.1610.0.0 and above.

 

This page describes the following:

  1. Configure the User Service
  2. Installation of User Windows service
    1. Install the User service
    2. Start the User service

Configure the User Service

It is important to ensure that all the values in the config files such as service name, URLs, username, and password are case-sensitive. ExamDeveloper may not run as expected if care is not taken to ensure that case sensitivity is maintained.

  1. Create a folder where you want to install the User service, such as C:\EDUS\ExamDeveloper\ (henceforth known as <EDUSinstallDir>) and copy all the contents of <SVNFolder>\User\  (or <SVNFolder>\UserService\) to this folder.
     

  2. Open the various configuration files for the User service from C:\EDUS\ExamDeveloper\configs (<EDUSinstallDir>\configs\) - appSettings.configconnectionStrings.config, massTransit.config, and log4net.config - with Notepad or a suitable text file editor.
     

  3. In the appSettings.config, enter a unique name and unique display name for the User service, which is to be created and run on the application server.


    where,
    UniqueUserServiceName and UniqueUserServiceDisplayName are the unique name and display name given to the User service. These names needs to be unique per install and should not contain any space.

  4. In the appSettings.config, ensure that the values of the keys "basicAuthUserName" and "basicAuthPassword" match the values in ExamDeveloper httpClients.config of the keys "userName" and "password" respectively for the line with httpClientConfig name "User" as in step 11 of Configure ExamDeveloper.

  5. If a line with the key "useSsl" exists, set the value to "true" as follows:

  6. If a line with the key "relativeUri" exists, set the value to "UniqueUserServiceName" as follows:


    where UniqueUserServiceName is the name of the User service.

  7. In the connectionStrings.config, update connection string value to match the value from the EDRS connectionStrings.config file as in step 2.a of EDRS Installation and Configuration.

    Step 8 is applicable only for ExamDeveloper version 7.1611 and above.

  8. Update the values in the <massTransit> section of the massTransit.config file to match the corresponding values from massTransit.config of EDRS as detailed in step 2.c of EDRS Installation and Configuration. This means that the name of the Virtual Host ExamDeveloper created in Create and configure RabbitMQ Virtual Host section of the RabbitMQ Setup and Configuration page, should be appended to the massTransit/host/rabbit@hostAddress attribute, which is rabbitmq://localhost/ExamDeveloper in our example. The username and password must match the RabbitMQ user (having access to the Virtual Host ExamDeveloper), created in the Create a RabbitMQ user for EDRS section of the RabbitMQ Setup and Configuration page, which in our example are ExamDeveloper and Password respectively.

    If RabbitMQ is installed on a separate server, then you must substitute "localhost" with the hostname of that server. If RabbitMQ-URL is the server hostname where RabbitMQ is installed, then the line becomes:

    <rabbit hostAddress="rabbitmq://RabbitMQ-URL/ExamDeveloper" username="ExamDeveloper" password="Password"/>

    It is extremely important that the same RabbitMQ Virtual Host name should not be shared between different instances of ExamDeveloper, as this can result in issues such as data loss and security breach.

    It is important to ensure that the RabbitMQ Virtual Host name, username, and password are case-sensitive. You will encounter an error while trying to log into ExamDeveloper if care is not taken to ensure that both are specified exactly as they are in the Create and configure RabbitMQ Virtual Host and in the Create a RabbitMQ user for EDRS section of the RabbitMQ Setup and Configuration page.



  9. Update the values in the <log4net> section of the log4net.config file as shown below to indicate the path where the log file for the User service is to be located.


    By default, the log file User.log is saved to the User service folder (C:\EDUS\ExamDeveloper\ in our example). You can specify a different path to save it by modifying the value to something like "C:\ExamDeveloperData\Logs\UserService\User.log" as shown above.

Installation of User Windows service

Install the User Service

  1. Open an Administrator command prompt and run the following command:

    netsh http add urlacl url=https://+:443/UniqueUserServiceName
     user=Everyone

    where UniqueUserServiceName is the name of the User service.

     

    If you get an error stating "Url reservation add failed" on running the above command, please ignore it as it means that this has already been taken care of.


  2. Open an Administrator command prompt (click the Start button, type "command" in the search box, right click Command Prompt in the search results that appear, and click Run as administrator from the context menu) and navigate to <EDUSinstallDir>.

  3. Run the following command:

    User
    .exe install --sudo --localservice

    Here, User.exe is the name of the User service executable file. This file may be available with any other name in the format [ApplicationName].exe.

Start the User Service

  1. Once the service is installed successfully, to start the User service, open the Administrator command prompt.
  2. Navigate to <EDUSinstallDir> and run the following command: 

    User
    .exe start

 

The installed service runs in the default Local Service account. If the service does not start, inspect the Windows application logs to understand the reason.

Ensure that the User service is running in the following way:

  1. Run "services.msc" (click Start  Run or Windows + R keys together, type "services.msc" in the Run dialog box, and click OK). Ensure that the Status for the User service instance shows as Started and the Startup Type is Automatic.
  2. If you don't see the status as mentioned in step 1, then right-click the User service instance name in the list, which should appear as UniqueUserServiceDisplayName, and click Properties to open its properties window.
  3. Select Automatic from the Startup type drop-down and click the Start button under Service status.
  4. This starts the User service and sets it to start automatically at Windows startup.

 

 

If you need to stop or uninstall the User service, you need to follow the following steps.

Stop the User service

  1. Open the Administrator command prompt and navigate to <EDUSinstallDir>.

  2. To stop installed service, run the following command:

    User.exe stop

Uninstall the User service

  1. Open the Administrator command prompt and navigate to <EDUSinstallDir>.

  2. First stop the service by running the following command:

    User
    .exe stop
     

  3. To uninstall the service, run command:

    User
    .exe uninstall --sudo --localservice


Please visit User Service Configuration Settings to learn more about the various settings mentioned above.

 

Return to the top of the page

 Set up Project service for single instance of ExamDeveloper

 Set up ItemBank service for single instance of ExamDeveloper

 ExamDeveloper setup home page