본문 바로가기

분류 전체보기

이클립스에 Java3D 개발환경 설정하기 Java로 3D를 개발하기위해서는 먼저 어떤 라이브러리를 사용할 것인가를 결정해야만 한다. 일단 저자가 테스트 해본것들을 나열해 보면 LWJGL(Lightweight Java Game Library) http://www.lwjgl.org/, JOGL(Java OpenGL) https://jogl.dev.java.net/, Java3D https://java3d.dev.java.net/ 등이 있었다. 이러한 사이트를 방문해 보면 각종 튜토리얼 및 데모 버전 또는 소스코드를 확보할 수 있는데 이 소스코드 등을 실행해보려면 여간 까다로운게 아니다. 먼저 가장 쉽게 접근하는 방법은 J2SE JDK를 설치하고 *.jar 는 JAVA_HOME/jre/lib/ext 에 복사하고 *.dll은 JAVA_HOME/jre/.. 더보기
Eclipse Ganymede RCP에서 org.eclipse.draw2d 소스가 보이지 않을 때 원인과 해결방법 Eclipse SDK Version: 3.4.1 Build id: M20080911-1700 Eclipse Ganymede RCP를 설치한 경우 org.eclipse.draw2d 관련 소스가 보이지 않는다. 이유는 3.4.0 버전의 Runtime만 설치가 되었기 때문에 소스가 포함되어 있지 않기때문이다. 오늘 약 6시간 가까이 이 문제와 씨름을 했다. GEF 3.4.0 Update 버전 GEF 3.4.1 Update 버전 GEF 3.4.1 All 버전 등을 다운받아 로컬에서 인스톨을 해봤지만 여전히 소스는 인식하지 않았다. 로컬에서 인스톨하는 방법은 Help --> Software Updates... --> Available Software --> Manage Sites... --> Add... 를 선택.. 더보기
[ERROR]java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.FilterDispatcher 개발환경 : eclipse(europa) 3.3.2 + WTP(JST, WST) 2.0.2 + Tomcat 5.5.2 위의 개발환경으로 웹애플리케이션을 개발할 때 아래와 같은 예외가 발생할 수 있다. 이때 이클립스 클래스패스 상에는 struts-core 가 있기 때문에 문제가 없는데도 에러가 발생한다. ... 심각: Exception starting filter struts2 java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.FilterDispatcher at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1359) at org.apache.cata.. 더보기
[Castor] null값을 갖는 객체의 속성을 XML로 변환하기(Marshaling) "옳바른 성장과 따뜻한 나눔" Castor에서 null값을 갖는 속성은 무시된다. 즉, XML로 변환되지 않는다. 그런데 가끔 우리는 해당 엘리먼트가 반드시 존재해야 할 때가 있다. 즉, 값이 존재하지 않는 빈 태그가 필요한 경우 어떻게 할 것인가? Castor 1.3(castor-xml-1.3, castor-core-1.3) 사용 Castor 0.9.6 에서부터 지원하기 시작한 nillable을 이용하거나 핸들러를 만들 수 있다. 그러나 핸들러를 별도로 만들경우 모든 경우에 대한 핸들러를 만들어 줘야만 하기 때문에 현실적으로 어렵다. 그러므로 여기에서는 nillable을 이용한 방법을 알아본다. 아래와 같은 객체와 Castor맵핑파일이 있을 때 /** * 간단한 개인정보 */ public class P.. 더보기
[ERROR] .filterStart : Exception starting filter struts2 환경정보: Eclipse Platform, Version: 3.3.2, Build id: M20080221-1800 m2eclipse 0.9.8.200905041414 tomcat-5.5.23 문제상황: WTP Server환경에서 m2clipse를 사용하여 실행했을 때 아래 에러 스택과 같은 예외가 발생한다. 문제는 톰캣에 있는 servlet-api.jar(2.4) 와 'pom.xml'에 선언된 javax.servlet servlet-api 2.4 provided 버전이 배포가 되어서 충돌하기 때문에 발생한다. scope를 'test'변경하면 정상동작한다. 이로 미루어 보아 WTP서버에서 메이븐이 동작할 때 배포하지 않아야 할 라이브러리 까지배포하기 때문에 발생한다고 유추할 수 있다. 사실 'test'와.. 더보기
CHKJ3008E: Missing or invalid WAR file. 현상 : 이클립스에서 WebProject를 개발할 때 발생한다. 원인 : 이클립스 프로젝트로 'import'할 때 web.xml을 찾을 수 없을 경우에 발생한다. 해법 : 이클립스는 해당 자원을 컴파일을 통해 특정위치(보통 output folder)에 내보내게 되는데 이때 'WEB-INF/web.xml'을 내보내는데 실패를 해서 위의 에러가 발생하는 것이다. 그러므로 'project --> clean'을 해주던가 이클립스를 다시 시작하면 해결된다. 더보기
Dynamic Web Module이 아닌 일반 자바 프로젝트에서 발생하는 워닝 제거하기 문제 이클립스에서 메이븐2 + WST 를 사용하고 있을 때 웹 모듈이 참조하는 일반 자바 프로젝트에서 다음과 같은 경고(Warnning)가 발생할 경우 어떻게 경고를 제거할 것인가? Classpath entry org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER will not be exported or published. Runtime ClassNotFoundExceptions may result. 해결방법 문제를 해결하고자 열심히 구글링을 했지만 해결방법으로 제시한 것들은 모두 WST의 Dynamic Web Module에서 발생한 경우이고 문제로 제기한 것과 같이 웹 모듈이 참조하는 일반 자바 프로젝트에서 발생한 경우는 딱히 해결 방법을 찾을 수가 없었다. 그래서 .. 더보기
Unitils 에서 DbUnit 사용시 발생하는 에러와 원인 Unitils 2.2를 사용하여 DB 테스트케이스를 만들려고 했다. 음. DbUnitModule을 이용하려고 하니 아래와 같은 예외가 발생했다. org.unitils.core.UnitilsException: Error inserting test data from DbUnit dataset for method public void kr.nextree.component.insurance.dao.CustomerDaoTest.testCreateCustomer() at org.unitils.dbunit.DbUnitModule.insertDataSet(DbUnitModule.java:157) at org.unitils.dbunit.DbUnitModule$DbUnitListener.beforeTestSetUp(DbU.. 더보기
Oracle 10g XE(Express Edition)의 프로세스 및 세션 늘리는 방법 TNS-12519: TNS:no appropriate service handler found 위와 같은 에러가 발생하는 원인은 여러가지 일수 있으나 연결할 프로세스 또는 세션이 부족한 경우에도 발생한다. 다음과 같이 SQLPLUS에 접속하여 정보를 확인하고 프로세스나 세션이 임계치(limit)에 근접할경우 프로세스와 세션을 늘려준다. 만약 초기 설정하고 아무것도 변경하지 않은 경우 프로세스는 40, 세션은 49로 되어 있으며 여기에서는 100으로 설정할 계획이다. 변경순서 1. 프로세스 및 세션의 임계치를 확인한다. 2. 프로세스 및 세션의 임계치를 늘려준다. 3. 데이터베이스를 재시작한다. 1. 프로세스 및 세션의 임계치 확인 $> sqlplus / as sysdba SQL> select * from .. 더보기
Maven2+Jetty+SSL 적용하기 먼저 "How to configure SSL"을 참고하여 인증서를 만든다. 위의 내용은 keytool, openssl을 사용하여 ssl을 적용하는 방법을 설명하고 있다. 여기에서 keytool은 java, openssl은 non-java(Apache webserver 와 같은) 영역에 적용할 수 있다. 이 글에서는 keytool을 적용하는 방법만 설명한다. 만약 이미 인증서를 보유하고 있는 경우 위의 참고 사이트에서 "Step 3: Loading Keys and Certificates"를 참고한다. 약어: - CA : Certificate Authority(인증기관) - CSR : Certificate Signing Request - RSA : Rivest-Shamir-Adleman(암호화알고리즘 및 인.. 더보기