Starting and Stopping xUML Services
Users who are member of a group, to which the role MODELER has been assigned, are only allowed to start and stop xUML services, if they themselves or a member of the same group deployed them. The users may see also other xUML services, but the buttons to manage them are disabled accordingly. Users with administration rights may start and stop all xUML services.
In order to get a list of all xUML services running on a node instance, expand the tree below a node instance in the Node Instances section of the navigation on the left. Then, click the sub-navigation item xUML Services. The tab xUML Services is initially displayed. It contains a list of all xUML services that were deployed to this node instance, grouped by their category.
You can start or stop each xUML service in the list if you have the necessary access rights. Otherwise, the buttons are disabled.
In the Owner field, the group id of the user who deployed the xUML service is displayed. The owner can be changed in the xUML service preferences.
When starting or stopping an xUML service, the new status will be displayed on the refreshed page in the status column.
Users with administration rights may stop all xUML services that are started on this node instance by clicking Stop All Instances. They will be stopped immediately without confirmation dialog. After all xUML services have been stopped, an updated list will be displayed. Clicking Start All Instances results in all stopped xUML services on this node instance to be started.
For all other users, these buttons are disabled.
By clicking View, the screen will be refreshed. Select Auto Refresh and apply it by clicking View, if the screen should be refreshed automatically every 60 seconds.
As an alternative, you may also select a single xUML service directly in the navigation on the left.
The Configuration tab of the selected xUML service will be displayed initially.
In the screenshot above, the running xUML service HelloWorldExample is displayed (see page title).
Click the buttons in the status information section to start and stop the xUML service. The page will be refreshed, displaying the new status.
Troubleshooting Service Startup
General Aspects
- A SOAP port can only be used by one running xUML service. When using the same SOAP port more than once, a warning is displayed in the xUML service log. The SOAP service will not run (see also Troubleshooting xUML Services).
Check the SOAP port of each deployed xUML service (see section Service Instances described on xUML Service Details). Either stop the other xUML service on the Bridge first, or adapt the SOAP port of the current xUML service accordingly and deploy it again. When stopping one of the two xUML services using the same SOAP port, the other xUML service will reserve the port, which is available again, immediately. This behavior allows a Zero-Downtime-Update. Bridge 7.0.0-beta3 It may that an xUML service uses features that require a specific xUML Runtime version. In case you try to run such a service on an E2E Bridge with an older Runtime version, the Runtime logs an error or a warning to the service standard log.
Warning
A warning will be logged if the Runtime does not support all features the service uses, but the service can be started nevertheless. In this case, unwanted side-effects may occur.[Warning][Internal][SRVLM][14][Functionality 'Compact JSON output of ...' is fully supported with xUML Runtime 2018.5 or newer. Some settings or options may be ignored.]
Fatal Error
A fatal error will be logged if the Runtime refuses to start the service. The service repository cannot be run with this Runtime version.[Fatal][Internal][SRVLM][13][Functionality 'Compact JSON output of ...' requires xUML Runtime 2018.5 or newer.]
[Fatal][Internal][SRVLM][15][The repository cannot be run with this xUML Runtime version.]
Problem
A deployed xUML service fails to start with error: Could not start server!.
The error message is displayed either in the standard log (see section Logging of xUML Services Logging of xUML Services) or in the xUML Model Compiler after deploying the xUML service with option startup selected.
Solution
The problem described above can have the following reasons:
- Another xUML service is already running on the same control port (see Control Port already in use).
- ipv6 is disabled on your server.
- You tried to deploy an xUML service with defined SAP backends, but the required libraries are missing (see (24.3) Troubleshooting xUML Services#SAP Libraries Missing).
- The xUML service uses features that require a specific xUML Runtime version and you are trying to run it on an Bridge with a lower Runtime version (see Starting and Stopping xUML Services).
- The number of running processes and used memory might be limited by the local system account of Windows (see Windows Limitation on the number of startable services).
- The service uses a persistent state database which is not available at startup (see Installing and Configuring Database Access or Troubleshooting Database Access).
Steps:
- Check the bridgeserver log of the xUML service. It contains details about errors that might have occurred (see xUML Service Standard Log).
- Check the start log of the xUML service. It contains the environment variables that were set at startup time and information about errors that might have occurred. For more details, see xUML Service Start Log.
- If ipv6 is disabled on your server, try starting the service with option
--http.service.bind.default-af
set to inet (see xUML Runtime Command Line Options for more). It may be that none of the above mentioned issues apply to your problem and the service logs do not contain any helpful information. To dig further down the problem, you can try starting the service from a system terminal. The terminal shows more logging information and this may help to narrow down the problem.
The data directory of the Bridge (default location: E2E_BRIDGE_DATA) contains one directory named bridge_<name of the service> for every service. This service directory contains a start script in folder bin (start.bat on Windows systems, start.sh on Unix systems.
Call this start script as follows:
start.bat <name of the program directory of the Bridge> e.g. in Windows: C:\E2E_BRIDGE_DATA\bridge_TransactionProcessing\bin> start.bat c:\E2E_BRIDGE_PROG
After you have finished analyzing the service startup problems, stop the manually started service with the stop.bat (Windows), stop.sh (Unix) script from the same folder, or press Ctrl-C or stop it in the Bridge.