`
在下个路口
  • 浏览: 111434 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Struts2配置时常见的问题

阅读更多
struts2的配置问题:
  
      配置步骤:
          一:添加jar包,常用的有八个jar文件

  注意jar包的冲突问题,比如用到xml解析的时候xml-apis.jar和xerces-2-6-2就会和JDK1.6冲突,冲突时会报如下错误:
Caught exception while loading file struts-default.xml - [unknown location]
	at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:839)
	at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:131)
	at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:100)
	at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:130)
	at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
	at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
	at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
	at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:203)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4775)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5452)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1282)
	at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1446)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:322)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
	at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1374)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519)
	at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XML11Configuration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
	at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
	at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
	at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
	at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
	at com.sun.org.apache.xalan.internal.xsltc.trax.SAX2DOM.<init>(SAX2DOM.java:69)
	at com.sun.org.apache.xalan.internal.xsltc.runtime.output.TransletOutputHandlerFactory.getSerializationHandler(TransletOutputHandlerFactory.java:187)
	at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getOutputHandler(TransformerImpl.java:392)
	at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerHandlerImpl.setResult(TransformerHandlerImpl.java:137)
	at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.setup(DomHelper.java:213)
	at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:198)
	at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:189)
	at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:175)
	at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:115)
	at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:830)
	... 23 more


   二:配置struts.xml
      配置的标签格式就不多说了,就提提需要注意的问题。
       (1)添加xml头部信息,别粗心。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

缺少的话会是404.
      (2)<action name="LoginAction" class="com.huaxin.struts.LoginAction">  name的值必须和jsp页面中想要请求的Action一致。不一致时报如下错误
java.lang.NullPointerException
	org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69)
	com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)
	org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)
	org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:501)
	org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:432)

因为是通过jsp中form的提交路径找到struts配置中的该Action类。
     (3)struts2中struts2配置文件文件名必须为struts.xml,在struts1中为struts—config.xml,而且该文件必须存放在项目中的src目录下,千万别放到WEB-INF下了。
   三:Action类的实现
       (1)写该类的时候在继承ActionSupport的时候记得重写execute()方法就行了。
       (2)该类中所用到的参数名需和jsp页面表格中提交的参数名一致。比如类中有这两个属性
String username;
String password;
那么jsp中参数名必须一致。而get(),set()方法最好用快捷键实现,如果采用以上属性名,则get()方法必须为getUsername() 注意大小写的错误。
     上面这些问题都是刚刚配置的时候遇到的问题,总之一切得细心细心再细心,一个字母的差错,说不定会浪费你一两个小时的时间去发现这个错误。
  • 大小: 22.3 KB
分享到:
评论

相关推荐

    struts2 配置dtd 自动提示

    在配置Struts2时,通常会使用一个名为`struts.xml`的配置文件,该文件定义了应用程序的行为和组件。为了在开发环境中获得更好的代码辅助和提示,我们需要使IDE(例如Eclipse)理解`struts.xml`文件的结构,这通常...

    struts2配置文件改变位置问题

    总结一下,当遇到Struts2配置文件位置更改问题时,应遵循以下步骤: 1. 确保新的`struts.xml`文件路径是相对于`WEB-INF/classes`目录的。 2. 更新`web.xml`中的`StrutsPrepareAndExecuteFilter`过滤器配置,通过`...

    ·Struts2配置文件介绍 超级详细

    当开发者未在自己的`struts.xml`中指定某些配置时,默认会采用这些预定义的配置。 #### 二、struts.xml详解 - **Packages**:在`struts.xml`中,首先定义了一个或多个`package`元素,每个`package`都代表了一组...

    配置struts2常见错误

    ### 配置Struts2常见错误及解决方案 #### 引言 Struts2是一个基于Java的Web应用框架,它能够帮助开发者快速构建出结构清晰、易于维护的应用程序。然而,在实际开发过程中,开发者经常会遇到一些配置上的问题,这些...

    struts2配置文件加载顺序

    了解Struts2配置文件的加载顺序对于优化应用性能和解决配置问题至关重要。 Struts2的配置主要分布在以下几个文件中: 1. **struts-default.xml**:这是Struts2的核心配置文件,位于`struts2-core.jar`库的`/org/...

    Struts2.5.2的配置及问题解决

    本文将详细介绍Struts2.5.2的配置过程以及可能遇到的问题和解决方案。 首先,配置Struts2.5.2需要从官方站点下载所需的jar包。在http://struts.apache.org/download.cgi#struts252上,你可以找到两个选项:1是指...

    struts2配置文件传值中文乱码

    在IT领域,特别是Web开发中,遇到中文乱码问题是相当常见的,尤其是在使用Struts2框架进行项目开发时。本文将围绕“Struts2配置文件传值中文乱码”这一主题,深入探讨其成因、解决方案以及相关的配置细节,旨在帮助...

    徒手配置Struts2

    #### 一、徒手配置Struts2环境时需注意的关键事项 在没有使用任何集成开发环境的情况下配置Struts2,可能会遇到各种问题,尤其是在配置过程中对于细节的把握至关重要。以下是配置过程中需要注意的一些关键点: 1. ...

    03解决struts2配置文件无提示问题

    Struts 2是Struts的下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理...

    Struts2零配置

    然而,随着时间的推移,人们逐渐意识到过于依赖配置文件可能会带来诸多不便,比如缺乏编译时检查、配置语法复杂、文件日益臃肿等问题。因此,“约定优于配置”的理念应运而生。 **约定优于配置**的核心思想是通过...

    struts2 配置文件的问题

    此外,标签中的“源码”提示我们关注Struts2的源代码,这对于理解和调试配置问题非常有帮助。理解源代码可以帮助我们更好地把握框架的工作原理,解决配置错误或性能优化等问题。 最后,工具标签可能指的是开发过程...

    eclipse 配置struts2

    记得在开发过程中,利用IDE的错误提示和日志信息来定位和解决问题,同时也可以借助Struts2的官方文档和社区资源来深入学习和提升。 标签中的“源码”指的是Struts2的源代码,开发者可以通过阅读源码来了解其内部...

    struts2配置环境需要的jar包

    在使用Struts2开发项目时,环境配置是至关重要的第一步。以下将详细介绍如何配置Struts2所需的jar包,以及如何将这些jar包应用于你的项目。 首先,`struts2配置环境需要的jar包`意味着你需要确保你的开发环境中包含...

    struts2开发遇到的问题

    这个严重错误通常涉及到Struts2配置问题,可能的原因包括: - `struts.xml`中的包路径错误。 - 工程中导入了不兼容的`commons-fileupload`包。确保使用与Struts2版本兼容的库。 以上就是Struts2开发过程中常见的...

    Struts2配置时常用的包

    8. **struts2-config-browser-plugin**:这个插件提供了一个配置浏览器,可以在运行时查看和调试Struts2的配置信息,对于理解和调试配置问题非常有帮助。 在实际配置中,开发者需要根据应用的需求选择合适的包,并...

    Struts2 与Freemarker 的配置方法

    总结来说,Struts2与Freemarker的配置主要是围绕工程的环境搭建、Struts2的web.xml配置、struts.xml配置以及Freemarker模板的编写展开的。通过这种集成,开发者可以利用Struts2的强大控制逻辑和Freemarker的模板能力...

    struts2+spring3配置常见问题

    本文主要描述在配置过程中出现的一些问题,并没有详细描述如何配置,其相关步骤请自行查阅。本文主要讲解如下几个问题: 将struts.xml文件放到指定位置; 包含多个struts-XX.xml文件; 将spring配置文件放到指定位置...

    struts2包及配置

    因此,在使用Struts2时,开发者需要保持对框架版本的关注,及时更新修复漏洞。 **五、源码分析** 对于学习和理解Struts2,阅读源码是深入掌握其工作原理的重要途径。通过查看`ActionInvocation`、`ActionContext`...

    Struts2漏洞检查工具Struts2.2019.V2.3

    2. 框架配置错误:如果开发者在配置Struts2时未遵循最佳实践,可能会导致敏感信息泄露、权限提升等安全问题。例如,不正确的Action配置可能导致未授权访问。 3. 类加载器问题:Struts2使用了自定义的类加载机制,这...

    struts2项目部署

    3. **配置web.xml**:在`web.xml`中配置Struts2的核心过滤器`org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter`。同时,确保配置了正确的Context路径和其他必要配置。 4. **配置struts.xml*...

Global site tag (gtag.js) - Google Analytics