Ofbiz學習經驗談

來源:互聯網
上載者:User

不可否認,OFBiz這個開源的系統功能是非常強大的,涉及到的東西太多了,其實對我們現在而言,最有用的只有這麼幾個:實體引擎、服務引擎、WebTools、使用者權限管理。

最先要提醒各位的是,在配置一個OFBiz時,路徑中千萬不要包含空格,要不然老提示出錯,無外乎是scoket write error之類的資訊,會讓你鬱悶得不停^_^

 使用者登入鑒權這一塊我們完全可以照搬OFBiz現有的東西,其實也就是調用包org.ofbiz.securityext.login.LoginEvents裡面的一些方法來進行處理。

Component定義:component-load.xml,可根據需要調整需在啟動時引入的Component,比如增加一個Study,定義:

<load-component component-location="${ofbiz.home}/components/study"/> 

首先需要進行如下幾個項目的總體配置:

1、  entityengine.xml:實體引擎配置,主要是配置該資料的方式,如通過oracle訪問,就配置一下localoracle,特別需要注意的是,在dataSource中配置中,一定要配置一個屬性 - schema-name="OFBIZ",這個主要是為了在OFBiz啟動時能夠正常同資料庫的對象進行匹配,如果沒有進行配置,每次都會試圖重建立立對象,會報對象名已經被佔用的情況。

2、  serviceengine.xml:服務引擎配置,這個基本上不用作太大的修改,如要必要,可在這裡邊進行一些參數的調優,比如訪問線程數配置等。

 之後需要在components目錄下建立一個目錄study,目錄裡面的一些檔案可直接從模板中拷貝,之後再進行必要的修改,涉及修改內容:
1、  entitygroup.xml & entitymodel 實體定義(3.0版本開始,各實體定義可在各自的Component下定義,而不必統一集中在commonapp下);定義實體及實體的相關屬性(其實也就是相當於資料庫的各種對象,需要注意的是,後續進行資料提取時,如果需要關聯到多張表,也需要在這裡面定義一個view-entity);

2、  services.xml:如果必要的話,可以這裡邊定義一些服務;

3、  data:一些初始配置資料,應該是相對固定,不經常變動的才放在這邊,可通過Webtool工具匯入到資料庫中;

4、  src:如改動了一些Java源檔案內容後,需要重新編譯該目錄的檔案,可通過UltraEdit的工具配置來進行ant編譯,非常方便,推薦使用,編譯後的檔案將產生到build目錄下,產生的檔案有各個class檔案,也有一些.jar包(放在lib目錄下),這些jar包是我們在Web應用中需要引用到的,當然,引用哪些包也是可配置的,下面會講到;

5、  ofbiz-component.xml:主要的設定檔,需要注意的一些東西:

 (1)<classpath type="jar" location="build/lib/*"/> 這是jar引用路徑,我在考慮是否可改成直接引用class檔案,也就是直接設定class檔案所在的目錄;

  (2)title="Study" 這個就是我們通過appbar.ftl檔案在主介面顯示的那一排按鈕上顯示的內容,可根據需要調整,調整完要重啟OFBiz,麻煩,可以考慮通過hot-deploy目錄進行發布。

   至於其他一些配置,很簡單,看看就曉得。

 下面講一下Web應用配置,Web應用配置中涉及到的最重要的兩個檔案是:controller.xml和regions.xml,controller.xml檔案主要是配置request-map,也就是請求映射關係,所有的請求映射都需要在這裡邊進行配置,也就是我們在Web頁面上常看到的/login等,如果涉及到view-map類型是region,就需要從region.xml檔案中去讀取配置,其實也就是配置各個region引用的處理頁面(可以是各種開發語言,比如Jsp、ftl等等)。另外,在region.xml設定檔中最重要的一部分就是MAIN_REGION的配置,就是整個網頁布局的配置,包括header、appbar、error、content、footer等等,其中appbar就是我們在前面剛剛提到的主介面上那一排按鈕的配置了,header、footer和error太簡單,不說了,我們主要要修改的東西都是在content這一塊上進行展現。
    網頁中用到的一些樣式、公用的定義都是在main_template.jsp中寫入的,也需要在MAIN_REGION的屬性中配置引用的檔案。樣式定義檔案是引用images這個component,所以這個也是關鍵,不能缺的。

    最後,講一講我對資料庫訪問的一些簡單的瞭解:對資料庫的訪問主要是通過GenericDelegator進行控制,包括一些常用的方法,如findAll、remove、store、create等等,具體的用法要去研究一下,其實也不算複雜,先建立一個GenericDelegator,如果是create、store就可以通過makeValue方法將一些欄位的值設定到GenericValue,之後再進行store或是create,具體文法要去參考一些文檔,還沒去看這一塊的東西。

    最最需要訪問的一些文檔:OFBizChina 實體引擎配置指南、OFBizChina 區塊(Region)指南、OFBizChina 服務引擎配置指南、OFBizChina JSP標籤庫指南,當然,研究OFBiz的前提是要首先要理解MVC模式的概念,也就是View-Model-Control,否則一切都是空談。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.