tomcatmifosapache-fineract

Mifos X Fineract - Fineract API not running on localhost:8080


I followed this installation guide to get

I get the error Http failure response for http://localhost:8080/fineract-provider/actuator/info: 404

I have used Option #2 (Fineract War) and I have opted to go for mariadb connector over mysql I have also used my actual password here. My assumption was that this should be the case fineract.tenant.password=${FINERACT_DEFAULT_TENANTDB_PWD:fineract011}

These are logs from my tomcat service indicating that the war file has been deployed by tomcat

14-Oct-2024 15:55:57.571 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/opt/tomcat/apache-tomcat-9.0.96/webapps/fineract-provider.war] 14-Oct-2024 15:55:57.832 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/opt/tomcat/apache-tomcat-9.0.96/webapps/fineract-provider.war] has finished in [260] ms

Please help me understand why this does not work even though the Mifos UI works Please also guide me on the changes that would be required for this work via SSL and for my mifos UI to show the actual URL and not the defaults below

Mifos 231231 - Fineract - http://localhost:8080


Solution

  • Are you using Java 21? If you don't see any messages about database initialization right after the war deploy messages, it might be due to an incorrect JRE version.

    See https://fineract.apache.org/docs/current/#_run_from_binary for full instructions for starting a Fineract server (for testing purposes only). The Docker image mentioned in those instructions (tomcat:jre21) uses a v21 Java runtime. I'll repeat the test instructions here for posterity (with a few small edits so it stands alone):


    Before running this you must first start a database server and ensure the fineract_default and fineract_tenant databases exist. Then:

    # Necessary variables
    version=1.12.1
    bin=apache-fineract-bin-$version.tar.gz
    
    # "Run from binary" code snippet
    tar -xzf $bin
    cd apache-fineract-bin-$version
    cat << 'EndOfRcenv' >> rcenv
    FINERACT_SERVER_SSL_ENABLED=false
    FINERACT_SERVER_PORT=8080
    BACKEND_PROTOCOL=http
    BACKEND_PORT=$FINERACT_SERVER_PORT
    EndOfRcenv
    docker run --rm -it -v "$(pwd):/usr/local/tomcat/webapps" \
      --net=host --env-file=rcenv tomcat:jre21