zoukankan      html  css  js  c++  java
  • Struts的配置

    1. 一个大小写的问题

    下午首次触碰了Struts,碰到了一个问题,只要是Strus的配置一加上去,就会报异常:

    Error during context [/Struts2qs] restart

    org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Struts2qs]]

    Caused

    by: java.lang.IllegalArgumentException: Filter mapping specifies an unknown filter name Struts2

       原因:

    <?xml version="1.0" encoding="utf-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <filter>
      <filter-name>struts2</filter-name>
      <filter-class>org.apache.Struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
      <filter-name>Struts2</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>
    </web-app>

       原因非常简单:注意下划线的两个标注,首字母的大小写不一致。这一点也说明了:filter-mapping节点其实是对filter节点的说明

    2. 无法找到FilterDispatcher

    上面的问题调好之后,网站依然不能访问,后来在tomcat的log里面的"localhost.2013-05-22.log“文件中找到了端倪,发现了一个异常:Exception starting filter struts2

    java.lang.ClassNotFoundException: org.apache.Struts2.dispatcher.FilterDispatcher(这个异常是在Tomcat启动时即发现出来的)。

    在tomcat的安装目录下面的lib文件夹中添加了Strus2的相关Jar包文件即可:

    common-fileupload.jar

    common-io.jar

    commons-logging-X.jar

    commons-lang3-3.1

    freemarker-X.jar

    ognl-X.jar

    strus2-core-X.jar

    x-work-core-X.jar

    javassist-3.11.0.GA

    网传这是因为使用了绿色Tomcat的原因,更有的人认为是因为Tomcat的安装路径有了空格造成的(Program File)。

    不过后来通过虚拟目录配置的工程,如果在Tomcat的lib有jar包,在工程里面的lib中也有相同的jar包,也会报错。所以如果是部署在别的地方,是不需要向Tomcat的lib中扔jar包的。

    3.无法加载strus.xml文件

    需要在XML头行声明和根节点之间添加DTD声明才可以。

    <?xml version="1.0" encoding="GBK"?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
        "http://struts.apache.org/dtds/struts-2.1.7.dtd">
    <struts>
    <package name="strutsqs" extends="struts-default">
      <action name="Login" class="lee.LoginAction">
        <result name="error">/error.jsp</result>
        <result name="success">/welcome.jsp</result>
      </action>
    </package>
    </struts>
  • 相关阅读:
    spring jdk动态代理
    java分页对象封装
    jQuery---ajxa
    创建ajax对象
    EL基础语法
    jsp语法
    servlet cookie session
    java 单例模式
    yapi 强大的api管理系统
    Orange--一个基于OpenResty / Nginx的HTTP API Gateway
  • 原文地址:https://www.cnblogs.com/xiashiwendao/p/3092967.html
Copyright © 2011-2022 走看看