HOME 回資訊服務處首頁 Login
ITs通訊
搜尋電子報


含詳全文
訂閱電子報
請輸入E-Mail
 
 
2008.09.04 2008年第18期 設為首頁 | 加入最愛 | RSS 訂閱
最新電子報 | 上一期 | 下一期 | 各期電子報


   
中央研究院計算中心通訊
中央研究院計算中心發行
2008年第18期   民國97年9月4日
簡訊
請同仁留意近日釣魚郵件

 近日出現大量釣魚信件寄至院內,該郵件冒用Sinica名義(假冒以helpdesk@sinicaalert@sinica等帳號發送)騙取同仁email帳號密碼,並有多位同仁受害。經查,此攻擊事件係由塞爾維亞(Serbia)、 蒙特內哥羅(Montenegro)與智利發出,判斷這些IP已成為殭屍電腦。中心除迅速發信通知及封鎖發信IP外,並協助受害者更改帳號密碼。

 在此特別呼籲同仁對此類事件提高警覺。此外,亦特別聲明,計算中心不會要求同仁提供帳號密碼,請不必理會任何此類釣魚信件,逕自刪除即可,切勿回覆提供密碼或任何個人資料。同仁如有任何問題,請逕與中心資安小組(Email:infosec@mlist.sinica.edu.tw,電話:27899961)聯絡、洽詢。

Top

「院友系統」開發完成

 曾在本院任職的人員為數可觀,他們離開本院後的學業成就與事業發展,歷來似未受到充份關注。反觀各大學院校,卻都很重視校友聯繫與校友組織運作。今(97)年6月上旬,院長指示參照校友經營的精神,從主動接觸院友,蒐集其聯絡資訊及學業、事業現況入手,逐步凝聚院友力量,爭取他們對本院的支持。同時彰顯本院在人才培育上的成效,因而提升本院的學術地位及影響力,對社會產生更大貢獻。

 中心受命開發院友系統,以累積院友資料,提供統計報表,供相關運用之需。傅副處長出面主持,由本中心、人事室與調查研究專題中心共同研議院友系統的功能需求,以及院友追蹤如何展開。我們自人事系統擷取77年以來離職院友資料一萬七千餘筆,做為院友系統的基礎資料。各單位管理者可以調閱自該單位離職的院友紀錄,亦可新增院友資料。

 院友系統說明會於8月27日召開,廣邀本院各單位的承辦人員參加。會中就如何設定院友優先追蹤對象及如何接觸、聯繫,廣泛交換意見。本系統於9月1日正式上線。

Top

進行98年度本院SAS統計軟體使用需求調查

 為辦理98年度本院SAS統計軟體授權採購案,中心已於8/22發文至各所(處)、研究中心進行調查,請各單位於本(9)月12日前回覆。經費分攤沿例依中心所擬的2種計價模式中擇一分攤。各單位如對SAS統計軟體聯合採購有任何相關問題,歡迎來電洽詢系統科陳瑞羚小姐,聯絡電話:2789-8863。

Top

請把握免費參與「PNC 2008年會暨聯合年會」的機會

 即將於12月4-6日假越南河內La Thanh Hotel舉行的「太平洋鄰里協會(PNC)2008年年會與文化地圖協會(Electronic Cultural Atlas Initiative)及日越地理資訊協會(Japan-Vietnam Geoinfomatics Consortium)聯合會議(PNC 2008 Annual Conference and Joint Meetings with ECAI and JVGC)」,為鼓勵更多人士共同參與,本(9)月底前註冊加入成為PNC會員者,即可免費入場參與此一盛會,註冊網址http://www.pnclink.org/membership/ap/memberap.php,有興趣參與者請把握最後時機。

 今年PNC年會暨聯合年會之主題為「Information Technology for a Sustainable and Creative Humanosphere」,會中將針對文化地圖(Cultural Atlases)、地理資訊系統(GIS)、人文地理資訊系統(Humanity GIS)、數位檔案/典藏品(Digital Archives/Collections)、數位圖書館(Digital Libraries)、數位博物館(Digital Museum)、數位化流程(Digitalized procedure)、電子數位文化(e-Culture)、數位學習(e-Learning)與電子資源(e-Resource)等相關主題提供專業知識與未來願景。相關訊息及說明,請逕行連線至PNC網站查閱、參考。

