servlet操作不可用

时间:2011-01-26 07:09:46

标签: servlets struts http-status-code-404

当我使用struts调用servlet时会发生一件奇怪的事情,如果我从我的本地主机调用它,它会被调用但是当我在我的Web服务器上部署它时会抛出错误,说“ servlet操作不可用< /强>“

这是我的web.xml

   <servlet>
            <servlet-name>action</servlet-name>
            <display-name>socialauthdemo</display-name>
            <description>Application for socialauth demo</description>
            <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>
            <load-on-startup>2</load-on-startup>
    </servlet>

    <servlet-mapping>
            <servlet-name>action</servlet-name>
            <url-pattern>*.do</url-pattern>
    </servlet-mapping>

我的struts-config.xml如下 -

<action-mappings>

            <action path="/socialAuth" type="com.auth.actions.SocialAuthenticationAction" name="authForm" scope="session">
                    <forward name="failure" path="/jsp/error.jsp" />
            </action>

            <action path="/socialAuthSuccessAction" type="com.auth.actions.SocialAuthSuccessAction" name="authForm" scope="session">
                    <forward name="success" path="/jsp/authSuccess.jsp" />
                    <forward name="failure" path="/jsp/error.jsp" />
            </action>

    </action-mappings>

我已将 strus.jar 文件添加到y web-inf / lib文件夹

如果我有什么遗失,请告诉我

由于

3 个答案:

答案 0 :(得分:1)

名称为action的servlet无法初始化。它在服务器尝试构造和初始化时抛出异常。阅读服务器启动日志。完整的异常和堆栈跟踪就在那里。那部分应该反过来自我解释,足以解决问题。如果您无法解密异常/堆栈跟踪,请随时更新您的问题以包含它。

答案 1 :(得分:1)

尝试以下方法..

在webapp

的classes文件夹中创建以下文件

文件名称 - &gt; commons-logging.properties 内容 - &gt; org.apache.commons.logging.Log = org.apache.commons.logging.impl.SimpleLog

文件名称 - &gt; simplelog.properties - &gt; 内容 - &gt; org.apache.commons.logging.simplelog.defaultlog = debug

一旦部署了webapp,这将为您提供日志..

希望这有效!!

答案 2 :(得分:0)

我找到了原因,但直到现在才解决。当您的服务器无法找到org.apache.struts.action.ActionServlet时,会发生此问题。检查struts的jar是否放在部署的lib文件夹中。