lp-servlet.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<!-- NEW CONTROLLERS -->
<bean id="lessonController" class="org.schoolsys.lp.web.controllers.LessonController">
<property name="lessonManager" ref="lessonManager"/>
<property name="lpUtilities" ref="lpUtilities"/>
<property name="editableFormView" value="lesson/lessonDetail"/>
<property name="readOnlyFormView" value="lessonV"/>
<property name="successView" value="lesson/lessonDetail"/>
<property name="sessionForm" value="false"/>
<!-- <property name="bindOnNewForm" value="true"/> -->
<property name="validator" ref="lessonValidator"/>
</bean>
...numerous other controllers
<!-- END NEW CONTROLLERS -->
<bean id="lpUtilities" class="org.schoolsys.lp.utilities.LPUtilities">
<property name="ipgManager" ref="ipgManager"/>
<property name="conceptManager" ref="conceptManager"/>
<property name="unitManager" ref="unitManager"/>
<property name="arcManager" ref="arcManager"/>
<property name="lessonManager" ref="lessonManager"/>
<property name="stageManager" ref="stageManager"/>
<property name="dropdownDao" ref="dropdownCategoryDao"/>
</bean>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="interceptors">
<list>
<ref bean="openSessionInViewInterceptor" />
</list>
</property>
<property name="mappings">
...mappings here...
</property>
<property name="order"><value>0</value></property>
</bean>
<!-- NOTE!!! The ResourceBundleViewResolver(for Velocity) HAS to be BEFORE InternalResourceViewResolver(for JSP). See Spring documentation for details -->
<bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
<property name="resourceLoaderPath" value="/WEB-INF/velocity/"/>
<property name="velocityProperties">
<props>
<prop key="velocimacro.library">/utilities/macros.vm</prop>
</props>
</property>
</bean>
<bean id="velocityViewResolver" class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
<property name="basename" value="views"/>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename"><value>messages</value></property>
</bean>
<!-- END MAIN SPRING CONFIG -->
</beans>
application-context.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.directwebremoting.org/schema/spring-dwr http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
....dwr config...
...compass config...
<!-- MANAGERS SECTION -->
...more managers here....
<bean id="lessonManager" class="org.schoolsys.lp.service.managers.LessonManager">
<property name="lessonDao" ref="lessonDao"/>
<property name="ipgDao" ref="ipgDao"/>
<property name="arcDao" ref="arcDao"/>
<property name="assessmentDao" ref="assessmentDao"/>
<property name="stageDao" ref="stageDao"/>
<property name="resourceDao" ref="resourceDao"/>
<property name="lessonTeksDao" ref="lessonTeksDao"/>
<property name="relatedLessonTeksDao" ref="relatedLessonTeksDao"/>
<property name="nonCoreLessonTeksDao" ref="nonCoreLessonTeksDao"/>
<property name="lessonElpsDao" ref="lessonElpsDao"/>
<property name="elpsStudentExpectationDao" ref="elpsStudentExpectationDao"/>
<property name="teksStudentExpectationDao" ref="teksStudentExpectationDao"/>
<dwr:remote javascript="AjaxLessonManager"></dwr:remote>
</bean>
<!-- END MANAGERS SECTION -->
<!-- VALIDATORS -->
<bean id="lessonValidator" class="org.schoolsys.lp.web.validators.LessonValidator"></bean>
<!-- END VALIDATORS -->
<!-- DAO SECTION -->
<bean id="lessonDao" class="org.schoolsys.lp.db.dao.LessonDao">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
...more DAOs here
<!-- END DAO SECTION -->
<!-- HIBERNATE STUFF -->
<!-- LocalSessionFactoryBean loads one or more HIbernate mapping XML files to produce a Hibernate Session Factory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource"><ref local="dataSource"/></property>
<property name="mappingResources">
<list>
<value>/orm/Lesson.hbm.xml</value>
...more hbm config here....
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</prop>
<prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
<prop key="hibernate.max_fetch_depth">3</prop>
<!-- turned off 8-09, rely on log4j generated logs instead -->
<prop key="hibernate.show_sql">true</prop>
<!-- kas 12-08 had to add next 3 lines to solve clob hanging issue(Bug 430) -->
<prop key="hibernate.order_updates">true</prop>
<prop key="hibernate.jdbc.batch_size">0</prop>
<prop key="hibernate.jdbc.use_scrollable_resultsets">false</prop>
<!-- end clob issue -->
</props>
</property>
<property name="lobHandler"><ref bean="oracleLobHandler"/></property>
</bean>
<!-- END HIBERNATE STUFF -->
<!-- BEGIN JDBCTEMPLATE SETUP - this should ONLY be used for READ ONLY report queries -->
<bean id="simpleJdbcTemplate" class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">
<constructor-arg><ref bean="dataSource"/></constructor-arg>
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg><ref bean="dataSource"/></constructor-arg>
</bean>
<bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean" scope="singleton">
<property name="jndiName" value="java:comp/env/jdbc/schemaname" />
<property name="resourceRef">
<value>true</value>
</property>
</bean>
<bean id="openSessionInViewInterceptor" class="org.springframework.orm.hibernate3.support.OpenSessionInViewInterceptor">
<property name="flushModeName">
<value>FLUSH_NEVER</value>
</property>
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
<property name="singleSession">
<value>true</value>
</property>
</bean>
<!-- Transaction manager for a single Hibernate SessionFactory (alternative to JTA) -->
<tx:annotation-driven/>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory"><ref local="sessionFactory"/></property>
</bean>
<!-- NativeJdbcExtractor -->
<bean id="nativeJdbcExtractor"
class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor"
lazy-init="true"/>
<!-- LobHandler for Oracle JDBC drivers -->
<bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">
<property name="nativeJdbcExtractor"><ref local="nativeJdbcExtractor"/></property>
</bean>
</beans>
snippet from LPUtilities.java
Code:
package org.schoolsys.lp.utilities;
...more imports here...
import org.schoolsys.lp.service.managers.ArcManager;
import org.schoolsys.lp.service.managers.ConceptManager;
import org.schoolsys.lp.service.managers.IpgManager;
import org.schoolsys.lp.service.managers.LessonManager;
import org.schoolsysd.lp.service.managers.GenericManager;
import org.schoolsys.lp.service.managers.StageManager;
import org.schoolsysd.lp.service.managers.UnitManager;
public class LPUtilities implements LPUtilitiesInterface{
private IpgManager mIpgMan;
private ConceptManager mConceptMan;
private UnitManager mUnitMan;
private ArcManager mArcMan;
private LessonManager mLessonMan;
private StageManager mStageMan;
private static final org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger(LPUtilities.class);
...more code here..
public void setIpgManager(IpgManager ipgMan) {
mIpgMan = ipgMan;
}
public void setConceptManager(ConceptManager cm) {
mConceptMan = cm;
}
public void setUnitManager(UnitManager unitMan) {
mUnitMan = unitMan;
}
public void setArcManager(ArcManager am) {
mArcMan = am;
}
public void setLessonManager(LessonManager lessMan) {
mLessonMan = lessMan;
}
public void setStageManager(StageManager stageMan) {
mStageMan = stageMan;
}
}