成功了 信息: Initializing WebApplicationContext for Struts ActionServlet 'action', module '' 2010-1-12 20:32:51 org.apache.coyote.http11.Http11Protocol start 信息: Starting Coyote HTTP/1.1 on http-8088 2010-1-12 20:32:51 org.apache.jk.common.ChannelSocket init 信息: JK: ajp13 listening on /0.0.0.0:8009 2010-1-12 20:32:51 org.apache.jk.server.JkMain start 信息: Jk running ID=0 time=0/47 config=null 2010-1-12 20:32:51 org.apache.catalina.startup.Catalina start 信息: Server startup in 7642 ms 用户登陆。。 dddddddddddddddddddddddd dopdaadd... java.lang.NullPointerException at com.rong.model.dao.BaseDaoImpl.save(BaseDaoImpl.java:78) at com.rong.model.service.ServiceImp.save(ServiceImp.java:55) at com.rong.web.action.system.PDAAdminAction.dopdaadd(PDAAdminAction.java:71) 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.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270) at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.rong.util.ChineseFilter.doFilter(ChineseFilter.java:40) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Unknown Source)这是异常
<beans default-autowire="byName"
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd" default-lazy-init="true"> <bean id="conn" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:ora9"></property>
<property name="username" value="admin"></property>
<property name="password" value="admin123"></property>
<property name="initialSize" value="5" />
<property name="maxActive" value="100" />
<property name="maxIdle" value="30" />
<property name="maxWait" value="1000" />
<property name="poolPreparedStatements" value="true" />
<property name="defaultAutoCommit" value="false" />
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="conn" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.Oracle10gDialect
</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">false</prop>
</props>
</property>
<property name="mappingDirectoryLocations">
<list>
<value>classpath*:/com/rong/model/vo</value>
</list>
</property>
</bean>
<!-- transaction -->
<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="get*" propagation="SUPPORTS"
read-only="true" />
<tx:method name="find*" propagation="SUPPORTS"
read-only="true" />
<tx:method name="*" propagation="REQUIRED" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="bizMethods"
expression="execution(* com.rong.model.service.*.*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="bizMethods" />
</aop:config>
<!-- transactionEnd -->
<!-- dao -->
<!-- service --> <bean name="/admin" class="com.rong.web.action.system.AdminAction"></bean>
<bean name="/receiptsSelectAction" class="com.rong.web.action.system.ReceiptsSelectActionAction"></bean>
<bean name="/pDAAdmin" class="com.rong.web.action.system.PDAAdminAction"></bean>
<!-- action -->
<bean id="XadeptDAO" class="com.rong.model.dao.XadeptDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="pdamanagementDAO"
class="com.rong.model.dao.PdamanagementDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="XaunitDAO" class="com.rong.model.dao.XaunitDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
信息: Initializing WebApplicationContext for Struts ActionServlet 'action', module ''
2010-1-12 20:32:51 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8088
2010-1-12 20:32:51 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2010-1-12 20:32:51 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/47 config=null
2010-1-12 20:32:51 org.apache.catalina.startup.Catalina start
信息: Server startup in 7642 ms
用户登陆。。
dddddddddddddddddddddddd
dopdaadd...
java.lang.NullPointerException
at com.rong.model.dao.BaseDaoImpl.save(BaseDaoImpl.java:78)
at com.rong.model.service.ServiceImp.save(ServiceImp.java:55)
at com.rong.web.action.system.PDAAdminAction.dopdaadd(PDAAdminAction.java:71)
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.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.rong.util.ChineseFilter.doFilter(ChineseFilter.java:40)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)这是异常
去了呢
<bean id="baseDao" class="com.rong.dao.BaseDaoImpl">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
那么请把Dao注入Action
<bean id="userDao" class="com.accp.house.dao.impl.UserDaoImpl">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean><bean id="userService" class="com.accp.house.service.impl.UserServiceImpl">
<property name="userDao" ref="userDao"></property>
</bean><bean name="/logine" class="com.accp.house.web.struts.action.LogineAction">
<property name="userService" ref="userService"></property>
</bean>
在service中调用是这样写的:IBaseDao baseDao = null;再加上set,get方法
read-only="true" />
<tx:method name="find*" propagation="SUPPORTS"
read-only="true" />
<tx:method name="*" propagation="REQUIRED" />
你是不是没根据你的命名规范命名方法名称???
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!--UserServiceImpl中有UserDao userDao=null 以及set,get-->
<bean id="userService" class="com.accp.house.service.impl.UserServiceImpl">
<property name="userDao" ref="userDao"></property>
</bean>
<!--ULogineAction中有UserService userService=null 以及set,get-->
<bean name="/logine" class="com.accp.house.web.struts.action.LogineAction">
<property name="userService" ref="userService"></property>
</bean>[/code]
class="org.springframework.orm.hibernate3.support.HibernateDaoSupport"
abstract="true">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean><bean id="XadeptDAO" class="com.rong.model.dao.XadeptDAO" parent="basicDao">
</bean>其余的DAO对着改下
还有我的资源有个SSH整合视频 下了看看
比如我在action中声明IBaseDAO baseDAO;加上set,get方法,在spring中怎样配置,class=是写接口还是写实现类?
你这个T PK 怎么都 继承Serializable呀。
支持属性注入应该也<T> 没关系吧它只是强调一种依赖关系(这种写法没试过。。)
package com.ts.spring;import java.io.Serializable;public class MySpring <T extends Serializable,PK extends Serializable> {
public void test(){
System.out.println("我拿到测试数据了");
}
}
package com.ts.spring;public class MySpring2 {
private MySpring myspring=null; public void setMyspring(MySpring myspring) {
this.myspring = myspring;
}
public void test(){
myspring.test();
}
public MySpring getMyspring() {
return myspring;
}
}
<?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"> <bean id="mySpring" class="com.ts.spring.MySpring"></bean> <bean id="mySpring2" class="com.ts.spring.MySpring2">
<property name="myspring" ref="mySpring"></property>
</bean>
</beans>package com.ts.test;import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;import com.ts.spring.MySpring2;public class MyTest { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ApplicationContext context =
new ClassPathXmlApplicationContext("applicationContext.xml");
MySpring2 springTest=(MySpring2)context.getBean("mySpring2");
springTest.test();
}}
//输出 我拿到测试数据了
与属性方式注入无关。 属性方式注入:注入只与属性有关。只要你确定依赖关系就可以获得其实例
Over!!!