java의 java.awt패키지는 이미지처리시 운영체제의 자원을 사용한다.
윈도우즈의 경우에는 아무설정을 해주지 않아도 잘돌아가지만(그래서 어떤방식인지는 아직 잘모르겠다.)
유닉스나 리눅스 시스템 환경에서는 X11이라는 흔히 말하는 X-window가 설치되어있고 데몬이 구동되고 있을시에
패키지사용이 가능하다.
보통 웹상에서 JSP & SERVLET을 이용 이미지 썸네일을 구현할시에 여러가지 방식이 있겠지만
나는 JAI를 사용한다.
JAI(Java Advanced Imaging ) 는 SUN에서 발표한 이미지 처리를 위해 만들어 진 API이다.
필요한 jar파일은 jai_core.jar, jai_codec.jar가 필요하다.(sun 홈피에서 다운받을수 있다.)
JAI또한 내부에선 java.awt.를 사용한다.
대략적인 설명을 마치고
================================================================================================
어제부터 썸네일 생성시 에러가 나면서 로그파일에
java.lang.NoClassDefFoundError: sun/awt/X11GraphicsEnvironment
at java.lang.Class.forName1(Native Method)
at java.lang.Class.forName(Class.java(Compiled Code))
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:91)
at java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1073)
at com.nowonplay.hover.image.ImageConverter.create(ImageConverter.java:295)
at com.nowonplay.hover.image.ImageConverter.create(ImageConverter.java:254)
at com.nacf.util.ImageUtil.createThumbnail(ImageUtil.java:32)
at jeus_jspwork._media._vodRrcCenter._photo._403_write._jspService(_403_write.java:346)
at jeus.servlet.jsp.HttpJspBase.service(HttpJspBase.java:54)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:269)
at jeus.servlet.jsp.JspServletWrapper.executeServlet(JspServletWrapper.java:102)
at jeus.servlet.jsp.JspServletWrapper.execute(JspServletWrapper.java:63)
at jeus.servlet.engine.WebtobRequestProcessor.run(WebtobRequestProcessor.java:175)
[2008.08.28 12:25:28][1] [SRVL-2456] [E] (/media/vodRrcCenter/photo/write.jsp) fail to execute servlet
이러한 메세지가 남아있다..
검색해보니 X11자원을 찾기 못하는것 같았다..아니면 설치되어 있지 않던가.
첫번째 방법은 일단 X11이 설치되어 있지 않다면 설치해야한다.
설치가 되어있는 상태라면 웹서버의 설정파일에서
jvm구동 옵션에 -Djava.awt.headless=true 을 포함해서 웹서버를 재시작 하면 X11데몬을 띄우지 않고
X11의 자원을 사용할 수 있다.
'language > java' 카테고리의 다른 글
Hibernate Transaction (OSIV 패턴) : org.hibernate.TransactionException: Transaction not successfully started (0) | 2009.06.21 |
---|---|
Out Of Memory (7) | 2009.06.12 |
Commons-Lang StringUtils Class 활용 (0) | 2008.06.28 |
tomcat 5.5, Jakarta connection pool(DBCP), 이클립스 설정 (0) | 2008.05.16 |
jsp파일을 Excel파일로 출력(저장) (1) | 2008.05.13 |