OpenMRS: newest release cloned from 1.11.0-beta + reference application cloned from 2.2
I have followed the instructions of setting up 2.x development enviroment, cloned core, cloned reference app, used the script to copy the modules to the module directory - and when I’m starting webapp using jetty:run, it throws an exception:
Unable to start OpenMRS. Error thrown was: org.openmrs.api.APIException: Service not found: interface org.openmrs.scheduler.SchedulerService
and the webapp does not start.
After a long search I’ve found that removing htmlformentry-2.5.omod module makes it start, but then it fails to load any of these 2.x modules (as one can see on the attached image).
I have literally just followed these three steps and have no idea what could go wrong.
log without module: http://pastebin.com/8qy1mfxx
log with module: http://pastebin.com/MSQ6bSeK
I am complete beginner with OpenMRS and will be grateful for any help.
Do you mind trying again without using a beta version of 1.11?
@dkayiwa It doesn’t work with any version, I’ve tried them all.
What errors do you get on running it with 1.11.3?
The errors remain the same
@jacek, do you have the same issue when using the sdk?
@raff I don’t understand. I’ve used SDK and it works (it generates all the files), but it doesn’t start webapp, so it doesn’t show these errors.
EDIT: Ok, I got it running by
I guess it solves the problem, but can I use it like that? (I mean: is there any difference between normal
and that, any drawbacks of using sdk to run it?)
openmrs-sdk:run calls jetty:run under the hood. The main difference is that jetty:run can be only run from the openmrs-core/webapp directory, whereas openmrs-sdk:run can be run from any directory as it uses the war file from maven repository (you don’t even have to have the openmrs-core code cloned). Thus, it is more convenient for module development.
In addition you can setup many instances of OpenMRS using openmrs-sdk:setup and run them by specifying serverId. We also provide extra tooling for those instances like installing modules openmrs-sdk:install-module, resetting DB openmrs-sdk:reset and so on.