It's all about the answers!

Ask a question

How to troubleshoot a WebSphere Liberty application that fails to start

Erik Mats (105523) | asked Aug 24 '16, 8:57 a.m.
edited Aug 24 '16, 9:44 a.m.
For one customer I found an application (happened to be RELM) simply wasn't starting.

RELM was not mentioned in any Liberty logs (messages.log, console.log, trace.log).

This warning is expected if relm is listed in application.xml but relm.war does not exist:
[8/24/16 11:12:20:145 CEST] 00000070 W CWWKZ0014W: The application relm could not be started as it could not be found at location C:/Program Files/IBM/JTS-CCM-keys-Win64_6.0.2/server/liberty/servers/clm/apps/relm.war.

This message is expected if relm.war exists and relm is listed in
[8/24/16 11:12:20:145 CEST] 0000006c                      I CWWKZ0018I: Starting application relm.

The two above messages are mutually exclusive if relm is listed in

Customer's application.xml was last edited in July , and RELM last worked last week, yet there is no mention of relm in the latest logs.

We can rule out that relm is not mentioned in the customer's application.xml, so instead there must be an error that prevents either CWWKZ0018I or CWWKZ0014W from showing for RELM.

I have tried running the max log level on my end by specifying the following in server.xml, but there is no more verbose information that seems relevant:
    <logging hideMessage="SRVE9967W" traceSpecification="*=finest" consoleLogLevel="INFO">

Trace.log rolls over with only one file even though I have specified this:

A colleague found a PMR where --clean was recommended for a similar problem with DM (not RELM).

This solution was accepted:

RELM does not start yet there is no error even though we know RELM is mentioned in your application.xml. The most likely cause of this error is a problem with your Websphere Liberty cache. Perhaps this is ultimately due to the native out of memory errors.
To resolve this problem, try to clean the Liberty cache following these steps:                                                                 
(1) Stop WAS Liberty server.                                           
(2) Backup "liberty.server.bat"                                        
(3) Edit "liberty.server.bat"                                          
- liberty.server.bat is at <jtshome>/server                            
- find this line in liberty.server.bat and add "--clean"               
  call "%CLM_LIBERTY_HOME%"\bin\server.bat "%1" %CLM_LIBERTY_SERVER_NAME%                                 
  call "%CLM_LIBERTY_HOME%"\bin\server.bat "%1" %CLM_LIBERTY_SERVER_NAME% --clean

On Linux this is the line in "liberty.server":

(4) Start WAS Liberty server using "server.startup.bat"                
(5) Replace "liberty.server.bat" with backup file you took at (2)      

This resolved the issue and RELM would again start.

One answer

permanent link
Erik Mats (105523) | answered Aug 24 '16, 8:57 a.m.
Answer was accepted.

Your answer

Register or to post your answer.