[SPRING] Spring Java Config : web.xml없이 Tomcat 배포
SPRINGSpring Java Config : web.xml없이 Tomcat 배포
나는 XML없이 java로 구성된 Spring MVC 애플리케이션을 만들었다. 문제없이 랩톱에 응용 프로그램을 배포하고 시작할 수 있습니다. 하지만 내 testserver (바람둥이 7)에 내 응용 프로그램을 배포하려고하면 다음 메시지가 나타납니다.
HTTP Status 404 - The requested resource (/[application context]/) is not available.
Eclipse Maven 플러그인을 사용하여 애플리케이션을 빌드한다. web.xml없이 애플리케이션을 배포 할 수 있습니까? 그렇지 않다면 정말 필요한 기본 web.xml은 무엇입니까?
Maven WAR 플러그인 :
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>${maven.war.plugin.version}</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
WebAppInitializer :
@Order(value = 1)
public class WebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
super.onStartup(servletContext);
}
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[] { HibernateConfig.class, SecurityConfig.class, HibernateDaoConfig.class };
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class[] { WebAppConfig.class };
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
@Override
protected Filter[] getServletFilters() {
return new Filter[]{};
}
}
업데이트 : catalina.out
Feb 3, 2014 4:18:32 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/[appname]] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak.
Feb 3, 2014 4:18:33 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context [/[appname]]
Feb 3, 2014 4:18:45 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive [appname].war
해결법
-
==============================
1.그래도 해결되지 않으면 서블릿 버전 때문일 수 있습니다. Servlet 3.x API는 web.xml 파일을 WEB-INF 폴더에 넣는 대신 Java 클래스를 작성하여 Java 웹 응용 프로그램을 구성 할 수 있어야합니다.
그래도 해결되지 않으면 서블릿 버전 때문일 수 있습니다. Servlet 3.x API는 web.xml 파일을 WEB-INF 폴더에 넣는 대신 Java 클래스를 작성하여 Java 웹 응용 프로그램을 구성 할 수 있어야합니다.
완전한 예를 보시려면 여기를보십시오.
-
==============================
2.최신 Tomcat 버전으로 업그레이드하고 문제가 없는지 확인하십시오. 구형 Tocmat 서버에서 새로운 스프링 기능 (예 : java config 등)을 사용하는 데는 많은 문제가 있습니다. 예를 들어, http://docs.spring.io/autorepo/docs/spring-framework/3.1.x/javadoc-api/org/springframework/web/WebApplicationInitializer.html을 참조하십시오.
최신 Tomcat 버전으로 업그레이드하고 문제가 없는지 확인하십시오. 구형 Tocmat 서버에서 새로운 스프링 기능 (예 : java config 등)을 사용하는 데는 많은 문제가 있습니다. 예를 들어, http://docs.spring.io/autorepo/docs/spring-framework/3.1.x/javadoc-api/org/springframework/web/WebApplicationInitializer.html을 참조하십시오.
from https://stackoverflow.com/questions/21529577/spring-java-config-tomcat-deploy-without-web-xml by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring JavaConfig : 커스텀 서블릿 매핑 추가 (0) | 2019.04.07 |
---|---|
[SPRING] 'OPTIONS / logout'요청이 'POST / logout'과 일치하지 않습니다. (0) | 2019.04.07 |
[SPRING] 브로큰 파이프 Java EE (0) | 2019.04.07 |
[SPRING] Spring Security 애플리케이션을 프록시 뒤에서 실행하는 방법은 무엇입니까? (0) | 2019.04.07 |
[SPRING] 봄 컴포넌트 주석 컴파일 시간 스캔 (0) | 2019.04.07 |