web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
org.apache.struts.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config>
<!-- ================ Form Bean Definitions ================-->
<form-beans>
<!-- 添加计算机设备页面 -->
<form-bean name="comForm"
type="org.apache.struts.action.DynaActionForm">
<!-- 计算机id -->
<form-property name="id" type="java.lang.Integer"
initial="1" />
<!-- 计算机编号 -->
<form-property name="no" type="java.lang.String"
initial="" />
<!-- 类型 -->
<form-property name="type" type="java.lang.String"
initial="" />
<!-- 品牌 -->
<form-property name="brand" type="java.lang.String"
initial="" />
<!-- 型号 -->
<form-property name="model" type="java.lang.String"
initial="" />
<!-- 保修期 -->
<form-property name="date" type="java.lang.String"
initial="" />
<!-- 价格 -->
<form-property name="price" type="java.lang.String"
initial="" />
<!-- cpu -->
<form-property name="cpu" type="java.lang.String"
initial="" />
<!-- 内存 -->
<form-property name="memory" type="java.lang.String"
initial="" />
<!-- 备注 -->
<form-property name="re" type="java.lang.String"
initial="" />
</form-bean>
</form-beans> <!-- ================ Action Mapping Definitions ================ --> <action-mappings>
<action path="/addCom" attribute="comForm"
type="org.springframework.web.struts.DelegatingActionProxy"
name="comForm" scope="request" parameter="method"
validate="false">
<forward name="init" path="/comView.jsp" />
</action> </action-mappings> <!-- ================= Plug Ins Configuration ================--> <plug-in
className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
</plug-in></struts-config>applicationContext.xml
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 数据源 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@my-dbserver:1521:mydb</value>
</property>
<property name="username">
<value>train</value>
</property>
<property name="password">
<value>train</value>
</property>
<property name="initialSize">
<value>5</value>
</property>
<property name="maxActive">
<value>20</value>
</property>
<property name="maxIdle">
<value>20</value>
</property>
<property name="minIdle">
<value>5</value>
</property>
</bean> <bean id="jdbcTemplate"
class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref bean="dataSource" />
</property>
</bean>
<!-- 原型 -->
<bean id="comBean" class="my.springtrain2.model.ComBean" >
<property name="id"><null/></property>
<property name="no"><null/></property>
<property name="type"><null/></property>
<property name="brand"><null/></property>
<property name="model"><null/></property>
<property name="date"><null/></property>
<property name="price"><null/></property>
<property name="cpu"><null/></property>
<property name="memory"><null/></property>
<property name="re"><null/></property>
<property name="newTime"><null/></property>
</bean> <!-- DAO -->
<bean id="ComDaoImpl" class="my.springtrain2.dao.impl.ComDaoImpl">
<property name="jdbcTemplate">
<ref bean="jdbcTemplate" />
</property>
</bean> <!-- service -->
<bean id="ComServiceImpl" class="my.springtrain2.service.impl.ComServiceImpl" >
<property name="daoImpl">
<ref bean="daoImpl"/>
</property>
</bean> <!-- action -->
<bean name="/addCom" class="my.springtrain2.web.BaseDispatchDocumentAction">
<property name="ComServiceImpl">
<ref bean="ComServiceImpl" />
</property>
<property name="comBean">
<ref bean="comBean"/>
</property>
</bean> <!-- 通知 -->
<bean id="daoImpl" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<value>my.springtrain2.dao.ComDao</value>
</property>
<property name="target">
<ref local="ComDaoImpl"/>
</property>
<property name="interceptorNames">
<list>
<value>logsth</value>
</list>
</property>
</bean> <bean id="logAdvisor" class="my.springtrain2.advice.LogPrinter">
</bean> <bean id="logsth"
class="org.springframework.aop.support.NameMatchMethodPointcutAdvisor">
<property name="mappedName">
<value>addComInfo</value>
</property>
<property name="advice">
<ref bean="logAdvisor"/>
</property>
</bean>
</beans>启动tomcat总是报错如下:
2008-06-30 13:33:40,206 ERROR [org.springframework.web.struts.ContextLoaderPlugIn] - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ComServiceImpl' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is org.springframework.beans.InvalidPropertyException: Invalid property 'daoImpl' of bean class [my.springtrain2.service.impl.ComServiceImpl]: No property 'daoImpl' found
总是有错,找的头太大也没找出所以然,请各位帮忙,谢谢!
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
org.apache.struts.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config>
<!-- ================ Form Bean Definitions ================-->
<form-beans>
<!-- 添加计算机设备页面 -->
<form-bean name="comForm"
type="org.apache.struts.action.DynaActionForm">
<!-- 计算机id -->
<form-property name="id" type="java.lang.Integer"
initial="1" />
<!-- 计算机编号 -->
<form-property name="no" type="java.lang.String"
initial="" />
<!-- 类型 -->
<form-property name="type" type="java.lang.String"
initial="" />
<!-- 品牌 -->
<form-property name="brand" type="java.lang.String"
initial="" />
<!-- 型号 -->
<form-property name="model" type="java.lang.String"
initial="" />
<!-- 保修期 -->
<form-property name="date" type="java.lang.String"
initial="" />
<!-- 价格 -->
<form-property name="price" type="java.lang.String"
initial="" />
<!-- cpu -->
<form-property name="cpu" type="java.lang.String"
initial="" />
<!-- 内存 -->
<form-property name="memory" type="java.lang.String"
initial="" />
<!-- 备注 -->
<form-property name="re" type="java.lang.String"
initial="" />
</form-bean>
</form-beans> <!-- ================ Action Mapping Definitions ================ --> <action-mappings>
<action path="/addCom" attribute="comForm"
type="org.springframework.web.struts.DelegatingActionProxy"
name="comForm" scope="request" parameter="method"
validate="false">
<forward name="init" path="/comView.jsp" />
</action> </action-mappings> <!-- ================= Plug Ins Configuration ================--> <plug-in
className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
</plug-in></struts-config>applicationContext.xml
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 数据源 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@my-dbserver:1521:mydb</value>
</property>
<property name="username">
<value>train</value>
</property>
<property name="password">
<value>train</value>
</property>
<property name="initialSize">
<value>5</value>
</property>
<property name="maxActive">
<value>20</value>
</property>
<property name="maxIdle">
<value>20</value>
</property>
<property name="minIdle">
<value>5</value>
</property>
</bean> <bean id="jdbcTemplate"
class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref bean="dataSource" />
</property>
</bean>
<!-- 原型 -->
<bean id="comBean" class="my.springtrain2.model.ComBean" >
<property name="id"><null/></property>
<property name="no"><null/></property>
<property name="type"><null/></property>
<property name="brand"><null/></property>
<property name="model"><null/></property>
<property name="date"><null/></property>
<property name="price"><null/></property>
<property name="cpu"><null/></property>
<property name="memory"><null/></property>
<property name="re"><null/></property>
<property name="newTime"><null/></property>
</bean> <!-- DAO -->
<bean id="ComDaoImpl" class="my.springtrain2.dao.impl.ComDaoImpl">
<property name="jdbcTemplate">
<ref bean="jdbcTemplate" />
</property>
</bean> <!-- service -->
<bean id="ComServiceImpl" class="my.springtrain2.service.impl.ComServiceImpl" >
<property name="daoImpl">
<ref bean="daoImpl"/>
</property>
</bean> <!-- action -->
<bean name="/addCom" class="my.springtrain2.web.BaseDispatchDocumentAction">
<property name="ComServiceImpl">
<ref bean="ComServiceImpl" />
</property>
<property name="comBean">
<ref bean="comBean"/>
</property>
</bean> <!-- 通知 -->
<bean id="daoImpl" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<value>my.springtrain2.dao.ComDao</value>
</property>
<property name="target">
<ref local="ComDaoImpl"/>
</property>
<property name="interceptorNames">
<list>
<value>logsth</value>
</list>
</property>
</bean> <bean id="logAdvisor" class="my.springtrain2.advice.LogPrinter">
</bean> <bean id="logsth"
class="org.springframework.aop.support.NameMatchMethodPointcutAdvisor">
<property name="mappedName">
<value>addComInfo</value>
</property>
<property name="advice">
<ref bean="logAdvisor"/>
</property>
</bean>
</beans>启动tomcat总是报错如下:
2008-06-30 13:33:40,206 ERROR [org.springframework.web.struts.ContextLoaderPlugIn] - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ComServiceImpl' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is org.springframework.beans.InvalidPropertyException: Invalid property 'daoImpl' of bean class [my.springtrain2.service.impl.ComServiceImpl]: No property 'daoImpl' found
总是有错,找的头太大也没找出所以然,请各位帮忙,谢谢!
楼主【njyky】截止到2008-06-30 13:49:44的历史汇总数据(不包括此帖):
发帖数:0 发帖分:0
结贴数:0 结贴分:0
未结数:0 未结分:0
结贴率:-------------------结分率:-------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
type="org.springframework.web.struts.DelegatingActionProxy" 把它去掉试试
<set-property property="processorClass"
value="org.springframework.web.struts.DelegatingRequestProcessor" />
</controller>
<message-resources parameter="org.cl.struts.ApplicationResources" />
<plug-in
className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
</plug-in>
<bean id="ComServiceImpl" class="my.springtrain2.service.impl.ComServiceImpl" >
<property name="daoImpl">
<ref bean="daoImpl"/>
</property>
</bean> 也就是你这一段,建议你以后写配置文件的时候,写一段测一段。如果写的多了再测,很难找的
你看看my.springtrain2.service.impl.ComServiceImpl 这个类里面有没有‘daoImpl’这个变量,并set.注意大小写
2偻说错拉,没分哦
5偻40分,7,8都30分,谢谢大家