java - Spring ContextLoaderListener ignores tag -


i dont know if im missing ive read documentation , asked lot cant figure why app behaving way. web application keeps complaining java.io.filenotfoundexception: not open servletcontext resource [/web-inf/applicationcontext.xml] during start up.

this happens if web.xml file contents tags

 <context-param>         <param-name>contextconfiglocation</param-name>                     <param-value>some/nonexisting/path.xml</param-value>              </context-param> 

heres complete web.xml

<?xml version="1.0" encoding="utf-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"         xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"         xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"         version="2.5">          <display-name>j2ee application example</display-name>          <welcome-file-list>                 <welcome-file>index.jsp</welcome-file>         </welcome-file-list>          <context-param>     <param-name>contextappconfiglocation</param-name>     <param-value>/subfolder/applicationcontext.xml</param-value> </context-param>          <context-param>                 <param-name>javax.faces.default_suffix</param-name>                 <param-value>.xhtml</param-value>         </context-param>          <context-param>                 <param-name>facelets.development</param-name>                 <param-value>true</param-value>         </context-param>          <context-param>                 <param-name>javax.faces.facelets_refresh_period</param-name>                 <param-value>1</param-value>         </context-param>          <listener>                 <listener-class>org.springframework.web.context.contextloaderlistener</listener-class>         </listener>          <servlet>                 <servlet-name>resources servlet</servlet-name>                 <servlet-class>org.springframework.js.resource.resourceservlet</servlet-class>                 <load-on-startup>0</load-on-startup>         </servlet>          <servlet-mapping>                 <servlet-name>resources servlet</servlet-name>                 <url-pattern>/resources/*</url-pattern>         </servlet-mapping>          <servlet>                 <servlet-name>spring mvc dispatcher servlet</servlet-name>                 <servlet-class>org.springframework.web.servlet.dispatcherservlet</servlet-class>                 <init-param>                         <param-name>contextconfiglocation</param-name>                         <param-value></param-value>                 </init-param>                 <load-on-startup>1</load-on-startup>         </servlet>          <servlet-mapping>                 <servlet-name>spring mvc dispatcher servlet</servlet-name>                 <url-pattern>/app/*</url-pattern>         </servlet-mapping>          <servlet>                 <servlet-name>faces servlet</servlet-name>                 <servlet-class>javax.faces.webapp.facesservlet</servlet-class>                 <load-on-startup>1</load-on-startup>         </servlet>          <servlet-mapping>                 <servlet-name>faces servlet</servlet-name>                 <url-pattern>*.jsf</url-pattern>         </servlet-mapping>          <filter>                 <filter-name>charencodingfilter</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>charencodingfilter</filter-name>         <url-pattern>/*</url-pattern>     </filter-mapping>      <!-- spring security filters -->  </web-app> 

pom.xml

<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">   <modelversion>4.0.0</modelversion>    <groupid>com.example.j2eeapplication</groupid>   <artifactid>j2eeapplication</artifactid>   <version>0.0.1-snapshot</version>   <packaging>war</packaging>   <name>j2ee application example</name>    <repositories>         <repository>                 <id>prime-repo</id>                 <name>primefaces maven repository</name>                 <url>http://repository.primefaces.org</url>         </repository>   </repositories>    <dependencies>         <dependency>                 <groupid>org.hibernate</groupid>                 <artifactid>hibernate-core</artifactid>                 <version>4.1.8.final</version>         </dependency>         <dependency>                 <groupid>org.hibernate</groupid>                 <artifactid>hibernate-validator</artifactid>                 <version>4.2.0.final</version>         </dependency>             <dependency>             <groupid>junit</groupid>             <artifactid>junit</artifactid>             <version>4.8.2</version>             <scope>test</scope>         </dependency>         <dependency>         <groupid>org.springframework</groupid>         <artifactid>spring</artifactid>         <version>2.5.6</version>     </dependency>         <dependency>                 <groupid>org.springframework.webflow</groupid>                 <artifactid>spring-webflow</artifactid>                 <version>2.3.1.release</version>         </dependency>         <dependency>                 <groupid>org.springframework.webflow</groupid>                 <artifactid>spring-faces</artifactid>                 <version>2.3.1.release</version>         </dependency>          <dependency>                 <groupid>com.oracle</groupid>                 <artifactid>ojdbc14</artifactid>                 <version>10.2.0.1.0</version>         </dependency>         <dependency>                 <groupid>log4j</groupid>                 <artifactid>log4j</artifactid>                 <version>1.2.16</version>         </dependency>         <dependency>                 <groupid>com.sun.faces</groupid>                 <artifactid>jsf-impl</artifactid>                 <version>2.1.10</version>         </dependency>         <dependency>                 <groupid>com.sun.facelets</groupid>                 <artifactid>jsf-facelets</artifactid>                 <version>1.1.14</version>         </dependency>         <dependency>                 <groupid>com.sun.faces</groupid>                 <artifactid>jsf-api</artifactid>                 <version>2.1.10</version>         </dependency>         <dependency>                 <groupid>commons-dbcp</groupid>                 <artifactid>commons-dbcp</artifactid>                 <version>20030825.184428</version>         </dependency>         <dependency>                 <groupid>org.slf4j</groupid>                 <artifactid>slf4j-log4j12</artifactid>                 <version>1.6.4</version>         </dependency>         <dependency>                 <groupid>javax.servlet</groupid>                 <artifactid>javax.servlet-api</artifactid>                 <version>3.0.1</version>                 <scope>provided</scope>         </dependency>         <dependency>                 <groupid>org.springframework</groupid>                 <artifactid>spring-tx</artifactid>                 <version>3.0.5.release</version>         </dependency>         <dependency>                 <groupid>xml-apis</groupid>                 <artifactid>xml-apis</artifactid>                 <version>1.3.02</version>         </dependency>         <dependency>                 <groupid>org.springframework.security</groupid>                 <artifactid>spring-security-web</artifactid>                 <version>3.1.3.release</version>         </dependency>         <dependency>                 <groupid>org.springframework.security</groupid>                 <artifactid>spring-security-config</artifactid>                 <version>3.1.3.release</version>         </dependency>         <dependency>                 <groupid>org.primefaces</groupid>                 <artifactid>primefaces</artifactid>                 <version>3.4</version>         </dependency>         <dependency>                 <groupid>cglib</groupid>                 <artifactid>cglib</artifactid>                 <version>2.2.2</version>                 <scope>runtime</scope>         </dependency>         <dependency>                 <groupid>org.hibernate</groupid>                 <artifactid>hibernate-entitymanager</artifactid>                 <version>4.1.8.final</version>         </dependency>   </dependencies>  </project> 

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.xsd">          <import resource="datasource-config.xml" />         <import resource="webflow-config.xml" />            </beans> 

i have problem loading applicationcontext.xml file , may key solve it. why no matter contextloaderlistener loads xml file default path ?

try add web.xml check order of declaration

<web-app 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_3_0.xsd"      version="3.0">  <display-name>appname</display-name>  <context-param>     <param-name>contextconfiglocation</param-name>     <param-value>classpath:applicationcontext*.xml</param-value> </context-param>   //...   </web-app> 

instead of <context-param> tag

and put applicationcontext.xml src->java->resources should help.

be sure have dispatcherservletcontext.xml in web-inf same directory have web.xml.

dispatcherservletcontext.xml:

 <beans xmlns="http://www.springframework.org/schema/beans"            xmlns:context="http://www.springframework.org/schema/context"            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-4.0.xsd             http://www.springframework.org/schema/context              http://www.springframework.org/schema/context/spring-context-4.0.xsd">          <context:component-scan base-package="yourpackage"/>          <bean class="org.springframework.web.servlet.view.internalresourceviewresolver">             <property name="prefix">                 <value>/web-inf/${pagespath}</value>             </property>             <property name="suffix">                 <value>.jsp</value>             </property>         </bean>      </beans> 

properly configure pom

<?xml version="1.0" encoding="utf-8"?> <project xmlns="http://maven.apache.org/pom/4.0.0"          xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"          xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">     <modelversion>4.0.0</modelversion>      <groupid>groupid</groupid>     <artifactid>artifactname</artifactid>     <version>1.0-snapshot</version>     <packaging>war</packaging>     <name>name</name>      <properties>         <cxf.version>2.7.10</cxf.version>         <spring.version>4.0.2.release</spring.version>         <junit.version>4.11</junit.version>         <hibernate.version>4.3.0.final</hibernate.version>     </properties>     <build>         <finalname>rondoserver</finalname>         <plugins>             <plugin>                 <artifactid>maven-compiler-plugin</artifactid>                 <configuration>                     <source>1.7</source>                     <target>1.7</target>                     <encoding>utf-8</encoding>                 </configuration>             </plugin>             <plugin>                 <artifactid>maven-war-plugin</artifactid>                 <version>2.1</version>                 <configuration>                     <webxml>{path_to_webxml}/web-inf/web.xml</webxml>                     <warname>app_name</warname>                 </configuration>             </plugin>              <plugin>                 <groupid>org.apache.maven.plugins</groupid>                 <artifactid>maven-resources-plugin</artifactid>                 <version>2.6</version>                 <configuration>                     <encoding>utf-8</encoding>                 </configuration>             </plugin>         </plugins>          <testresources>             <testresource>                 <directory>src/test/resources/</directory>                 <filtering>true</filtering>             </testresource>         </testresources>          <resources>             <resource>                 <directory>src/main/resources</directory>                 <filtering>true</filtering>             </resource>         </resources>     </build>      <dependencies>         <dependency>             <groupid>org.apache.cxf</groupid>             <artifactid>cxf-rt-frontend-jaxws</artifactid>             <version>${cxf.version}</version>         </dependency>         <dependency>             <groupid>org.apache.cxf</groupid>             <artifactid>cxf-rt-transports-http</artifactid>             <version>${cxf.version}</version>         </dependency>         <!-- spring 4 dependencies -->         <dependency>             <groupid>org.springframework</groupid>             <artifactid>spring-core</artifactid>             <version>${spring.version}</version>         </dependency> //...other spring dependency on same lvl     </dependencies>   </project> 

Comments

Popular posts from this blog

windows - Single EXE to Install Python Standalone Executable for Easy Distribution -

c# - Access objects in UserControl from MainWindow in WPF -

javascript - How to name a jQuery function to make a browser's back button work? -