【问题标题】:servlet action is not availableservlet 操作不可用
【发布时间】:2011-06-15 16:28:01
【问题描述】:

当我使用 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 文件添加到您的 web-inf/lib 文件夹中

如果有什么我遗漏的请告诉我

谢谢

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      试试下面的..

      在您的 webapp 的 classes 文件夹中创建以下文件

      文件名 -> commons-logging.properties 内容 -> org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog

      文件名 -> simplelog.properties -> 内容 -> org.apache.commons.logging.simplelog.defaultlog=debug

      这将在您部署 webapp 后为您提供日志..

      希望这行得通!

      【讨论】:

        【解决方案3】:

        我找到了原因,但直到现在还没有找到解决方案。当您的服务器无法找到org.apache.struts.action.ActionServlet 时会出现此问题。检查 struts 的 jar 是否位于部署的 lib 文件夹中。

        【讨论】:

        • 如另一个答案所述,解决方案可以在服务器启动日志中找到。
        猜你喜欢
        • 2012-06-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-14
        • 2010-12-08
        • 2014-10-26
        • 1970-01-01
        • 2014-08-28
        相关资源
        最近更新 更多