I don't know anything about ColdFusion, but here are some things to try:

[EMAIL PROTECTED] wrote:
Hi all

I am configuring a struts enabled web application using ColdFusion MX. Please do not ignore this thread as it is ColdFusion, because I feel the issue I have is a generic one and could happen in any J2EE servers. I have already posted this in ColdFusion forum but I feel the issue has got to do with struts. Also please do not suggest alternatives for ColdFusion, because that is the only application server we have and I wanted to use Struts. I followed this article about Struts on ColdFusion ( http://www.macromedia.com/devnet/mx/coldfusion/articles/struts.html). After following all the configuration steps and I tried http://localhost:8500/do/welcome, I get "503 null" error. But the CF application server is running fine and it displays other pure ColdFusion pages.

I am new to struts and I feel that there is a problem in loading the ActionServlet. Following the error and configuration information, if you need more information please let me know. I would highly appreciate your help.

These are the error messages I found in the coldfusion log file:

Check you logs again and see if there are 'Root Cause' traces associated with those, or any earlier stack traces that may be relevant. There's nothing here to indicate why the action servlet is unabailable.

This is action-mapping excerpt of struts-config.xml:

Shouldn't matter, provided the file is well-formed and valid according to the DTD. Try validating it in an XML-aware editor/IDE to make sure.

Following is the excerpt included in the web.xml file:
        <servlet>
                <servlet-name>action</servlet-name>
 <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
                <init-param>
                        <param-name>config</param-name>
 <param-value>/WEB-INF/struts-config.xml</param-value>
                </init-param>
                <init-param>
                        <param-name>debug</param-name>
                        <param-value>2</param-value>
                </init-param>
                <init-param>
                        <param-name>detail</param-name>
                        <param-value>2</param-value>
                </init-param>
                <init-param>
                   <param-name>application</param-name>
                   <param-value>ApplicationResources</param-value>
                </init-param>
                <load-on-startup>2</load-on-startup>
        </servlet>

Most of those init params aren't needed/used with Struts 1.3.5; they come from a much older (1.0? 1.1?) version. They shouldn't hurt but, for example, the resource bundle configuration will need to be moved into your struts-config.xml once you get things up and running.

        <!-- Standard Action Servlet Mapping -->
        <servlet-mapping>
                <servlet-name>action</servlet-name>
                <url-pattern>/do/*</url-pattern>
        </servlet-mapping>
<!-- Struts Tag Library Descriptors -->
        <taglib>
                <taglib-uri>struts-bean</taglib-uri>
 <taglib-location>/WEB-INF/lib/struts-bean.tld</taglib-location>
        </taglib>
<taglib>
                <taglib-uri>struts-html</taglib-uri>
 <taglib-location>/WEB-INF/lib/struts-html.tld</taglib-location>
        </taglib>
<taglib>
                <taglib-uri>struts-logic</taglib-uri>
 <taglib-location>/WEB-INF/lib/struts-logic.tld</taglib-location>
        </taglib>
<taglib>
                <taglib-uri>struts-nested</taglib-uri>
 <taglib-location>/WEB-INF/lib/struts-nested.tld</taglib-location>
        </taglib>

What version of the Servlet spec does ColdFusion implement? Those taglib entries shouldn't be necessary if CF is at all current in its servlet support.

This is how I have configured and I am using ColdFusion MX 7.

1. Downloaded Struts 1.3.5 and placed all the struts jar files in [CfusionMX/wwwroot]/WEB-INF/lib folder. 2. Downloaded Tomcat 4.1.34 and placed servlet.jar in [CfusionMX/wwwroot]/WEB-INF/lib folder.

You shouldn't include servlet.jar in your web app; it's the container's responsibility to provide that.

3. Downloaded Xalan-j 2.7.0 and placed xalan.jar in [CfusionMX/wwwroot]/WEB-INF/lib folder. 4. Downloaded Xerces-j 2.9.0 and placed xercesImpl.jar in [CfusionMX/wwwroot]/WEB-INF/lib folder.

What version of the JDK are you using? I doubt you need Xalan and Xerces. If you're on JDK 1.4 or later, they may be conflicting with the bundled JAXP implementation.

5. Placed struts-bean.tld, struts-html.tld, struts-logic.tld, struts-nested.tld in [CfusionMX/wwwroot]/WEB-INF/tlds folder.

Again, unless CF implements an older version of the Servlet spec, you shouldn't need these files. Including them shouldn't hurt, either, though.

6. Enabled session variables using J2EE. 7. Edited web.xml as required.
8. Placed struts-config.xml in [CfusionMX/wwwroot]/WEB-INF folder.
9. Placed *.cfm files in [CfusionMX/wwwroot]/cfm folder.
10. Compiled and jarred the package of all the java classes and placed the jar file in [CfusionMX/wwwroot]/WEB-INF/lib folder.
11. Placed accounts.dat in [CfusionMX/wwwroot]/WEB-INF/classes folder.

Am I going wrong anywhere? Please help.

Try those suggestions and see if it helps. You might also want to look for a more up-to-date howto article, since I suspect the one you're following is quite out of date based on some of your configuration steps.

L.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to