Hello, I am trying to setup the development environment locally and i have been stuck for the past two days on the same error.
I am getting (DocumentBuilder cannot be resolved to a type) (InputSource cannot be resolved to a type) (Node cannot be resolved to a variable) and similar errors in (PatientInfoHighwaySearch, FreezerAuditTrailController and other classes). I followed your Dev Environment Setup Instructions and everything went smoothly till Setting Developer Enviroment with Docker Compose (Dev Setup in Docker)
I have installed Java 21, Eclipse 2025-12 (4.38.0) and running on Ubuntu 24.04.3. I also tried to follow the documentiion and installed everything from scratch in a virtual machine with Ubuntu 22.04.5
I tried importing porject as Projects from Folder or Archive and as an existing maven project but it also didnt work. I also have both dataexport-api and dataexport-core in my java build path under projects → Classpath.
I have searched in other topics here for a solution but didnt find anything similar but noticed that we should use tomcat 10 instead of 9 in the next step.
Any help would be greatly appreciated and thank you for your time.
1 Like
@Hamza_Azeem In this case are you using the recommended Version ?
@Agaba_Derrick_Junior recommended version of what exactly ?
If u mean tomcat, i tried to setup project with both 9 and 10 but it didnt work. So began from the start but didnt setup the server yet, thought that I might need to solve these errors first.
Can you verify that Eclipse is using a JDK, not a JRE i.e
Window → Preferences → Java → Installed JREs
you must be able to see something like Java SE 21 (jdk-21)
please confirm that you built this project with version 10 of Tomcat
refresh and rebuild the project if this persists, you can always try to use other editors like Intellij to build as we look into this !
I will try once again and tell you how it went and if I discovered why is this happening. Thank you @Agaba_Derrick_Junior for your time and effort with me, I really appreciate it
1 Like
If anyone is facing the same issue with Eclipse or prefers using IntelliJ (community edition) - like me xd - I managed to start the application locally using IntelliJ and a plugin for Tomcat called “Smart Tomcat”
steps:
- Open IntelliJ and navigate to OpenELIS-Global-2 folder
- Select pom.xml and open it as project
- For submodules (dataexport) navigate to maven tool window on the right (it has an m icon)
- Click on the plus icon to add maven projects then go to datatexport folder and choose pom.xml inside it
This should open the project with its nested dependencies correctly just make sure you are using Java 21 by navigating to file → project structure → project and make sure it’s using SDK: 21 JDK
To set up Smart Tomcat with the same configuration as in the documentation after installing Tomcat v10.1:
- Navigate to the gear icon on the top right corner → plugins and in the marketplace search for Smart Tomcat and download it
- Copy contents of <project_path>/dev/tomcat/oe_server.xml into <Tomcat_v.10.1> path/ conf/server.xml and change servert port, keystoreFile and truststoreFile as specified in the Dev Environment Setup Instructions
- Right next to the start icon in intelliJ there should be Current File click on it then edit configurations → click on the plus icon and choose Smart Tomcat
- For Tomcat Server choose the folder of Apache Tomcat v10.1 in your system
- In VM options paste the database properties specified in Dev Environment Setup Instructions
After following the rest of the document steps you should be able to click on the run icon and the server will be up and running.
In my case there were more errors but they were self explainatory you should be able to solve them with searching or advising AI agents.
2 Likes
Thanks @Hamza_Azeem .
But currently we support a fully dockerized dev setup.
Is there any reason you would want to setup the dev enviroment natively ??
1 Like
To be honest and I am embarrassed saying that, I didnt realize that dockerized setup will reflect code changes (even tho it says in the documentation it will) but I didn’t understand how it will do this, so I assumed I would need a native setup if I wanted to make changes or contribute to the codebase. I have small experience around dockers and used them mainly in setting up databases for learning purposes. Thank you for clarifying this @Moses_Mutesasira
@Hamza_Azeem thats understandable. But it does reflect the local changes.
The dockerized dev-setup should run out of the box without any extra effort .
You dont even need to run heavy-weight IDEs like InteliJ and Excllipse, you can simply use something light-weight like VScode
1 Like