Top

參與「第27屆測量及空間資訊研討會」並展出相關成果

 由成功大學測量及空間資訊學系主辦的「第27屆測量及空間資訊研討會」於本(9)月4-5日舉辦,本屆研討會主題為『感測世界:新一代空間資訊感測技術及應用』(Sensing the World: New Generations of Geospatial Information Sensing Technologies and Applications)。中心GIS小組除派員與會外,並於會中展出多點觸控桌與數位地球整合應用系統。

 本次會議主題呼應測量科技的發展與變革,測量從傳統的人眼觀測為主的測量方式,演變成以感測技術及自動化處理為主的空間資訊擷取方式,例如全球定位系統(GPS)接收器,感測衛星訊號獲得點位坐標差,取代傳統測角測邊的觀測方式;數位影像的感測及數位攝影測量自動化(如自動化空中三角、數值地形模型生產及正射影像生產等),大量減少傳統立體觀測的需求;空載光達(Airborne LiDAR)更以結合直接定位(Direct Georeferencing)系統及雷射掃瞄(Laser Scanning)系統,直接感測得地面點位的三維坐標。有關本研討會之詳細會議議程議程下載)及相關資訊等,請逕參閱活動網站

Top

歡迎參加「Discovery Studio 2.1」課程

 「DS2.1新功能介紹及透過Pipeline Pilot平台之整合性應用」課程將於9/25(全天)假生圖館第2視聽教室舉行,該軟體主要主要應用於生命科學領域,利用電腦模擬軟體增進研究效率。本次課程除介紹Discovery Studio2.1軟體新功能外,並說明透過整合性平台Pipeline Pilot強化並發揮彈性與整合的計算能力(含上機操作練習),歡迎蛋白質體及小分子結構模擬相關同仁報名參與研習。詳細說明暨報名事宜,請逕連線中心推廣課程網頁查閱。

Top

「網路影音服務」新增1場活動內容

 本院網站上“網路影音服務”近期新增1場「知識饗宴」活動內容。本場活動於7/29由本院劉翠溶副院長主持、假本院學術活動中心2樓第1會議室舉行,由本院歷史語言研究所研究員顏娟英博士主講「台灣近代美術史的觀察事」(片長:2時04分05秒),歡迎有興趣同仁連線至本院網路影音服務網觀賞精彩講座實況。

Top

資訊技術
淺談PHP與Java之Web開發整合技術

前言
  
 PHP為語法簡單的腳本語言,可以做為HTML的嵌入型語言,而且與Apache網頁伺服器搭配的設定容易、效能亦高。Java則是商業用途的優秀物件導向語言,具有非常多有用的程式庫,也有許多Web應用程式開發框架(framework)。比較PHP與Java,PHP的商業用途程式庫較為缺乏,而Java的語法、開發環境設定較為複雜。因此,Web開發人員不應對PHP或Java抱持成見,而應審時度勢,結合PHP與Java各自的優勢,才能更有效率地開發Web應用程式。本文將介紹三種不同的PHP與Java整合開發技術,希望可以提供建置PHP與Java之Web開發整合環境的參考。
  
三種PHP與Java之Web開發整合技術
  
 目前已知的PHP與Java之Web開發整合技術可分成SOAP(Simple Object Access Protocol)、Quercus、PHP/Java Bridge三種,這些技術可以讓PHP與Java在開發Web應用程式時互相使用彼此的程式庫。本文因篇幅關係,將側重於介紹如何在PHP程式中使用Java程式庫以及如何配置SOAP、Querus與PHP/Java Bridge等套件。

 本文使用的Java程式庫範例如List-1所示:
  
List-1 HelloService.java

 下面將介紹如何讓PHP結合SOAP、Querus與PHP/Java Bridge技術,呼叫echoHello("Jason"),並得到"Java say hello to Jason"的執行結果。

