Struts2

Hagi 2010. 2. 3. 11:19

helloWorld예제를 돌릴때, java.lang.NoClassDefFoundError: Lcom/opensymphony/xwork2/util/logging/Logger 이러한 에러가 발생하였다.

뭐 돌아가는데는 지장이 없었지만... 그래서 jar파일이 하는 역할에 대해 조사해보고자 한다.

 

commons-logging-1.1.jar allows Struts2 components to log messages in a configurable manner. The Apache commons-logging library provides an abstraction so that developers can write log messages without adding dependencies (such as log4j). The commons-logging library can use other logging frameworks such as log4j, but how commons-logging operates is controlled through run-time configuration. Check the Apache commons-logging web site for more details. freemarker-2.3.8.jar is used within Struts2 to generate the output for the majority of the Struts2 tags. Freemarker is a template language and library that is preferred by many web developers. We will cover Freemarker in another entry when we discuss customizing the Struts2 tags. ognl-2.6.11.jar is also used by Struts2 tags. OGNL stands for Object Graph Notation Language and more information can be found at http://www.ognl.org. OGNL provides a programming language that the Struts2 tags can evaluate when reading attributes. The OGNL is very handy and can easily refer to many of the built-in objects in a JSP. We will cover OGNL and the objects accessible within the tag attributes in another entry as well. struts2-core-2.0.6.jar and xwork-2.0.1.jar contain the core components and resources of the Struts2 framework.

 

1. commons-logging-1.1.jar : log 기록을 조정하는 Struts2의 한 구성요성(컴포넌트)이다. log4j같은 것도 연동 가능

 

2. freemarker-2.3.8.jar : Struts2 태그의 대부분이 여기에 포함된다.

 

3. ognl-2.5.11.jar : 이것 또한 Struts2 태그를 위해 사용한다.

 

4. struts2-core-2.0.6.jar와 xwork-2.0.1.jar : Struts2 framework의 핵심적인 것들을 가지고 있다.

 

 

위 에러는 여러가지 실험 결과 struts2-core의 버전 문제인 듯하다. struts2-core-2.0.14.jar로 교체하고 ogln파일(jar)을 넣어주었더니 위와 같은 에러가 발생하지 않았다. log에러인데 commons-logging문제가 이니라...?? 암튼... 헴헴

아~ 그리고 struts1처럼 taglib의 jar파일이 따로 있는 것이 아니었다. core에 포함되어있었따.