본문 바로가기

개발환경

Maven Jetty JNDI 설정 WST Tomcat과 동일하게 사용하는 방법 상황: maven jetty 6.1.14 에 DataSource를 설정하고 개발환경을 구축하여 개발하는 도중 REST 로 개발되어야 할 상황이 발생하여 strusts2-rest-plugin 2.1.6으로 개발환경을 구축하였으나 동작하지 않음. 정확한 원인은 모르겠으나 Jetty 환경에서 REST 적용이 안되는 것 같아서 WST 환경으로 전환함. 이때 Jetty Server가 설치되어 있지 않은 관계로 Tomcat 6.0 으로 Server 설정을 했으나 Jetty의 JNDI 설정을 인식하지 못함. 목적: Jetty 와 Tomcat 개발환경에서 설정변경없이 동시에 개발하고 싶다. -------- Jetty 6.1.14 에서 기본 JNDI 작업 :jetty.xml java:NEXFA_DS jdbc:mysql:.. 더보기
eclipse Galileo 에서 소스코드를 확인할 수 없을 때 "The JAR of this class file belongs to container 'Plug-in Dependencies' which does not allow modifications to source attachments on its entries." 위와 같은 메시지는 원래 소스를 첨부하지 않았을 때 소스코드를 보여주는 대신에 보여주는 메시지이다. 그런데 해당 클래스가 위치한 플러그인을 찾아서 해당 소스코드가 존재함을 확인했는데도 여전히 소스코드가 안보인다. 구글링을 해보니 나와 같은 경우를 겪은 사람들이 또 있었나 보다.. http://www.eclipse.org/forums/index.php?S=0c1df6c1a8b78f46988ed9e53c8fb72b&t=msg&th=157714 위의 포.. 더보기
No grammar constraints (DTD or XML schema) detected for the document. 이클립스에서 XML을 사용하다 보면 위와 같은 경고(Warning)을 볼 수 있다. "경고를 무시하지 말라!" 내가 강조하는 프로그래밍 코딩 규칙중 하나인데 내가 무시할 수는 없지 않겠는가. 해결방법은 아래와 같다. 만약 아래와 같이 했는데도 적용이 되지 않는다면 Project -> Clean 을 통해 해당 프로젝트를 리빌드한다. 그럼 경고가 사라진다. (Galileo 기준) Window -> Preferences -> XML -> XML Files -> Validation : Indicate when no grammar is specified 의 값을 Warning --> Ignore 로 변경 참고사이트 http://www-01.ibm.com/support/docview.wss?rs=2044&conte.. 더보기
이클립스에 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.. 더보기
[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.. 더보기