一、SOAP(Simple Object Access Protocol)
  
 SOAP是IBM及Microsoft等公司開發、W3C推薦,用來實作分散式物件技術的協定。SOAP提供一套以XML來包裝程式呼叫、參數傳遞與訊息回傳的機制,藉由XML純文字的特性,可透過HTTP、HTTPS、SMTP等通信管道穿越企業的防火牆,比起CORBA、Java RMI及DCOM這些以專屬binary格式傳送資料的分散式物件技術協定,SOAP具有與程式語言、平台和硬體無關的特性。
  
 Java語言最常使用的SOAP套件是Apache Axis2,PHP的是php-soap延伸模組。下面說明如何透過這兩個SOAP套件整合PHP與Java。
  
(一) 前置作業:安裝PHP >=5.0版、JDK >=1.4版以及Tomcat。

(二) 使用Apache Axis2將List-1 HelloService.java程式庫部署成SOAP的Web Services

1. 安裝Apache Axis2

 首先到Apache Axis2網站首頁下載最新的WAR(Web Archive)Distribution-axis2.war。將Tomcat的伺服器配置中的unpackWARs設為True,然後將axis2.war複製到Tomcat的webapps目錄下。重新啟動Tomcat,如果訪問http://localhost:<port>/axis2可以看到Axis2歡迎頁,即完成Apache Axis2的安裝。其中<port>是Tomcat的網路服務埠口,一般為8080。

2. 部署HelloService服務

(1) 撰寫services.xml來描述服務部署訊息

 HelloService.java的服務部署訊息如List-2所示。服務的name屬性定義服務的名稱。Apache Axis2使用服務的名稱創建服務的端點位址,如http://localhost:<port>/axis2/services/<nameofservice>。因此,HelloService服務的端點位址為http://localhost:<port>/axis2/services/HelloService。ServiceClass參數指定服務對應的類別。每個<operation>元素定義服務中一個操作的配置。<operation>的name屬性應設置為服務對應類別中方法的名稱。messageReceiver元素定義用於處理此操作的消息接收器。

List-2 services.xml

(2) 將服務包裝成Axis Archive

 Apache Axis2服務必須先包裝成Axis Archive (.aar)才能部署。Axis Archive (.aar)的格式與jar文件相同(使用jar或zip創建),內部包含服務對應的類別與services.xml。HelloService服務的aar文件內部結構如List-3所示:

List-3 HelloService.aar的內部結構

(3) 完成服務部署

 在Apache Axis2中部署服務相當簡單,只需將 .aar複製到Tomcat目錄下的/webapps/axis2/WEB-INF/services/即可完成部署。

(三) 使用php-soap延伸模組讓PHP調用HelloService服務

1. 載入、設定php-soap延伸模組

(1) 載入php-soap延伸模組

 在php.ini找到延伸模組設置部分,增加一行代碼來自動載入php-soap延伸模組。在Windows上,這一行代碼是:「extension = php_soap.dll」;在UNIX上是:「extension = php_soap.so」。定義、設定extension_dir,讓它指向包含php-soap延伸模組的目錄。如果需要重新編譯原始程式碼,請在configure命令中添加--enable-soap選項,再重新編譯。

(2) 設定php-soap延伸模組

 在php.ini增加下列代碼,以完成php-soap延伸模組的設定:

[soap]
soap.wsdl_cache_enabled=0
soap.wsdl_cache_dir="/tmp"
soap.wsdl_cache_ttl=86400

2. 撰寫PHP的SOAP client

 程式如List-4所示,sayHello1.php首先會讀取HelloService服務的WSDL文件(由Apache Axis2根據services.xml產生)來創建SOAP client,再設定參數param0為Jason,然後呼叫HelloService服務的echoHello函式,最後得到並列印出回傳的結果:"Java say hello to Jason",詳細的運作過程如【圖1】所示。

List-4 sayHello1.php


圖1 利用SOAP整合PHP與Java之運作示意圖

二、Quercus

 Quercus是Caucho Technology公司為resin application server開發之100%以Java實作的PHP 5引擎(required JDK 1.5)。Quercus可以讓PHP程式在JVM上執行,下面介紹如何使用Quercus搭配resin來整合PHP與Java。
  
