2013-12-21 4 views
0

redhat의 jboss 플러그인으로 Eclipse/Kepler를 사용하여 매우 간단한 jboss 7 서블릿 앱을 작성했습니다. 나는 전쟁 파일을 클라우드에 배포했다. 자사의 클라우드 (가 진짜 놀라운)의 맥락에서 작동하지 않는,하지만 -Jboss 7 서블릿 배포 : jsp 페이지가 올바르게 게시되지 않습니다.

가 ...이 내 로컬 런타임 배포에 작동 다음 simple.jsp 페이지를 사용하고 있습니다. 따라서 내 앱이 다음과 같이 배치되면 : http://simplepaaswebtest.metro-pojo.cloudbees.net/simple.jsp

게시물에 어떤 문맥을 사용합니까?

답변

1

양식의 HTML 소스를 보면 폼의 작업 특성이/SimplePaasWebTest/SimpleServlet임을 알 수 있습니다./SimplePaasWebTest는 앱에 대해 로컬로 구성한 애플리케이션 컨텍스트 경로와 비슷하지만 CloudBees에서 실행될 때 앱에 빈 컨텍스트 경로가 지정되어 제출해야하는 경로가 변경됩니다. 양식 제출을/SimpleServlet으로 변경하면 올바르게 작동합니다.

Servlet 웹 응용 프로그램의 contextPath는 응용 프로그램이 실행될 루트 경로 접두사를 정의합니다. 앱이 서블릿 웹 컨테이너에 배포되면 일반적으로 컨테이너의 구성에서 앱에 contextPath를 할당하지만 컨테이너에서 앱이 실행되는 디렉토리 또는 WAR 파일의 이름을 사용하여이 경로를 기본 설정으로 지정하는 경우가 있습니다.

가장 좋은 방법은 특정 루트 컨텍스트 경로가 필요없는 방식으로 URL 경로를 생성하는 것입니다. HttpServletRequest.getContextPath() 접두사 또는 상대 URL을 사용하여 생성 된 전체 경로를 사용하면 응용 프로그램의 contextPath가 변경 되더라도 응용 프로그램이 제대로 작동합니다.

다음으로 가장 좋은 방법은 빈 루트 컨텍스트 경로 (일반적으로/컨텍스트 경로)를 고려하여 응용 프로그램과 함께 배포 할 동일한 컨텍스트 경로를 사용하도록 로컬 응용 프로그램 환경을 설정하는 것입니다.

이 링크는

+0

감사 swashbuk1r 도움이 될 수 있습니다. 나는 당신의주의/시간을 주셔서 감사합니다. – plditallo