2013-03-14 3 views
1

Java 웹 응용 프로그램의 생성 보고서에 JasperReport을 사용하고 있습니다.getServletConfig를 사용하여 파일 이름을 가져 오는 중 오류가 발생했습니다.

보고서 파일을 가져 오는 데 다음 줄이 있습니다.

JasperReport report = (JasperReport) JRLoader.loadObject(getServletConfig().getServletContext().getRealPath("\rpts\report1.jasper")); 

위의 줄을 사용하려고하면 FileNotFoundException이 표시됩니다. 그러나 다음 줄을 사용하려고하면 프로그램이 성공적으로 실행됩니다.

JasperReport report = (JasperReport) JRLoader.loadObject(getServletConfig().getServletContext().getRealPath("//rpts//report1.jasper")); 

그래서 첫 줄의 문제점을 알고 싶습니다.

미리 감사드립니다 ...

답변

0

경로는 서블릿 경로 여야합니다. 일반적으로 서블릿 경로는 슬래시 /입니다.

시도해보십시오. /rpts/report1.jasper"

1

\을 읽으려면 자바 언어 (및 기타)가 String\\ (이중 백 슬래시)가 필요합니다. 첫 번째 방법은 다음과 같이이 경로가 /를 사용하거나 더 나은 File#separator를 사용하여 확인하는 것이 좋습니다 것, 또

JasperReport report = (JasperReport) JRLoader.loadObject(getServletConfig() 
    .getServletContext().getRealPath("\\rpts\\report1.jasper")) 

로 변경해야합니다 File.separator vs Slash in Paths

관련 문제