Wednesday, May 20, 2009

Tomcat 6 CGI: java.io.IOException: CreateProcess: perl

Problem:
java.io.IOException: CreateProcess: perl "C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\ROOT\WEB-INF\cgi\test.txt" error=2

Solution:
Update the conf/web.xml to add the follings:
FROM:


<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>
</init-param>

<load-on-startup>5</load-on-startup>
</servlet>

TO:

<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>
</init-param>

<init-param>
<param-name>executable</param-name>
<param-value>cmd /c</param-value>
</init-param>

<load-on-startup>5</load-on-startup>
</servlet>

Restart Tomcat.

Just an FYI.... I still can't enable CGI in Tomcat 6 after fixing this issue. What the $%@#$%

No comments: