You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xmlrpc-dev@ws.apache.org by bu...@apache.org on 2002/04/28 15:39:53 UTC

DO NOT REPLY [Bug 8602] New: - We have the problem which is not terminated normally the operation of WebServer service.

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8602>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8602

We have the problem which is not terminated normally the operation of WebServer service.

           Summary: We have the problem which is not terminated normally the
                    operation of WebServer service.
           Product: XML-RPC
           Version: unspecified
          Platform: PC
        OS/Version: Windows NT/2K
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Source
        AssignedTo: rpc-dev@xml.apache.org
        ReportedBy: wishforyou@dreamwiz.com


* XML-RPC for JAVA.

We have the problem which is not terminated normally the operation of WebServer 
service.(shutdown method)

This was grasped by the threadpool causing by the reason why the threadpool is 
not initialized.

The problem we are about a version 1.0.

We appended WebServer.java file which is modified to the temporary.

Kim Hee-Yong(Nickname : daffodil)
wishforyou@dreamwiz.com
115-9 Nakwon-dong Chuncheon-si Kangwon-do, Republic of Korea
Mirero C&C Coperation.

* modified WebServer.java

public class WebServer 
    implements Runnable
{
    ....

	public void run()
    {
        ....

        }
        catch (Exception exception)
        {
            ....
        }
        finally
        {
            System.err.println("Closing XML-RPC server socket.");
            try
            {
                serverSocket.close();
                serverSocket = null;
            }
            catch (IOException ignore)
                {}

			releaseThreadPool();
        }
    }

	public void releaseThreadPool() {
		Runner	r;
		try {
			while (true) {
				r = (Runner)threadpool.pop();

				if (r.thread.isAlive()) r.thread.interrupt
();
				r.thread = null;
			}
        } catch (EmptyStackException ex) { }
	}

	....
}