xwiki二次開發(2) xwiki開發文檔查看指南


       以下是吐槽,諸位可以跳過……     

      作為一個真正百科項目的開發,例如像百度百科一樣的項目,其核心我覺得是一個強大的富文本編輯器,和與之關聯展示和數據挖掘和分析。因為無論是用戶(或者編輯)在編輯詞條的時候覺得特別麻煩,然后展示效果特別不好看,這個系統都是失敗的。我是一個后端工程師,但是根本的好用好看才是關鍵的,架構再好也是需要為這個服務的。你要是大公司的話,有雄心壯志做一個真正的文庫系統的話,你就自己開發吧,xiwiki不適合您。一個最容易出現的問題是,你的百科產品會有設計根據當今的情況提出一系列設計,但是你的前端工程師會告訴你,xwik實現很多東西成本很高,不合適,甚至和當今很多前端的東西有沖突。簡單的說,就是一個成型的框架(當然xwiki的支持和強大的,但是你還是能感覺到他是有自己規則的)和一個天馬行空的設計的矛盾,矛盾的核心就是開發成本的計算。

二次開發一個開源項目,必須要很好的閱讀開發文檔。而且更多的開發人員還願意獲取demo。這樣對初次接觸一個項目是很用幫助的。

      作為一個開發人員,接手別人的項目,需要理解對方的開發思路和實現過程,一開始都是一個痛苦或者不情願的過程。特別是像二次開發這樣一個開發了這么久的成型的大項目,如果沒有人指導你的話,你的第一反應肯定是,還不如直接寫一個啊^_^ 而且開發文檔全是英文,看多了就覺得不爽。所以我整理一下跟開發相關的一下文檔,並備注一些說明,方便今后開發。以為希望能為其他沒有人指導而進行xwiki開發的其他開發同仁提供我的經驗。

 

說明:

  • 官方查詢首頁

http://main.xwiki.org/xwiki/bin/view/Main/WebHome

(不重要)包含了xwiki特性、下載、展示等內容,頁面我覺得不好看,而且,並不是我們想要的,上面有個搜索,這個跟你xiwki的搜索是一樣的,能能顧檢索到你想要一切內容,但是可能會很亂,你也不知道具體是是那一個結果。關鍵的是,你需要明白你要檢索的內容的准確英文描述,因此我建議你不要將xwiki語言設置為中文,使用英文版本你可以知道你想要東西的英文描述。

  • 查詢首頁

http://extensions.xwiki.org/xwiki/bin/view/Main/WebHome

(不重要)這個頁面在xwiki項目中插入宏livetable你也能實現,可以通過頁面標簽進行查詢,也可以通過關鍵字查詢。這個頁面你可以查詢你想要的內容,方便你的開發。頁面太難看了。

  • xwiki java api(xwiki開發文檔首頁)

http://maven.xwiki.org/site/docs/(所有開發文檔)

http://nexus.xwiki.org/nexus/service/local/repositories/releases/archive/org/xwiki/platform/xwiki-platform-oldcore/5.2.1/xwiki-platform-oldcore-5.2.1-javadoc.jar/!/index.html(最新穩定版api)

(對需要java修改的很重要,對一般開發不重要,重要的幾個api下面會一一描述)

  • 開發人員首頁

http://platform.xwiki.org/xwiki/bin/view/DevGuide/WebHome

這個頁面包含了開發的意思例子和說明。但是,這些例子很簡單,不能滿足真正的開發需求,開發頁面有很多更好的例子和文檔,你可以通過搜索獲得,本頁面提供的內容太少了。

  • 插件開發頁面

http://platform.xwiki.org/xwiki/bin/view/DevGuide/Scripting

插件開發是我們最常使用的,也是xwiki最推崇的開發模式。xwiki想做成后台就用他們的,他們什么都提供好,我們只需要開發插件(但是到底好不好用就不好好說了,要知道用戶可是很挑剔的,而開發人員也不是特別聽話的)。

這個頁面提供的實例是不夠的,但是他下面的幾個api接口卻是很重要的。

doc: http://maven.xwiki.org/site/xwiki-core-parent/xwiki-core/apidocs/com/xpn/xwiki/api/Document.html(在groovy或者velocity等插件里面,直接通過對象名doc獲取,例如可以直接寫$doc.getContent()獲取當前文檔的正文。以下相同)

xcontent: http://maven.xwiki.org/site/xwiki-core-parent/xwiki-core/apidocs/com/xpn/xwiki/api/Context.html

xwiki: http://maven.xwiki.org/site/xwiki-core-parent/xwiki-core/apidocs/com/xpn/xwiki/api/XWiki.html

  services: http://extensions.xwiki.org/xwiki/bin/view/Extension/Script+Module

此外還有一下其他api可以在這里上述頁面找到。

  • 查詢語句書寫

http://extensions.xwiki.org/xwiki/bin/view/Extension/Query+Module(包含hql和xwql語句例子)

http://platform.xwiki.org/xwiki/bin/view/DevGuide/velocityHqlExamples(hql書寫實例,里面有hql文檔鏈接)

xwql和hql是插件開發所支持的2個查詢語言,其中hql你會經常遇到。多看幾個hql查詢例子,你就會明白xwiki的對象封裝,然后就通過xwiki獲取你說想要的任何內容。

  • 數據接口文檔

http://platform.xwiki.org/xwiki/bin/view/Features/XWikiRESTfulAPI

(很重要)這里有幾乎所有的數據的HTTP接口,ajax請求或者form請求可以通過這個文檔找到,這個文檔很重要。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM