`
younglibin
  • 浏览: 1207596 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Cannot locate the chosen ObjectFactory implementation: spring

阅读更多

今天又遇到这个问题 ,记得 2年前 自己搭建框架 就出现这个问题,当时自己没有弄出来,就找了项目经理,项目经理桌子上放了一杯水 ,我拿着笔记本去了 ,他挪杯子给我腾地方 放笔记本,杯子的水全洒在笔记本键盘上,我立刻卸了电池,然后 电脑吹了好久,开机后 竟然好了,今天又遇到了!我是 重启好多次 ,也没辙!

还是记下来吧 ,相信 错误一定是有原因的 找到解决办法为止:

 

描述一下 项目架构吧:

简单的web'项目:

在tomcat运行通过,

1.添加struts2.3.4 ,通过配置,测试 struts2 已经可以正常云新

 

2.添加spring支持,导入spring3.1.3 相应jar包,当然不是全部,只导入和 struts整合需要的jar

 

 

在 struts.properties 中将 struts.objectFactory = spring 使用

 

让后再启动 项目 出现下边问题:

 

2012-11-1 20:49:13 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
Unable to load configuration. - [unknown location]
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:450)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:193)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4072)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4726)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: Unable to load configuration. - [unknown location]
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:390)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:437)
... 28 more
Caused by: Cannot locate the chosen ObjectFactory implementation: spring - [unknown location]
at org.apache.struts2.config.BeanSelectionProvider.alias(BeanSelectionProvider.java:340)
at org.apache.struts2.config.BeanSelectionProvider.alias(BeanSelectionProvider.java:311)
at org.apache.struts2.config.BeanSelectionProvider.register(BeanSelectionProvider.java:245)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:210)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
... 30 more
2012-11-1 20:49:13 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2012-11-1 20:49:13 org.apache.catalina.core.StandardContext start
严重: Context [/orderMeal] startup failed due to previous errors
2012-11-1 20:49:14 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext
2012-11-1 20:49:15 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory ROOT
2012-11-1 20:49:15 org.apache.coyote.http11.Http11AprProtocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2012-11-1 20:49:15 org.apache.coyote.ajp.AjpAprProtocol start
信息: Starting Coyote AJP/1.3 on ajp-8009
2012-11-1 20:49:15 org.apache.catalina.startup.Catalina start
信息: Server startup in 16108 ms

 

 

 

解决办法:

 

 

这次绝对是我的错:

以为 struts-spring-plugin **.jar 以为是spring的 包

无意中才想起 是struts 的包 ,

哎 ,这两年 干嘛呢 ,退步了!谨记!

分享到:
评论

相关推荐

    FlexBuilder运行项目报Flex Builder cannot locate the required version of Flash Player

    标题 "FlexBuilder运行项目报Flex Builder cannot locate the required version of Flash Player" 描述了一个常见的问题,即在使用FlexBuilder开发Flex应用程序时,由于找不到合适的Flash Player版本,导致项目无法...

    vsftp连接错误cannot locate user entry:vsftpd

    在使用VSFTPD时,可能会遇到各种连接错误,其中"500 OOPS: cannot locate user entry:vsftpd"是一个较为常见的问题。该错误提示用户无法找到用户条目,这通常是因为配置文件中缺少了对用户或组的定义。 根据提供的...

    打开vivado的.xpr工程文件报错Cannot locate target loade

    ### 打开Vivado的.xpr工程文件报错Cannot Locate Target Loader的解决方案 #### 问题背景 在使用Xilinx Vivado设计工具进行FPGA/CPLD开发时,经常会遇到各种各样的问题,其中之一就是在尝试打开一个`.xpr`工程文件...

    vf6.0运行库(VFP6R.DLL,VFP6RCHS.DLL)

    描述中的错误“Cannot locate the Microsoft Visual FoxPro support library”表明系统在尝试运行依赖于Visual FoxPro 6.0运行库的程序时,未能找到必要的DLL文件,这通常是因为缺失或损坏的库文件导致的。...

    为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法

    然而,在安装`imagick`扩展时,可能会遇到各种问题,其中一种常见的错误是“Cannot locate header file MagickWand.h”。这通常意味着编译器在指定的路径下找不到必要的头文件,导致配置过程失败。 当安装`imagick`...

    TASKING linker 常见问题

    在进行嵌入式软件开发时,使用TASKING编译器的链接器(linker)是一项不可或缺的任务,链接器的主要作用是将编译生成的代码文件(通常为对象文件)链接成最终的可执行文件或库文件。在链接过程中,需要对内存区域...

    双击xpr打开错误.docx

    当你遇到"双击.xpr打开错误.docx"的问题,这意味着你的系统无法正确识别或启动Vivado来处理这个文件,导致出现“Cannot locate target loader”的错误信息。这个问题可能是由多种原因引起的,下面我们将深入探讨可能...

    android 5.0 api 21 sqlite3 not found sqlite3_enable_load_extension

    2.CANNOT LINK EXECUTABLE: cannot locate symbol "sqlite3_enable_load_extension" referenced by "sqlite3" 适用于android 5.0 API 21版本,使用方法 1. 包含3个文件 sqlite3,lib sqlite_jni.so,libsqlite.so 2....

    hadoop的winutils.exe及hadoop.dll文件

    我的报错:Could not locate Hadoop executable: E:\big_data\hadoop-3.3.0\bin\winutils.ex hadoop的winutils.exe及hadoop.dll文件,可以用于hadoop3.3. 下载好直接将两个文件复制到我们hadoop的bin目录下就行了

    Visual FoxPro 6.0/8.0/9.0运行库

    Visual FoxPro是一款由Microsoft开发的关系数据库管理系统,它在20世纪90年代至21世纪初广泛应用于数据库应用系统的开发。这款系统提供了强大的数据库管理、编程和用户界面设计功能,尤其受到小型企业和开发者社区的...

    android 4.4 api 19 sqlite3 not found sqlite3_enable_load_extension

    2.CANNOT LINK EXECUTABLE: cannot locate symbol "sqlite3_enable_load_extension" referenced by "sqlite3" 适用于android 4.4 API 19版本,使用方法 1. 包含3个文件 sqlite3,libsqlite_jni.so,libsqlite.so 2. ...

    sqlite3 命令无法执行出现cannot locate 'sqlite3_enable_load_extension'... CANNOT LINK

    在使用SQLite3命令行工具时,可能会遇到"cannot locate 'sqlite3_enable_load_extension'"的错误提示,这通常意味着系统在尝试执行SQL扩展加载功能时遇到了问题。SQLite3是一个轻量级、自包含的数据库引擎,它允许...

    X64 和 X86 Debuggers And Tools-x86_en-us.msi

    《X64与X86调试器及其工具详解——基于Qt与VS的调试环境搭建》 在软件开发过程中,调试工具扮演着至关重要的角色,尤其是对于深入理解代码执行流程、定位问题以及优化性能来说。本文将围绕“X64 Debuggers And ...

    海康摄像头spring boot

    在IT行业中,Spring Boot是一个非常流行的微服务框架,它简化了Spring应用的初始搭建以及开发过程。当将海康摄像头与Spring Boot结合时,我们可以构建一个高效、便捷的监控系统,利用Web技术实现在网页上实时展示...

    解决Can’t locate ExtUtils/MakeMaker.pm in @INC报错

    Can’t locate ExtUtils/MakeMaker.pm in @INC (@INC contains: inc /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5

    locate-sample-ui:用ReactJS编写的示例LOCATE UI

    有关更多LOCATE开发人员资源的信息,请访问我们的。入门安装NodeJS 从下载并安装最新稳定版本的Node.js克隆仓库克隆或下载此存储库的副本yarn install 从存储库目录中运行yarn install以安装必要的依赖项yarn start...

    MATLAB R2016b 支持Microsoft Visual Studio 2017补丁

    Locate your MATLAB installation by typing matlabroot at the MATLAB command prompt. This folder is referred to as &lt;MATLAB&gt; in subsequent steps. Exit MATLAB. Download the attached .zip file ...

    arcgis-dijit-locate-button-js:一个简单的 dijit 按钮,点击时使用 HTML5 Geolocation 导航到用户当前位置(如果可用)

    arcgis-dijit-locate-button-js特征一个简单的 dijit 按钮,点击后使用 ... class name for the widget container. default: "locateButton" map: myMap, // (required) map object. default: null. visible: true

Global site tag (gtag.js) - Google Analytics