Je sais que la configuration d'OSIVF est un point commun. J'ai lu toutes les pages que j'ai pu trouver au cours de ces deux derniers jours, mais rien ne semble me sortir de ce problème. J'ai réussi à me confondre, tho. J'essaie de garder cette config très simple car l'application web est assez simple. Eh bien, voici l'erreur:OpenSessionInViewFilter ne peut pas trouver WebApplicationContext
java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered?
org.springframework.web.context.support.WebApplicationContextUtils.getRequiredWebApplicationContext(WebApplicationContextUtils.java:90)
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.lookupSessionFactory(OpenSessionInViewFilter.java:190)
Voici le web.xml:
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Test MVC Application</display-name>
<servlet>
<servlet-name>onepic</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>onepic</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>sessionFactoryBeanName</param-name>
<param-value>sessionFactory</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
Enfin, voici quelques morceaux de onepic-servlet.xml:
<bean id="datasource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/onePic?characterEncoding=UTF-8"/>
<property name="username" value="onePic"/>
<property name="password" value="onePic"/>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="datasource" />
<property name="packagesToScan" value="com.sandofamily.onePic"/>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect"> org.hibernate.dialect.H2Dialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
<tx:annotation-driven/>
<bean id="transactionManager"
class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
Encore une fois, je suis Je suis désolé d'avoir à redire un problème aussi commun, mais je dois manquer un peu de connaissances qui relie tout cela.
Je pense qu'il est préférable de commencer une autre question à propos de cet autre problème, parce que cela va être source de confusion pour ceux qui essaient de trouver la même solution. –
Oui, j'ai fait merci. J'ai un peu hué cette question. La nature de la situation a changé. Je vais en créer un nouveau. Bottom line est [link] (http://stackoverflow.com/questions/6451377/loading-context-in-spring-using-web-xml) corrige une partie. –
ok, si ma réponse vous a aidé pour votre problème original, alors vous pouvez vérifier la réponse comme la bonne. –