(一) 前置作業:安裝JDK >=1.5版。

(二) 安裝resin application server及Quercus

 首先到Caucho Technology公司的首頁(http://www.caucho.com/)下載resin application server的zip文件(內含Quercus),然後將其解壓縮到某個目錄$RESIN_HOME,例如:windows環境下的c:\resin。啟動$RESIN_HOME下的httpd.exe,使用瀏覽器連接http://localhost:8080/,如果可以看到成功執行的畫面,代表resin application server及Quercus已成功安裝。

(三) 將List-1 HelloService.java放在$RESIN_HOME/webapps/ROOT/WEB-INF/classes/hello/目錄下。HelloService.java在被調用時,會自動被編譯成class文件。

(四) 撰寫PHP調用HelloService.java的程式,如List-5所示。將sayHello2.php放在$RESIN_HOME/webapps/ROOT/ 目錄下。

List-5 sayHello2.php

(五) 使用瀏覽器連接http://localhost:8080/sayHello2.php,resin application server就會把$RESIN_HOME/webapps/ROOT/sayHello2.php送給Quercus轉換成相對應的java程式,然後編譯、執行,最後resin application server回傳"Java say hello to Jason",顯示在瀏覽器畫面。

 使用Quercus搭配resin整合PHP與Java只需要安裝JDK、resin application server(內含Quercus),若要連接資料庫才需再安裝其他資料庫伺服器,如:MySQL Server,環境的設置比起SOAP與PHP/Java Bridge整合方式來得簡單。但Quercus與PHP/Zend Engine會有相容性的問題。

三、PHP/Java Bridge
  
 Java和script語言的介面定義於JSR 223,JSR是Java Specification Requests的簡寫。JSR 223規定了從script語言建立Java類別實體、呼叫方法以及取得結果物件的介面,也規定了從Java呼叫script語言的方法、轉換參數以及傳回值的方法。下面介紹如何使用PHP/Java Bridge套件讓PHP使用Java程式庫,PHP/Java Bridge是JSR 223之PHP 5的Java介面實作。
  
(一) 前置作業:安裝PHP >=5.0版、JDK >=1.4.2版、Apache HTTP Server >=2.0版、Tomcat(使用port 8080)。

(二) 安裝PHP/Java Bridge套件

  1. 首先到PHP/Java Bridge網站的首頁(http://php-java-bridge.sourceforge.net/doc/),點選「download」可以連到SourceForge.net,選擇下載php-java-bridge_j2ee.zip文件,解壓縮後,可以取得JavaBridge.war文件。將Tomcat的伺服器配置中的unpackWARs設為True,然後將JavaBridge.war複製到Tomcat的webapps目錄下。重新啟動 Tomcat,即可在webapps目錄下看到JavaBridge這個目錄。
  2.  將JavaBridge目錄下的java子目錄完整複製到$PHP_INCLUDE目錄,並將$PHP_INCLUDE目錄加到php.ini的include_path。例如:若$PHP_INCLUDE是c:\php5\pear,則include_path=".;c:\php5\pear"。java子目錄內包含使用PHP實作的PHP/Java Bridge原始程式碼。

(三) 將List-1的程式放在Tomcat目錄下的webapps/JavaBridge/WEB-INF/classes/hello/ 中,並編譯之。

(四) 撰寫PHP調用HelloService.java的程式,如List-6所示。將sayHello3.php放在Apache Server的DocumentRoot目錄下。

List-6 sayHello3.php

(五) 使用瀏覽器連接http://localhost/sayHello3.php,則Apache Server會將sayHello3.php交給PHP/Zend Engine編譯、執行。當PHP呼叫Java程式庫時,PHP/Java Bridge (java子目錄下的php程式)會將此呼叫轉換成 *.phpjavabridge文件格式,然後傳送到Tomcat下JavaBridge的php.java.servlet.PhpJavaServlet處理,最後透過PHP/Java Bridge回傳結果給PHP。List-6程式執行後可看到"Java say hello to Jason"顯示在瀏覽器畫面。

結語
 
 隨著Web的發展,使用單一語言來開發Web應用程式未必是最有效率的方式。期許透過本文的介紹,可以讓Web開發人員瞭解如何使用PHP與Java兩種語言整合開發Web程式的技巧,更希望可以促使Web開發人員思考、發掘更好的Web應用程式開發方式,以因應電子化時代快速變動及大量產生的資訊需求。

參考資料

【1】SOAP - Wikipedia, the free encyclopedia. Available at URL
http://en.wikipedia.org/wiki/SOAP

【2】Apache Axis2. Available at URL http://ws.apache.org/axis2/

【3】Quercus: PHP in Java. Available at URL
http://www.caucho.com/resin-3.0/quercus/

【4】PHP/Java Bridge. Available at URL http://php-java-bridge.sourceforge.net/doc/

【5】JSR 223: Scripting for the JavaTM Platform. Available at URL
http://jcp.org/en/jsr/detail?id=223

Top

資訊服務
計算中心圖書業務服務簡介(上)

引言
  
 計算中心圖書組主要業務之一,為支援本院圖書館業務電腦化,本期專文將針對此項業務作一介紹,以便於院內同仁可以快速取得所需的學術研究文獻。

 計算中心圖書組業務包括圖書館自動化系統維護、電子期刊系統管理、文獻傳遞服務及本院圖書館服務入口網站(如【圖1】所示)。茲詳述如下:

  • 圖書館自動化系統:提供院內各圖書館管理圖書期刊,包括採購、編目與流通作業,及目錄查詢等。
  • 電子期刊系統:以西文電子期刊為主,利於本院同仁找到所需的期刊資料。
  • 文獻傳遞服務:與國外圖書館資料單位合作,提供國內圖書館未蒐藏的館藏。
  • 本院圖書館服務入口網站:彙集與整理本院圖書館館藏與網際網路上的各式資源,並提供RSS服務,隨時發送本院圖書館館藏及其服務等方面的最新消息。

 計算中心圖書組也具備一般圖書室業務,提供計算中心業務所需的圖書期刊文獻,及院內圖書館作業自動化的書目資料庫,以加速圖書館自動化作業(如:Global BIP Review、Ulrich’s Periodical Directory)。同時也與院內圖書館合作採購部份資料庫(如:IEL、聯合知識庫),並提供院內跨組別的資料庫(如:ACM Digital Library、eBrary、ScienceDirect(SDOS & SDOL)、中華民國期刊論文索引資料庫等)。此外,在院內圖書館購置各式電子期刊、電子書與電子資料庫等前提下,院內同仁亦可經由網路搜尋引擎查得時,直接下載相關全文資料。


圖1 圖書組業務示意圖

圖書館資源及服務內容

 為讓本院讀者能有更完善、更便利的本院圖書館相關館藏查詢環境,本院圖書館自動化系統線上公用目錄Web版(以下簡稱WebPAC)自去(2007)年起,陸續增加了數項新功能,並在今年年中分別完成相關設定,開放讀者使用。主要包括:與其他資料庫連結、RSS服務,與iGoogle之結合,分述如下:

一、與其他資料庫連結:

  1. 當讀者於WebPAC上無法查得所需資料時,或查得資料為2筆以上,可點選畫面右方之「Other Resources」,連至其他網站/資料庫/聯合目錄進行進一步查詢。
  2. 當讀者於WebPAC上已查得並連結特定1筆資料時,也可點選畫面右方之「Other Resources」,連至其他網站/資料庫/聯合目錄,查看進一步之資訊,如該書之TOC、書影、摘要等。

 透過此一功能,可將本院圖書館館藏目錄和其他幾種資源進行連結,包括:

  1. 可查看TOC、書影、摘要、圖書部份內容等:讀者可選擇連至Amazon、Findbook、Google Books等網站,查看某本圖書之TOC、書影、摘要、圖書部份內容,可為讀者自行購置,或圖書館是否採購該書籍之參考。
  2. 圖書全文:部份書籍,在Amazon、Google Books等網站上可查得全文資料。
  3. 期刊全文:讀者如欲取得某篇期刊全文,可先在WebPAC上進行查詢,再透過中研院西文電子期刊館藏(中研院電子期刊整合服務),或歐美所電子期刊系統(包含Lexis、Westlaw、中國期刊全文數據庫),連至該期刊之電子版,直接取得所需的期刊全文。
  4. 聯合目錄:如果讀者在WebPAC上找不到所需資料,也可透過這個功能,連至OCLC WorldCAT或NBINet等聯合目錄,查看其他圖書館的館藏情況,進一步透過館際合作方式,借閱所需之資料。

二、RSS服務:讀取個人圖書借閱相關訊息(My Record Feeds)

 當讀者於院內各館借閱館藏資料後,如借閱量大,無法一一留存圖書館之相關通知(紙本/Email),便可利用新增的"My Record Feeds"功能。該功能可透過RSS機制,當圖書館有任何訊息需提醒讀者,讀者便可透過本身訂閱RSS訊息的方式,立即獲知自己於圖書館借閱狀況。此功能可輔助流通通知單功能,提醒讀者各種相關借閱狀況,避免讀者因各種原因而沒有收到通知單,因而錯失自己相關之借閱狀況,造成使用者權益受損。

 My Record Feeds功能之設定操作方式如下:

  1. 連線至本院圖書館WebPAC
  2. 點選"個人借閱記錄查詢",輸入個人的姓名及身分證字號。
  3. 點選「My Records Feeds」。
  4. 如為IE7.0、FireFox2.0、Safari3.1.1、Opera9.27以上版本瀏覽器,可直接訂閱相關RSS訊息。
  5. 如個人電腦內瀏覽器版本無內建RSS閱讀功能,可利用RSS Reader如OwlRSS等,或利用個人iGoogle帳號訂閱相關訊息。
  6. 詳細之操作說明可參考「My Record Feeds操作說明」。

 當讀者完成設定後,個人之借閱狀況如有任何更新,皆可直接讀取相關訊息,而不必連線至WebPAC查詢或等候圖書館Email通知,方便讀者可即時獲悉個人借閱狀況。

三、與iGoogle之結合:在iGoogle加入中研院館藏目錄查詢小工具

 iGoogle可自行新增各式小工具,將常用網路資訊整合在個人化iGoogle首頁。自推出以來,已使iGoogle成為一般使用者常用的個人化首頁。因此,計算中心於iGoogle推出中研院館藏目錄查詢小工具,讓使用者可將目錄查詢功能整合到個人化的iGoogle首頁中。首先,使用者需有一組個人的iGoogle帳戶,登入帳戶並連結http://tinyurl.com/6ofcpu後,點選「新增至Google」即完成設定。再返回iGoogle首頁,即可見到中研院館藏目錄查詢已整合至個人化的首頁中(參見【圖2】)。

圖2 中研院館藏查詢小工具加入iGoogle

小結
   
 以上為本院WebPAC年度新增之功能。另想提醒讀者,本院WebPAC之最佳瀏覽解析度為1024*768,並建議使用IE7.0、FireFox2.0、Safari3.1.1、Opera9.27以上版本瀏覽器。讀者如在使用上有任何問題,歡迎隨時向您所屬單位之圖書館/室或是中心圖書組(TEL:2789-9497,Email:libserv@gate.sinica.edu.tw)反映;如有任何建議,亦請不吝賜教。(待續)

 

Top

創刊日期:74年10月15日
發行人 :徐讚昇
總編輯 :曾士熊
編輯小組:林翠娟
網站技術:張錦堂
出版日期:民國97年9月4日


服務專線:(02)2789-8872
E-mail:publish@gate.sinica.edu.tw
訂閱與取消訂閱 | 各期計算中心通訊 | 中研院計算中心 | 中央研究院

本電子報所有文字、圖片版權為中央研究院所有,未經許可請勿轉載。
如對本報有任何意見,請與我們聯繫。
   
 
 本電子報所有文字、圖片版權為中央研究院所有 。 電子報出版系統由中央研究院資訊服務處開發。