`
zhou304082042
  • 浏览: 32791 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Struts2中的url-pattern带来的一个引入js,css的问题

阅读更多
册页面中用到了<s:head theme="ajax" />来引入dojo,做了一个简单的检测用户名是否存在的ajax效果。昨天还好好的,今天页面装载后就报"dojo未定义"的js错误。打开浏览器的查看源代码,tag起效了,在浏览器地址栏中敲struts/dojo/dojo.js,确实找不到文件。奇了怪了,是不是谁把struts包里的dojo文件给删除了?一顿好找,没问题。干脆新建一个jsp,只放<s:head theme="ajax" />,直接对其访问,坏了,jsp页面甩出一大堆错误,在org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:58)中抛出了NullPointerException。翻出源代码,一顿找,问题出现在

          
Java代码
Dispatcher du = Dispatcher.getInstance();  
  
Map extraContext = du.createContextMap(new RequestMap(req),  
        req.getParameterMap(),  
        new SessionMap(req),  
        new ApplicationMap(pageContext.getServletContext()),  
        req,  
        res,  
        pageContext.getServletContext());  


调试显示du为null。该request的Dispatcher没初始化?赶紧到web.xml看看,原来

Java代码
<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>  


被同事改为

Java代码
<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>*.action</url-pattern>  
</filter-mapping>
  



这样.jsp文件没走FilterDispatcher,Dispatcher du = Dispatcher.getInstance()当然为null了。原来struts的tag用法比较严格:所在jsp必须经过FilterDispatcher。突然灵光一现,由此及彼,jsp不好用了,js,css不也一样的道理吗?遂赶紧加上:

  
Java代码
<filter-mapping>  
        <filter-name>struts2</filter-name>  
        <url-pattern>/struts/*</url-pattern>  
    </filter-mapping>  


测试通过。
分享到:
评论

相关推荐

    struts2-dojo-plugin-2.2.1.jar

    Struts2-dojo-plugin-2.2.1.jar 是一个针对Apache Struts2框架的扩展插件,主要用于增强Struts2应用的用户界面交互性,特别是通过集成Dojo JavaScript库来提供丰富的AJAX功能和用户体验。这个插件是Struts2与Dojo ...

    struts2-ssl-plugin-1.2.1.jar

    struts2-ssl-plugin-1.2.1.jar

    json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar

    `struts2-json-plugin-2.1.8.1.jar` 则是Struts 2框架的一个插件,主要用于增强Struts 2对JSON的支持。Struts 2是一款非常流行的MVC(Model-View-Controller)框架,用于构建企业级的Java Web应用程序。这个插件允许...

    struts2-dojo-plugin-2.3.15.3.jar.zip

    Struts2 Dojo Plugin是Apache Struts框架的一个扩展,它为开发者提供了丰富的AJAX功能,以便在基于Struts2的应用程序中实现动态、交互式的用户界面。这个版本号"2.3.15.3"表明这是一个较旧的版本,但仍然在许多现有...

    struts2-spring-plugin-2.3.4.jar

    Struts2-Spring-Plugin-2.3.4.jar 是一个专门为 Struts 2 框架和 Spring 框架整合而设计的插件,主要用于处理 Struts 2 和 Spring 之间的集成问题。在Java Web开发中,这两个框架经常一起使用,Spring 提供了依赖...

    struts2-sitemesh-plugin-2.2.1.1.jarstruts2

    Struts2是一个非常流行的Java Web开发框架,它提供了一种模型-视图-控制器(MVC)架构,帮助开发者构建可维护、结构清晰的Web应用。Sitemesh则是一个页面布局和装饰框架,用于统一网站的外观和感觉,增强页面的...

    struts2-json-plugin-2.3.8.jar

    Struts2 JSON Plugin是针对Apache Struts2框架的一个重要组件,版本为2.3.8。这个插件主要的功能是让Struts2应用程序能够轻松地处理JSON(JavaScript Object Notation)数据格式,使得Web应用可以方便地进行JSON序列...

    struts2-core-2.0.11源码

    Struts2是一个非常著名的Java Web开发框架,它基于MVC(Model-View-Controller)设计模式,极大地简化了Java Web应用程序的开发。Struts2核心包`struts2-core-2.0.11`包含了框架的核心组件和功能,使得开发者能够...

    struts2-convention-plugin-2.3.15.1.jar

    struts2-convention-plugin-2.3.15.1.jar

    struts2-jfreechart-plugin-2.1.8.1.jar

    struts2-jfreechart-plugin-2.1.8.1.jar

    struts-json-plugin-2.1.8.jar struts2-junit-plugin-2.1.8.jar json-lib-2.1.jar

    Struts2是一个非常流行的Java Web开发框架,它提供了一种模型-视图-控制器(MVC)架构,便于开发者构建动态、数据驱动的Web应用程序。然而,在开发过程中,经常会出现库文件版本不兼容的问题,这可能导致程序运行...

    struts2-spring-plugin-2.3.24.1.jar

    最新struts2-spring-plugin-2.3.24.1.jar

    struts2-core-2.1.6.jar

    struts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jarstruts2-core-2.1.6.jar...

    struts2-jquery-plugin使用手册,自己写的

    Struts2-jQuery-Plugin是基于Struts2框架的一个扩展插件,它为开发者提供了丰富的jQuery UI组件,使得在Struts2应用中实现交互式的用户界面变得更加便捷。这个使用手册将详细阐述如何集成并利用该插件提升Web应用的...

    struts2-dojo-plugin-2.1.8.jar

    struts2-dojo 跨域时解决拒绝访问的问题

    struts2-core-2.2.1-sources.jar

    struts2-core-2.2.1-sources.jar 源码,学strut2源码时能用到的

    struts2-jfreechart-plugin-2.0.11.jar

    struts2-jfreechart-plugin-2.0.11.jarstruts2-jfreechart-plugin-2.0.11.jarstruts2-jfreechart-plugin-2.0.11.jar

    struts2-core-2.3.15.1.jar

    struts2-core-2.3.15.1.jar

    struts2-spring-plugin-2.2.1.jar

    struts2-spring-plugin-2.2.1.jarstruts2-spring-plugin-2.2.1.jarstruts2-spring-plugin-2.2.1.jar

    struts2-jquery-plug ShowCase

    Struts2是一个强大的Java web应用程序框架,它提供了一种组织MVC(模型-视图-控制器)架构的方式,使得开发者可以更容易地构建可维护、可扩展的Web应用。jQuery则是一个广泛使用的JavaScript库,简化了DOM操作、事件...

Global site tag (gtag.js) - Google Analytics