MaGicNote
7Nov/090

[JAVA] Could Not Start Tomcat Service on Windows Server 2003

เมื่อต้นเดือนตุลาคม ได้มีโอกาศสังคยานาเครื่องที่ทำเป็น web server ใหม่ โดยเปลี่ยนจาก Debian เป็น Windows Server 2003 R2 ก็เลยถือโอกาศ ลง JAVA, OracleXE และ Tomcat เอาไว้ทำเป็น Project Demo Server ซะเลย แต่บุญไม่ถึง มีเจ้ากรรมนายเวรอันใดมาขวางกั้นก็ไม่ทราบ ทำให้ Apache Tomcat ที่ลงไปนั้น Start Service ไม่ได้ซะงั้น นั้งหาวิธีอยู่พักใหญ่ว่าองค์อันใดลงสถิต ก็เลยฉุดคิดได้ว่า ทำไม ตรูไม่เข้าไปดูใน log ฟ่ะ คิดได้ดังนั้น เปิดเข้าไป มี error ตามนี้

[2009-10-06 13:17:29] [info] Procrun (2.0.4.0) started
[2009-10-06 13:17:29] [info] Running Service...
[2009-10-06 13:17:29] [info] Starting service...
[2009-10-06 13:17:29] [174  javajni.c] [error] The specified module could not be found.
[2009-10-06 13:17:29] [994  prunsrv.c] [error] Failed creating java C:\Program Files\Java\jre6\bin\client\jvm.dll
[2009-10-06 13:17:29] [1269 prunsrv.c] [error] ServiceStart returned 1
[2009-10-06 13:17:29] [info] Run service finished.
[2009-10-06 13:17:29] [info] Procrun finished.

วรนุชอะไรของมันฟ่ะเนี้ย

Google โดยพลัน ได้คำตอบมาว่า ตัว jvm.dll มันหาไฟล์ msvcr71.dll ไม่เจอ เพราะ Windows Server 2003 R2 มันไม่มีไฟล์นี้มาให้ใน Windows\System32 (ปกติ มันจะมีให้หรือเปล่าหว่า... ช่างแม่)

ต้องหา download มาลงสิครับงานนี้ คุ้ย Google อีกครั้งเป็นการใหญ่ ได้แหล่งวัตถุดิบมาเป็นโหล เลือกผู้เข้ารอบมา 1 อัน ระหว่างรอมัน download ด้วย speed เท่ากับทากเดินอยู่นั้น ก็มีพรายมากระซิบที่ข้างหูว่า มันน่าจะมีใน %JAVA_HOME% น่ะ ด้วยความสงสัย เปิดเข้าไปดูใน %JAVA_HOME\bin% อ้าว ไอ้ควาย มีอยู่นี่ก็ไม่บอก หลอกให้กรุ download อยู่ได้ ไม่รอช้า aboard download task ทันใด แล้ว copy ไฟล์จาก %JAVA_HOME\bin\msvcr71.dll% ไปไว้ที่ Windows\System32\msvcr71.dll จากนั้นก็ลอง start tomcat service นั้งลุ้นอยู่ 1 วินาที service started โอว์มายก้อด บทมันจะง่ายก็ง่ายเหลือเชื่อ

จบไปอีก 1 กรรม