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 .= "\n"; $me2day .= $data['md_footer']; } return $me2day; } function Me2DayConfig_ko($plugin) { global $service; $manifest = ''; $manifest .= ''.CRLF; $manifest .= ''.CRLF; $manifest .= ' '.CRLF; $manifest .= '
'.CRLF; $manifest .= ' '; $manifest .= ' '.CRLF; $manifest .= ' http://me2day.net/doa라면 doa를 입력하면 됩니다. 하나 이상의 주소를 입력하려면 주소와 주소를 쉼표로 구분(예: doa,taemy)하면 됩니다. 주소와 주소 사이에는 공백이 있어서는 안됩니다.'.CRLF; $manifest .= ' ]]>'.CRLF; $manifest .= ' '.CRLF; $manifest .= ' '.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= ' '; $manifest .= ' '; $manifest .= ' '.CRLF; $manifest .= ' 글의 수에는 목록에 표시할 글의 수를 지정하고 글자 수에는 글 하나당 표시할 글자 수를 입력합니다.'.CRLF; $manifest .= ' ]]>'.CRLF; $manifest .= ' '.CRLF; $manifest .= ' '.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= ' '; $manifest .= ' 사용'.CRLF; $manifest .= ' 사용 안 함'.CRLF; $manifest .= ' '.CRLF; $manifest .= ' '.CRLF; $manifest .= ' '.CRLF; $manifest .= ' '.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= ' '; $manifest .= ' 날짜'.CRLF; $manifest .= ' 시간'.CRLF; $manifest .= ' '.CRLF; $manifest .= ' 날짜 - 글 제목(시간)입니다.'.CRLF; $manifest .= ' ]]>'.CRLF; $manifest .= ' '.CRLF; $manifest .= ' '.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= ' 미투데이]]>'.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= ' ]]>'.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= ' '; $manifest .= ' 사용'.CRLF; $manifest .= ' 사용 안 함'.CRLF; $manifest .= ' '.CRLF; $manifest .= ' 사용을 선택합니다. 치환자를 사용할 사람은 사이드바를 사용 안 함으로 설정하고 치환자를 스킨 파일의 원하는 위치에 삽입하면 됩니다.

이 플러그인에 대한 더 자세한 정보는 미투와 블로그를 하나로, 태터툴즈 미투데이 플러그인을 읽어보기 바랍니다.'.CRLF; $manifest .= ' ]]>'.CRLF; $manifest .= ' '.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'.CRLF; $manifest .= '
'; return $manifest; } ?> #dhtmltooltip{ position: absolute; border: 1px solid #ccc; padding: 0px 5px; visibility: hidden; z-index: 100; color : #000; font-size: 11px; text-align: left; } #tooltip_ul{ list-style-type:none; margin: 0px !important; padding : 0 !important; } #tooltip_ul li{ margin: 4px !important; padding: 0px 0px 2px 18px !important; line-height: 16px !important; } #tooltip_date{ font-size: 12px; color : #000060; font-weight: bold; background : url(".$pluginURL."/date-plain.png) no-repeat 0px 50% !important; border-bottom-width: 1px !important; border-top-style: none !important; border-right-style: none !important; border-bottom-style: solid !important; border-left-style: none !important; border-bottom-color: #EEE !important; } #tooltip_post{ background : url(".$pluginURL."/doc-option-edit.png) no-repeat 0px 50% !important; border : none !important; } #tooltip_guest{ background : url(".$pluginURL."/user-plain-blue_mod.png) no-repeat 0px 50% !important; border : none !important; } #draco_counter { margin: 0px !important; padding: 0px !important;"; $target .= " font-family: Tahoma; font-size: 9px;"; if(isset($xy_color)) {$target .="color : ".$xy_color.";";} $target .=" } #draco_counter_y p{ display: block !important; margin: 0px !important; line-height: 12px !important; } #draco_counter_x p{ display: inline !important; margin: 0px !important; line-height: 12px !important; padding: 0px !important; } #draco_counter_y{ width: 30px; height: 100px; text-align: right; } #draco_counter_y_mid{ padding: 34px 0px 46px 0px; } #draco_counter_x { width : ".($graph_width)."px; height: 12px; margin: 0px !important; padding: 0px !important; } #draco_counter_x1{ float: left !important; text-align: left; } #draco_counter_x2{ float: right !important; text-align: right; }
"; $target .= ""; #그래프 왼쪽 Y축 if($disp_y=='true'){ $target .=""; } $target .= ""; #그래프 하단 X축 if($disp_x=='true'){ $target .=""; if($disp_y=='true') $target .=""; $target .=""; } $target .= "

