Launch the Application Server
Last updated
Last updated
Before launching the Application Server, you should already have completed:
If the above are completed, you can start the JBoss-based ADempiere Application Server. For demonstrations, its fine to launch the server from a console. For production systems, its best to use a method that will keep the server running after the user has logged off.
To run the ADempiere Server from a console, open up a console window and go to the ADEMPIERE_HOME/utils directory. Run the script RUN_Server2[.bat|.sh] . Then you will see the RUN_Server2 output, such as:
If the server started with no errors, you can move on to Launching the ADempiere Application.
For windows operating systems, the ADempiere Application Server can be installed as a service and scripts are provided for this purpose. Open a DOS shell with Administrative Privileges, navigate to %ADEMPIERE_HOME%\utils\windows and run:
Adempiere_Service_Install.bat for 32-bit systems; or
Adempiere_Service_Install_64.bat for 64-bit systems (since 380LTS hotfix 2).
The install sets the start-up options as manual. You will need to open the Services Window (Control Panel→Administrative Tools→Services) to set the properties so the service starts automatically or manually as required for your implmentation.
(Since 380LTS hotfix 2) On 64-bit systems, the service will log the full console output to ADEMPIERE_HOME\jboss\bin\run.log. As a result, run.log may get large over time. To prevent this, comment out the CONSOLE appender-ref in the ADEMPIERE_HOME\jboss\server\adempiere\conf\jboss-log4j.xml file:
Once the Service is running, you can move on to Launching the ADempiere Application.
ADempiere can be setup a service on Ubuntu using systemd.
Create a file called "adempiere.service" under the /lib/systemd/system/ directory
With the service defined, you can run the following commands to control it. You will need to run these as root or using sudo
Command
Purpose
systemctl daemon-reload
Loads the new service
systemctl start adempiere
Starts the ADempiere service.
service adempiere status
Show the status of the ADempiere service
systemctl enable adempiere
Enable the ADempiere service to it will restart on the next reboot/restart event.
systemctl stop adempiere
Stop the ADempiere service
systemctl disable adempiere
Turns the ADempiere service off at the next reboot/restart event. Prevents the ADempiere service from restarting.
systemctl is-enabled adempiere
Use this to check if the service is currently configured to start or not on the next reboot.
The systemd script may fail if the memory runs out. When the heap is full for some reason, the stop script will fail. In that case, try kill -9 using the service PID, wait for a few seconds then start the service again. System Administrators should add a health check to handle this condition.
If the server started with no errors, you can move on to Launching the ADempiere Application.
(Thanks to @pmdw and Horacio Miranda @piracio for their contribution.)
For other operating systems, check ADEMPIERE_HOME/utils/unix or use the Linux nohup command (no hangup) as follows:
To see the output of the server, use
or
If the server started with no errors, you can move on to Launching the ADempiere Application.
Check the logs for errors.
For JBoss, the logs are located at ADEMPIERE_HOME/jboss/server/adempiere/logs or ADEMPIERE_HOME/jboss/bin.
For Tomcat, you will find them in ADEMPIERE_HOME/tomcat/log/Catalina.out.
The most common problems are with ports that are already in use. Typical conflicting ports are:
HTTP: 80, 443, 8080, 8443
RMI : 1098, 1099
For Linux users, sometimes it helps to restart the workstation/server and execute RUN_Server2 as root.
Any port conflict when starting the Application Server must be resolved!
If you have errors related to the database, check that the database has been installed, ADempiere data imported and that the database server is running.