2014-09-24 3 views
1

자바 웹 응용 프로그램에서 프로젝트 컨텍스트 경로를 가져 오려고합니다.자바 웹 응용 프로그램에서 컨텍스트 경로 얻기

내 proyect은 D : \ GED \ WSysGED에 있으며, 그 경로를 얻고 싶습니다.

두 가지 방법으로 발견 할 수 있습니다.

String path= System.getProperty("user.dir"); 
    System.out.println(path); 

하지만 그 코드는 D를 반환 : \ 이클립스 JEE - 루나-R-는 Win32 \는 Eclipse 실행 파일이있는 곳입니다 일식. 두 번째 방법은 서블릿

을 사용

나는 하나

public class ContextPathServlet extends HttpServlet { 


    private static final long serialVersionUID = 1L; 

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { 

     ServletContext servletContext = getServletContext(); 
     String contextPath = servletContext.getRealPath("/"); 
     PrintWriter out = response.getWriter(); 
     out.println("<br/>File system context path (in TestServlet): " + contextPath); 

    } 

} 

tutorial

다음하지만 C를 보여주는 것을 만들어 : \ 사용자 후안 \ SysGED.metadata.plugins \ 조직을 \. eclipse.wst.server.core \ tmp6 \ wtpwebapps \ WSysGED

올바른 경로는 무엇입니까?

미리 시간과 의견을 보내 주셔서 감사합니다.

+0

두 번째 접근법이 정확합니다. 반환 된 경로는 응용 프로그램 서버의 배포 경로입니다. Java EE에는 프로젝트 경로가 없습니다. – home

+0

당신의 대답에 대한 응원, 한가지 더. 경로 C : \ Users \ Juan \ SysGED.metadata.plugins \ org.eclipse.wst.server.core \ tmp6 \ wtpwebapps \ WSysGED 정적 또는 배포 경로 가끔 변경됩니까? @home –

+0

응용 프로그램 서버에 따라 변경됩니다. 해당 경로에 액세스해야하는 이유를 알려주십시오 - 다른 솔루션을 사용할 수 있습니까? – home

답변

0
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { 

     String contextPath = request.getContextPath(); 
     System.out.println(contextpath); 

    } 
+0

더 많은 정보로 편집하십시오. 코드 전용 및 "시도하십시오"답변은 검색 가능한 콘텐츠가 없으므로 권장하지 않으며 누군가가 "시도해"야하는 이유를 설명하지 않습니다. – abarisone

관련 문제