$max_data[visits]

"; if($cut_peak == 'true') $target .= $avg; else $target .= round($max_data[visits]/2); $target .="

"; $chd = ""; $map_x = 0; $map_x_next = $map_x + intval($graph_barwidth/2); $loopcount = 0; #그래프 그리기 반복 부분 while($dcount_data=mysql_fetch_array($dcount_result)) { # 그래프 크기 계산 $dcount_data[visits]=stripslashes($dcount_data[visits]); $graph_high = round($dcount_data[visits] / $graph_max *95); if($graph_high>95) $graph_high = 95; else if($graph_high<0) $graph_high = 0; if($chd!="") $chd .= ","; $chd .= $graph_high.".0"; # 날짜 데이터 년월일로 쪼개기 $y = intval($dcount_data[date]/10000); $m = intval(($dcount_data[date]%10000)/100); $d = $dcount_data[date]%100; # 날짜 데이터 mktime $day_post1_time = mktime(0, 0, 0, $m, $d, $y); $day_post2_time = $day_post1_time + 86400; # 해당 날짜에 몇개의 글을 썼나 찾기 $day_post_query = "SELECT id FROM `".$database['prefix']."Entries` WHERE `published` >= $day_post1_time AND `published` < $day_post2_time AND `".$blogid_col."` = $owner AND `visibility` >= 2 AND `category` > 0"; $day_post_data = mysql_query($day_post_query) or die("쿼리 실패6 : " . mysql_error()); $day_post = mysql_num_rows($day_post_data); # 툴팁 창 만들기 $dcount_day = "
  • ".$y."년 ".$m."월 ".$d."일
  • 포스팅 "; if($day_post) $dcount_day .= ": ".$day_post."개"; else $dcount_day .= "없음"; $dcount_day .= "
  • 방문자 : ".$dcount_data[visits]."명
"; #이미지 맵 만들기 if($day_post){ $target .= ""; } else { $target .= ""; } $map_x = $map_x_next+1; $map_x_next = $map_x -1 + $graph_barwidth; $loopcount ++; $lastvisit = $dcount_data[visits]; } #구글 api 이미지 주소 만들기 $chart_img = "http://chart.apis.google.com/chart?chs=".$graph_width."x100&chd=t:".$chd."&cht=lc&chco=".str_replace("#","",$graph_color)."&chf=bg,s,".str_replace("#","",$graph_backcolor); if($view_grid=='true') $chart_img .="&chg=".(100/$how_day*7).",50"; if($line_blank=='true') $chart_img .= "&chls=".$line_thickness.",".($line_thickness*2).",".$line_thickness; else $chart_img .= "&chls=".$line_thickness.",".($line_thickness*2).",0"; if($graph_fillcolor) $chart_img .="&chm=B,".str_replace("#","",$graph_fillcolor).",0,0,0"; if($view_marker=='true'){ if(!$graph_fillcolor) $chart_img .="&chm="; else $chart_img .="|"; $chart_img .="c,6C57E2,0,$high_diff.0,10.0|x,E25757,0,$low_diff.0,10.0"; } if($graph_fillcolor || $view_marker=='true') $chart_overimg = $chart_img."|"; else $chart_overimg = $chart_img."&chm="; $target .= "
"; $target .= "

-$how_day days

today : $lastvisit

"; #------------------------------------------------------------------------------------------ return $target; } ?> JCF TEAM BLOG » 과연 어떤 웹서비스 엔진을 선택할 것인가? - 웹서비스 엔진 스팩 비교

JCF TEAM BLOG

관리자 글쓰기
블로그 »

General Features

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire (1.2)

[WWW] Metro@GlassFish

OracleAS 10g

Basic Profile 1.1 Compliant

X

X

X

X

X

X

X

X

Easily Create Services from POJOs

X

X

X

X

X

X

X

X

Open Source

X

X

X


X

X

X


RPC-Encoding

X



X

X


X [6]

X

Spring Support

X

X

X



X

X


REST Support


X

X




X

X

IDEA Plugins


X



X

X

X

Ant

Eclipse Plugins


X

(STP)


X

X

X

Ant

NetBeans Plugins







X

Ant

JDeveloper








X

Hot Deployment


X

X


X

?

X

X

Soap 1.1

X

X

X

X

X

X

X

X

Soap 1.2

X

X

X

X

X

X

X

X

Streaming XML (StAX based)


X

X



X

X


WSDL 1.1 ->Code (Client)

