WebSphere Application Server is still running even though it shows as stopped in Servers view

This technote explains how to resolve an error, that can occur when using IBM Rational Application Developer for WebSphere Software.

Symptom

Using Rational Application Developer 8.0.3 on Windows 2003 Enterprise Edition (32 bit) with a WebSphere Application Server 8 server defined. The server starts ok and functions ok. However, when it is stopped, the server shows as stopped in the Rational Application Developer Servers view but the java.exe process associated with the server is still running and continues to run for up to 3 minutes, before the process is done and you see "Server server1 stopped" on the console output ( == SystemOut.log). Why does it take so long for the server to stop after the stop request, and why does Rational Application Developer show the server stopped when it is not stopped?

Server console trace excerpt (SystemOut.log):


[12/22/11 5:58:46:894 CST] 00000007 AdminHelper A ADMN1020I: An attempt is made to stop the server1 server. (User >

[12/22/11 5:58:47:019 CST] 00000006 TCPChannel I TCPC0002I: TCP Channel TCP_1 has stopped listening on host * (IPv4) port 9060.

[12/22/11 5:58:47:050 CST] 00000006 TCPChannel I TCPC0002I: TCP Channel TCP_4 has stopped listening on host * (IPv4) port 9443.

[12/22/11 5:58:47:066 CST] 00000006 TCPChannel I TCPC0002I: TCP Channel TCP_2 has stopped listening on host * (IPv4) port 9080.

[12/22/11 5:58:47:081 CST] 00000006 TCPChannel I TCPC0002I: TCP Channel TCP_3 has stopped listening on host * (IPv4) port 9043.

[12/22/11 6:00:08:612 CST] 00000008 misc W ServerCommunicatorAdmin reqIncoming The server has decided to close this client connection.


Note: In most server stop requests you do not see the above warming message: ". server has decided to close this client connection.."


[12/22/11 6:01:47:205 CST] 00000006 ApplicationMg A WSVR0217I: Stopping application: isclite

[12/22/11 6:01:48:549 CST] 00000006 DragDropDeplo I CWLDD0004I: Stopping monitored directory application deployment service.

[12/22/11 6:01:48:549 CST] 00000006 DragDropDeplo I CWLDD0005I: Monitored directory application deployment service is stopped.

[12/22/11 6:01:48:642 CST] 00000006 TCPChannel I TCPC0002I: TCP Channel TCPInboundChannel_ipcc.Default_IPC_Connector_Name has stopped listening on host 127.0.0.1 (IPv4: 127.0.0.1) port 9633.

[12/22/11 6:01:49:017 CST] 00000006 FailureScopeC A WTRN0105I: The transaction service has shutdown successfully with no transactions requiring recovery.

[12/22/11 6:01:49:033 CST] 00000006 ServerCollabo A WSVR0024I: Server server1 stopped

Cause

If the status shows as stopped before the server is actually stopped, it is in most cases because the Java Management Extensions (JMX) service and connection used by Rational Application Developer server tools have been terminated by WebSphere Application Server.

Resolving The Problem

Rational Application Developer uses JMX API and connections to any WebSphere Application Server v6, v7, and v8 server profile specified in the server definition in the Servers view. By default it polls the server status every 5 seconds. In the above scenario, it appears that the JMX service and connection in WebSphere Application Server terminates before the WebSphere Application Server java process terminates. As a result, Rational Application Developer shows the server as stopped in the Servers view when the JMX connection are no longer present.

The above SystemOut.log shows an explicit close of the client connection of the server, which is not typically observed on most servers, but has been observed on some machine. After that it takes 3 minutes to close. There is nothing odd going on after except that it takes 2 more minutes to actually stop. The key here being to check if the client connection was closed on the server side and then if the server has been stopped. In this case Rational Application Developer is the client. Rational Application Developer server tools cannot control or prevent a server from dropping a client connection.
The only option may be to restart the server and reconnect to it.

If it is necessary to pursue as to why the JMX service and client is terminated or disconnected by WebSphere Application Server, then IBM Support for WebSphere Application Server should be contacted. IBM Support could further analyze the console output (SystemOut.log and SystemErr.log) or other traces to see why and where the time is being spent on during the WebSphere Application Server process shutdown.

It may also be helpful to be on the latest maintenance or update for the Rational Application Developer version in use and especially to be at the latest Fix Pack for the WebSphere Application Server version.