struts+ibatis+spring出问题了··请高手们帮忙

jofy1004 2008-05-21 09:19:07
log4j的错误:
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/applicationContext.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/applicationContext.xml]

我的目录结构:


web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<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>


struts.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<package name="struts2" extends="struts-default">
<default-interceptor-ref name="paramsPrepareParamsStack" />
<action name="listAction" class="com.action.EmpAction">
<result name="list">/list.jsp</result>
</action>
</package>
</struts>


applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<!-- spring代理的数据源,与数据库简介从这里开始 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@127.0.0.1:1521:orcl</value>
</property>
<property name="username">
<value>system</value>
</property>
<property name="password">
<value>orcl</value>
</property>
</bean>

<bean id="client" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<property name="configLocation">
<value>classpath:sqlMapConfig.xml</value>
</property>
</bean>
<!-- -->
<bean id="empDao" class="com.dao.EmpDao">
<property name="client">
<ref bean="client"/>
</property>
</bean>

<!-- 门面类 -->
<bean id="face" class="com.face.Face">
<property name="empDao">
<ref bean="empDao"/>
</property>

</bean>
</beans>

struts.properties:
struts.locale=zh_CN
struts.i18n.encoding=UTF-8
struts.objectFactory=spring

我是根据网上照得例子做的,但是提示找不到spring.xml文件~~~不知道错在哪··请高手们指点,或又直接可运行的例子,发给我,先谢谢完了。
邮箱:jofy1004@163.com
QQ:37514478
...全文
339 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jofy1004 2008-05-21
  • 打赏
  • 举报
回复
CSDN不能下···老是链接错误·~~其他地方还没找到~~官方网站找不到位置在哪,英语烂。。。
我有QQ:37514478
邮箱:jofy1004@163.com
msn:jofy3211776@hotmail.com

请问你那个方便?
M_song 2008-05-21
  • 打赏
  • 举报
回复
网上找吧,我这有,但不晓得怎么发给你!
aim_less 2008-05-21
  • 打赏
  • 举报
回复
需要在struts的配置文件中加入:
<plug-in className= "org.springframework.web.struts.ContextLoaderPlugIn ">
<set-property property= "contextConfigLocation " value= "/WEB-INF/bean-config.xml "/>
</plug-in>
才可以。
jofy1004 2008-05-21
  • 打赏
  • 举报
回复
这个包没找到在哪下 -_-!!!
aim_less 2008-05-21
  • 打赏
  • 举报
回复
我又,需要的话说下。
M_song 2008-05-21
  • 打赏
  • 举报
回复
应该是没有加struts2-spring-plugin-2.0.6.jar包
jofy1004 2008-05-21
  • 打赏
  • 举报
回复
我改了,现在的错误是:
Cannot locate the chosen ObjectFactory implementation: spring - [unknown location]
at org.apache.struts2.config.BeanSelectionProvider.alias(BeanSelectionProvider.java:224)
at org.apache.struts2.config.BeanSelectionProvider.alias(BeanSelectionProvider.java:195)
at org.apache.struts2.config.BeanSelectionProvider.register(BeanSelectionProvider.java:153)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131)
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:201)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:223)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:304)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:77)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3600)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4189)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:904)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:867)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1112)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

我最开始是把spring.xml放在web.xml下的···但是也没运行出来··错误也是找不到spring文件
M_song 2008-05-21
  • 打赏
  • 举报
回复
我这有struts+spring+hibernate+mysql的小例子!需要可以m我
lovingprince 2008-05-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 pizzame 的回复:]
是找不到你的[/applicationContext.xml];文件

<param-value>applicationContext.xml </param-value>

你的配置上有写问题,你这样配。spring会在WEB-INF下去找。而你的文件是在src源文件文件夹里,所以需要这样配置:

<param-value>classpath:applicationContext.xml </param-value>
[/Quote]


不是在WEB-INF下去找 ,而是和它同级目录下面比如
WEBAPPA
/ \
WEB-INF applicationContext.xml
/ \
/ \
web.xml classes
M_song 2008-05-21
  • 打赏
  • 举报
回复
同意一楼!
1,把applicationContext.xml放到WEB-INF下;
2,修改为<param-value>classpath:applicationContext.xml </param-value>,并把applicationContext.xml加到classpath里!
lovingprince 2008-05-21
  • 打赏
  • 举报
回复
<param-name>contextConfigLocation </param-name>
<param-value>applicationContext.xml </param-value>

他会到/applicationContext.xml 下面去找,也就是说 你的应用是 webAPPA/applicationContext.xml 下面。是你路径设置错了,你也可以将它放在classes中去,然后这里配置成classpath:applicationContext.xml 就可以找到了,这里就是在classpath中找这个文件
睿音 2008-05-21
  • 打赏
  • 举报
回复
是找不到你的[/applicationContext.xml];文件

<param-value>applicationContext.xml </param-value>

你的配置上有写问题,你这样配。spring会在WEB-INF下去找。而你的文件是在src源文件文件夹里,所以需要这样配置:

<param-value>classpath:applicationContext.xml</param-value>

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