X

X

X

X

X

X

X

X

WSDL 1.1 ->Code (Server)

X

X

X

X

X

X

X

X

WSDL 2.0 ->Code (Client)


X


?

?

?


?

WSDL2.0 ->Code (Server)


X


?

?

?


?

Client-side Asynchrony

X

X

X




X

With BPEL

Server-side Asynchrony

X

X

X




X

With BPEL

Policy-driven code generation


X

X






Web Services related JSR standards

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire (1.2)

Metro@GlassFish

OracleAS 10g

JAX-RPC

X



X?

X


X

X

JAX-WS


[Early Access/Nightly]

X



[Early Access]

X [5]


JSR 181

X

[Early Access/Nightly]

X


X

X

X

X

JSR 181 on Java 1.4





X

X



SAAJ (1.2/1.3)

X

X

X

X

X

X

X

X

JSR 109







X

X

JBI



X




X


Data Bindings

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

XMLBeans Support

X

X

X



X



Castor Support

X

X [9]




X



JiBX


X




X



JAXB

X

X

X


X

X

X [5]

JAX-RPC

WS-*

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

WS-Addressing

X

X

X

X

X

X

X

with BPEL

WS-Atomic Transaction

X

X





X


WS-Business Activity


X







WS-Coordination

X

X





X


WS-Eventing


X



X




WS-Metadata Exchange


X [10]





X


WS-Notification

X

X [12]


?


?



WS-ReliableMessaging

X

X

X




X


WS-Policy


X

X




X

X

WS-Secure Conversation


X





X


WS-Security Policy


X





X


WS-Security

X

X

X

X

X

X

X

X

WS-Trust


X





X


WS-Transfer


X







WSDL 1.1 Support

X

X

X

X

X

X

X

X

WSDL 2.0 Support


X







Transports

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

HTTP

X

X

X

X

X

X

X

X

JMS

X

X

X

X

X

X

X

X

Jabber

Experimental

Experimental




X



SMTP/POP3

X

X





X


TCP

X

X





X


In-VM

?

X

X

?

?

?

X

?

Attachments

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

Soap w/ Attachments

X

X

X

X

X


X

X

DIME

X



X




X

MTOM


X

X


X

X

X

X

Encoding Table

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS

XML Textual

X

X

X

X

X

X

X

X

MTOM


X

X


X

X

X

X

FastInfoset


X

X




X


JSON


X

X




X


WS-Addressing Versions

This section is incomplete. If a stack has no WS-A support listed next to it, it probably means that this section has not been filled in for it.

Feature

Axis 1.x

Axis2

CXF

Glue

JBossWS

XFire

Metro@GlassFish

OracleAS 10g

2003-03



?






2004-04



?






2004-08

X

X

?



X

X

X

2005-08

X

X

X



X

X

X

2006-05 [8]

X

X

X




X


위의 내용은 다양한 웹서비스 엔진의 스팩을 비교한 것이다. 이러한 특성은 구현하고자 하는 웹서비스의 특성에 따라 선택된 스팩을 가장 잘 지원하는 웹서비스 엔진을 선택하기 위한 기준이다. 웹서비스에 있어서는 이러한 스팩적 특성뿐만 아니라 성능과 같은 비기능적 요구사항을 만족해야 한다. 따라서 적절한 웹서비스 엔진을 선택하기 위해서는 충분한 테스트와 도입과정이 필요하다.


===== Notes =====
#1 Bootstrapped this page from [WWW] XFire Stack Comparion page on Oct 9, 2006.
#2 Removed forward looking statements like "Coming in ..."
#3 Removed JBI JSR as none of the soap stacks here are packaged out of the box with a JBI container.
#4 Replaced "Via..." with "?"
#5 JAX-RPC 1.1, JAX-WS 2.0 and JAX-WS 2.1 RI are combined together in Metro. Similarly JAXB 2.0 and JAXB 2.1 are combined together in Metro. JAX-WS 2.0 and JAXB 2.0 functionality is available in Java SE 6 as well.
#6 Only available through the JAX-RPC 1.1 APIs.
#7 Derived from [WWW] ws Addressing review
#8 WSA 1.0 final: shares the same xmlns as the 2005-08 release.
#9 samples\databinding illustrates how to use castor with "wsdl2java -d none" generated code.
#10 Mex Module for Axis2 is available [WWW] here
#11 Transfer Module for Axis2 is available [WWW] here
#12 Apache Muse project has support for WS-Notifications

원문보기
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/07/28 17:50 2008/07/28 17:50

(go to top)