[SPRING] 스프링 3 MVC와 아파치 타일 2 통합 오류
SPRING스프링 3 MVC와 아파치 타일 2 통합 오류
나는 스프링 (3.0.4 및 3.0.5) MVC를 Apache Tiles (2.1.2,2.1.4 및 2.2.2)와 통합하지 않으려 고 노력했다. 모든 경우에 다음 오류가 발생합니다.
java.lang.NoClassDefFoundError : org / apache / tiles / startup / BasicTilesInitializer
Tiles 문서에 따르면 BasicTilesInitializer는 더 이상 사용되지 않습니다. 나는 Spring의 TilesConfigurer의 최신 버전이 올바른 클래스를 참조 할 것이라고 생각했지만, 그것은 여전히 똑같은 오류를 낳는다.
내 봄 mvc 응용 프로그램에서 타일을 설치하려면 다음 구성을 사용하고 있습니다.
<beans:bean
id="tilesConfigurer"
class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<beans:property name="definitions">
<beans:list>
<beans:value>/WEB-INF/tiles/tiles.xml</beans:value>
</beans:list>
</beans:property>
</beans:bean>
<beans:bean
class="org.springframework.web.servlet.view.tiles2.TilesViewResolver">
<beans:property
name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>
</beans:bean>
이상적으로, 저는 Spring 3.0.5가 Tiles 2.2.2와 함께 작동하도록하고 싶습니다. 이 게시물의 최신 버전입니다.
해결법
-
==============================
1.org.apache.tiles.startup.BasicTilesInitializer는 tiles-core (2.2.1) .jar 클래스입니다. 타일 코어 병을 배치했는지 확인하십시오.
org.apache.tiles.startup.BasicTilesInitializer는 tiles-core (2.2.1) .jar 클래스입니다. 타일 코어 병을 배치했는지 확인하십시오.
-
==============================
2.타일 3의 경우, org.springframework.web.servlet.view.tiles3.TilesConfigurer 클래스를 사용하십시오. 스프링 webmvc에서 확인하십시오.
타일 3의 경우, org.springframework.web.servlet.view.tiles3.TilesConfigurer 클래스를 사용하십시오. 스프링 webmvc에서 확인하십시오.
-
==============================
3.maven을 사용한다면 문제를 해결하기 위해이 의존성을 추가 할 수 있습니다 :
maven을 사용한다면 문제를 해결하기 위해이 의존성을 추가 할 수 있습니다 :
<dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-servlet</artifactId> <version>2.2.2</version> </dependency>
-
==============================
4.나는 부실 한 실을 되살리기 위해 사과하지 않을 것이다.
나는 부실 한 실을 되살리기 위해 사과하지 않을 것이다.
Eclipse Helios에 내장 된 Spring MVC 프로젝트가있다. 나는 며칠 동안 헬리오스를 폐쇄했다가 오늘 다시 열었다. 내 응용 프로그램을 실행할 때 위와 같은 예외가 발생했습니다. java.lang.NoClassDefFoundError : org / apache / tiles / startup / BasicTilesInitializer.
내 솔루션은 통합 Tomcat 서버의 deploy 디렉토리를 정리 한 다음 응용 프로그램을 다시 배포하는 것이 었습니다. 처음으로 배포를 다시 시작했을 때, 앱의 lib 디렉토리에 두 개의 항아리 만있었습니다. 그래서 다시 청소하고 재배포 한 다음, 필요한 모든 항아리를 얻었고 이제는 내 응용 프로그램이 다시 실행됩니다. 그림을 이동.
-
==============================
5.STS를 사용하고 스프링 템플릿 프로젝트 (예 : MVC 프로젝트)를 사용하여 프로젝트를 만든 경우 lib 디렉토리에 아무 것도 추가하지 않습니다. 대신 pom.xml maven 설정 파일을 수정하십시오.
STS를 사용하고 스프링 템플릿 프로젝트 (예 : MVC 프로젝트)를 사용하여 프로젝트를 만든 경우 lib 디렉토리에 아무 것도 추가하지 않습니다. 대신 pom.xml maven 설정 파일을 수정하십시오.
-
==============================
6.내 POM에서 컴파일 시간에 제공 될 의존성을 추가 한 후에 만이 문제를 해결할 수있었습니다.
내 POM에서 컴파일 시간에 제공 될 의존성을 추가 한 후에 만이 문제를 해결할 수있었습니다.
<scope>compile</scope>
-
==============================
7.타일 2.2.2 버전을 사용하여 동일한 문제가 발생했습니다. 나는 버전 2.2.1로 전환했고 작동하기 시작했다. 내 의존성은 다음과 같습니다.
타일 2.2.2 버전을 사용하여 동일한 문제가 발생했습니다. 나는 버전 2.2.1로 전환했고 작동하기 시작했다. 내 의존성은 다음과 같습니다.
<dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-jsp</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-core</artifactId> <version>2.2.1</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-api</artifactId> <version>2.2.1</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-servlet</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.apache.tiles</groupId> <artifactId>tiles-template</artifactId> <version>2.2.1</version> </dependency>
-
==============================
8.다음 jar가 응용 프로그램 클래스 경로에 있는지 확인하십시오.
다음 jar가 응용 프로그램 클래스 경로에 있는지 확인하십시오.
타일 jar의 버전은 Spring MVC의 버전에 달려있다. 예 : Spring MVC 3.2.3 (org.springframework.web.servlet.view.tiles3.TilesConfigurer)이 사용되면 타일 3 개가 필요합니다.
-
==============================
9.타일 3의 경우,
타일 3의 경우,
from https://stackoverflow.com/questions/5003995/spring-3-mvc-and-apache-tiles-2-integration-error by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 봄 부팅 - Exclude가 작동하지 않는 EnableAutoConfiguration (0) | 2019.04.04 |
---|---|
[SPRING] 스프링 보안 커스텀 UserDetailsService와 커스텀 사용자 클래스 (0) | 2019.04.04 |
[SPRING] Spring에서 MappingJacksonJsonView가 사용하는 JSON 필드 이름 바꾸기 (0) | 2019.04.04 |
[SPRING] Spring 데이터 나머지에 목록을 게시하는 방법? (0) | 2019.04.04 |
[SPRING] @Query 정의와 스펙을 하나의 Spring Data JPA 저장소 메소드에 결합 할 수 있습니까? (0) | 2019.04.04 |