root-context.xml 또는 servlet-context.xml 에 네임스페이스 추가하는 경우
pom.xml 에 관련 라이브러리 jar 파일이 자동으로 dependency 설정된다.
이 때 스프링 관련 라이브러리에 지정된 버전과 새로 받은 jar 파일이 버전이 안 맞는 경우 추적하기 힘든 에러 메시지와 함께 웹 프로젝트 구동에 실패하게 된다. 버전 정보를 꼭 맞추어 주도록 하자.
<?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:jdbc="http://www.springframework.org/schema/jdbc"
xsi:schemaLocation="http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- Root Context: defines shared resources visible to all other web components -->
<jdbc:embedded-database id="datasource" type="HSQL">
<jdbc:script location="classpath:BoardSchema.sql"/>
<jdbc:script location="classpath:BoardData.sql"/>
</jdbc:embedded-database>
</beans>
위와 같이 jdbc 네임스페이스 추가한 경우 pom.xml 은 다음과 같이 자동으로 dependency 를 추가한다.
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.wolf</groupId>
<artifactId>springmvc</artifactId>
<name>WOLF</name>
<packaging>war</packaging>
<version>1.0.0-BUILD-SNAPSHOT</version>
<properties>
<java-version>1.6</java-version>
<org.springframework-version>3.2.3.RELEASE</org.springframework-version>
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>
<dependencies>
<dependency>
<groupId>org.hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>2.2.9</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.1.1.RELEASE</version>
</dependency>
따라서 Maven Clean, Maven Install 은 정상적으로 Build Success 볼 수 있으나 Run As > Run On Server 시에는 에러가 난다.
결론적으로 pom.xml 을 다음 처러 수정해 줘야 한다.
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.wolf</groupId>
<artifactId>springmvc</artifactId>
<name>WOLF</name>
<packaging>war</packaging>
<version>1.0.0-BUILD-SNAPSHOT</version>
<properties>
<java-version>1.6</java-version>
<org.springframework-version>3.2.3.RELEASE</org.springframework-version>
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>
<dependencies>
<dependency>
<groupId>org.hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>2.2.9</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework-version}</version>
</dependency>
'강좌 > Spring @MVC 삽질' 카테고리의 다른 글
03 일차 - Git Clone (0) | 2013.05.21 |
---|---|
02 일차 - GitHub DVCS 연동 (0) | 2013.05.17 |
01 일차 - 프로젝트 생성 & 정적 컨텐츠 사용 (4) | 2013.05.16 |