This fork of the QA System CANaLI just fixes some links that are no longer working as of 5 September 2022 (except the ones for the Musicbrainz database), reduces the size of the log in the Netbeans console and includes a handy guide to run the system on Windows since I didn't find any documentation online.
The system was tested on a machine running Netbeans 14 on Windows 10 21H1 (16GB of RAM and a Ryzen 5 3600).
Guide to use the system with 2014 DBpedia (it's the smallest KB and doesn't require to allocate more than 14GB of ram to Java):
Download and Install Netbeans from https://netbeans.apache.org/download/index.html (you will need Java installed for it, I suggest Java 17)
Download and extract canali-core from this repository and canali-web from https://github.com/costantino2000/canali-web-printed-uri. After that open Netbeans AS ADMIN (you will need it for a passage) and load them as projects
Add Glassfish 5.0.1 from Tools -> Servers -> Add Server -> next -> choose it and download it -> next -> finish -> close (it will be needed to run canali-web)
Download and Install the jdk for Java 8 from https://adoptium.net/temurin/releases?version=8 (I recommend downloading the zip so you just have to extract it) and add it to Netbeans (Tools -> Java Platforms -> Add Platform -> next -> select the installation folder of the jdk -> finish -> close)
Right click on canali-core -> Properties -> Build -> Compile and choose 'JDK 1.8' as the Java platform, then do the same for canali-web
Right click on canali-web -> Properties -> Run -> Server and choose Glassfish 5.0.1 -> close
Right click on canali-core -> Clean and Build -> then do the same for canali-web
Go in the config folder of the default domain of your Glassfish install (C:\Users\your_name\GlassFish_Server\glassfish\domains\domain1\config), open the file domain.xml, go to -Xmx512m and change it to -Xmx4G, then add -XX:-UseGCOverheadLimit in the line under it.
In another Explorer instance locate te place where you have installed or extracted Jdk 8, the in jre/lib/security and copy the file 'cacerts'. Return to the glassfish config folder and delete the file 'cacerts.jks', then paste the file you copied. Rename it and add the .jks extension in order to substitute the file you deleted, this will prevent the invalid certificates exceptions during the querys.
Go back to the root of your glassfish directory and go to glassfish/modules/endorsed, open the file 'grizzly-npn-bootstrap.jar' with a zip program and delete the 'sun' folder inside it, in odrer to prevent another exception that might occur.
Go back to Netbeans, expand canali-core then go in source packages -> edu...index.utils and open DBpediaOntologyUtils, you will find the links under the import section, click on them and the download will automatically start (in case some of them do not work don't worry, I checked for their presence on archive.org, you will be able to download them from there).
After downloading the files, go in your C: directory and create the following folders: \home\massimo\aquawd. Inside aqawd create dbpedia-downloaded-files, dbpedia-ontology-files, processed-dbpedia-ontology and extract your downloaded files inside the first one. You can skip this step by manually changing the selected directories in the java classes with the ones you want to use and do clean and build again, but this method is faster.
Go back to Netbeans, right click on canali-core -> Properties -> Run -> Browse for the main class and select DBpediaOntologyUtils -> close.
With canali core selected click on 'Run' (the green play button) and wait for about 3 minutes (if you have a setup similar to mine), it will create the files in the dbpedia-ontology-files folder needed for building the Lucene index.
Choose BuildIndex as the main class (like you did for DBpediaOntologyUtils) and run the program, this should take something like 6 minutes (if you encounter an error with the 'triples' file you should double click on it from inside the dbpedia-ontology-files folder and let Windows fix the link, then try again).
You can now start canali-web. Select it and click on the browser icon on the top (next to the build icon) to select the browser you want to use, then click Run. It will take a couple minutes and it will open the browser on localhost:8080/canali-web-master. Try writing something like "What is Github?" and see if it gives an answer. If it stops loading after a couple seconds and gives you the answer with the Wikipedia link and the optional picture you are done, CANaLI is set up and working!
(please note that CANaLI uses controlled natural language and most of the questions of datasets like qald will surely need editing in order to be accepted, if you want to test it with gerbil you will have to input every single question manually in the web interface, take the answer from the netbeans console and manually create the answer file, after that you should edit your dataset in order to leave only the questions that the system accepts and then upload the files to gerbil)