카테고리 별로 30가지 오픈소스 툴이 잘 정리 되어 있는 것 같습니다.
http://www.javapowertools.com/
function uft8html2utf8( $s ) { if ( !function_exists('uft8html2utf8_callback') ) { function uft8html2utf8_callback($t) { $dec = $t[1]; if ($dec < 128) { $utf = chr($dec); } else if ($dec < 2048) { $utf = chr(192 + (($dec - ($dec % 64)) / 64)); $utf .= chr(128 + ($dec % 64)); } else { $utf = chr(224 + (($dec - ($dec % 4096)) / 4096)); $utf .= chr(128 + ((($dec % 4096) - ($dec % 64)) / 64)); $utf .= chr(128 + ($dec % 64)); } return $utf; } } return preg_replace_callback('|([0-9]{1,});|', 'uft8html2utf8_callback', $s ); } function addMe2DaySkin($target, $mother) { global $entryView; requireComponent("Tattertools.Function.misc"); $me2day = getMe2Day(); misc::dress('Me2Day', $me2day, $entryView); return $target; } function addMe2DaySB($parameter) { global $configVal; requireComponent( "Tattertools.Function.misc"); $data = misc::fetchConfigVal($configVal); if (isset($parameter['preview'])) { // preview mode $retval = "미투데이에 올린 자신의 글을 확인할 수 있습니다."; return $retval; } $me2day = getMe2Day(); if($data['sb_use'] == 'T') { return $me2day; }return; } function getMe2Day(){ global $pluginURL, $entryView, $configVal; requireComponent('Eolin.PHP.HTTPRequest'); requireComponent('Tattertools.Function.misc'); requireComponent('Eolin.PHP.Core'); $data = misc::fetchConfigVal($configVal); $me2day_id=split(',',$data['me2day_url']); for($i=0; $i < count($me2day_id); $i++) { $me2day_url = 'http://me2day.net/'.$me2day_id[$i]; $me2day_rss = $me2day_url.'/rss'; $request = new HTTPRequest($me2day_rss); $request->timeout = 1; if ($request->send()){ $rst = $request->responseText; } // $rst = html_entity_decode($rst); $rst = uft8html2utf8($rst); $xmls = new XMLStruct(); $xmls->open($rst); if($xmls->doesExist('/rss/channel/title')) { $title=$xmls->getValue('/rss/channel/title'); } if($xmls->doesExist('/rss/channel/link')) { $link=$xmls->getValue('/rss/channel/link'); } $rankicon = ($data['icon_use']=='T')?" style=\"margin:4px 0px 0px 0px;padding:0px;list-style:none;margin-left:1px;\"":""; list($me2dayer, $temp) = split('님의 ', $title); $me2day .= $data['md_header']."\n"; $me2day .= "
$max_data[visits] "; if($cut_peak == 'true') $target .= $avg; else $target .= round($max_data[visits]/2); $target .=" | ";
}
$target .= "|
| "; $target .=" | -$how_day days today : $lastvisit |


http://www.expertvill.net/tc/jcfblog/trackback/99

Struts2 의 기본적인 운영환경은 아래와 같습니다.
- Servlet API 2.4
- JSP API 2.0
- Java 5
따라서 Struts2를 적용하기 위해서는 Java 와 어플리케이션 서버의 Java EE 버전의 호환 여부를 잘 살펴봐야 합니다.
만약 Java 4를 사용하고 있다면
아래의 Struts2 라이브러리 및 관련 라이브러리를 Java 4와 호환가능한 라이브러로 교체해 주어야 합니다.
- strut2-core-2.x.x.jar
- xwork-2.x.x.jar
- struts2-spring-plugin-2.x.x.jar
호환되는 라이브러리는 Struts2 홈페이지에서 다운로드하거나
Retrotranslator 를 이용하여 기존의 라이브러리를 Java 4를 지원하도록 변환해야 합니다.
Retrotranslator 를 다운로드하신 다음에 아래와 같이 변경해 주시면 됩니다.
Retrotranslator Maven 플러그인도 한번 살펴봐야 되겠네요
http://www.expertvill.net/tc/jcfblog/trackback/12