2009-08-28 3 views
0

사용자가 숫자를 입력하는 JSTL에 업데이트 페이지를 작성하고 있습니다. 그런 다음 JFreeChart를 사용하여 숫자를 매개 변수로 전달하는 Java Bean을 호출하여 PNG 이미지를 만듭니다. ; 내가JSTL을 사용하여 Java bean의 서버에 PNG 파일 저장

ImageIO.write 사용하여 내 하드 드라이브에 직접 파일을 저장할 때이 모든() myBufferedImage을 "PNG", 새로운 파일 ("/testChart.png C") 잘 작동

내 tomcat 디렉토리에 이미지를 저장하고 내 로컬 호스트에서 웹 사이트를 실행할 때 볼 수도 있습니다. 그러나이 코드가 내 로컬 호스트가 아닌 서버에서 실행되면 tomcat 디렉토리에 저장하는 기능이 작동하지 않습니다. 이 파일을 서버에 직접 작성하는 방법은 무엇입니까? 내 Eclipse 프로젝트의 WebContent 폴더 (java 폴더가 src 폴더에있는 위치)로 보내시겠습니까? 모든 도움을 미리 감사드립니다.

답변

0

에서 반환 된 디렉토리 경로에 쓰기 System.getProperty ("java.io.tmpdir");

1

ServletUtilities 클래스를 사용하는 것이 좋습니다. 그것은 java tempdir에 저장하고 세션이 무효화 될 때 정리합니다. :) 파일을 표시하는 또 다른 힌트는 DisplayChart 서블릿을 사용하여 이미지를 얻는 것입니다.

<img src="<c:url value='/servlet/DisplayChart?'><c:param name='filename' value='${yourFileNameHERE}' /></c:url>" alt=""/> 
: 이 web.xml에 간다

 <servlet> 
    <servlet-name>DisplayChart</servlet-name> 
    <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>DisplayChart</servlet-name> 
     <url-pattern>/servlet/DisplayChart</url-pattern> 
    </servlet-mapping> 

이는 JSTL 사용하여 이미지를 표시하는 방법 다음이다

관련 문제