<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          webSpoonWeb 圖形設(shè)計(jì)器

          聯(lián)合創(chuàng)作 · 2023-09-20 02:54

          webSpoon是一個(gè)基于kettle的web圖形設(shè)計(jì)器,用于Pentaho數(shù)據(jù)集成,外觀和操作與Kettle相同。

          特性

          • 數(shù)據(jù)安全
          • 遠(yuǎn)程使用
          • 易于管理

          如何使用

          請(qǐng)參考 wiki and issues.

          如何配置(可選)

          Carte

          如果 $CATALINA_HOME/system/kettle/slave-server-config.xml 存在,嵌入式CARTE servlet可以相應(yīng)地配置。 參考 here 文件配置格式。 配置xml示例如下:

          <slave_config>
            <max_log_lines>10000</max_log_lines>
            <max_log_timeout_minutes>2880</max_log_timeout_minutes>
            <object_timeout_minutes>240</object_timeout_minutes>
            <repository>
              <name>test</name>
              <username>username</username>
              <password>password</password>
            </repository>
          </slave_config>
          

          注意,只能使用$HOME/.kettle/repositories.xml中定義的存儲(chǔ)庫。

          第三方插件和JDBC驅(qū)動(dòng)程序

          將第三方插件放入$CATALINA_HOME/plugins,將JDBC驅(qū)動(dòng)程序放入$CATALINA_HOME/lib,如下所示:

          $CATALINA_HOME
          ├── system
          ├── plugins
          │   ├── YourPlugin
          │   │   └── YourPlugin.jar
          │   ├── ...
          ├── lib
          │   ├── YourJDBC.jar
          │   ├── ...
          ├── webapps
          │   ├── spoon
          │   ├── ...
          

          禁用UI組件

          Spoon使用XUL(XML用戶界面語言)定義其用戶界面的某些功能(請(qǐng)參見此處了解詳細(xì)信息)。

          <menu id="file" label="${Spoon.Menu.File}" accesskey="alt-f">
            <menuitem id="file-open" label="${Spoon.Menu.File.Open}" />
            <menuitem id="file-save-as" label="${Spoon.Menu.File.SaveAs}" />
          </menu>
          

          為了限制用戶的能力,可能需要禁用一些UI組件。 為此,將disable="true"添加到要禁用的組件中,如下所示。

          <menu id="file" label="${Spoon.Menu.File}" accesskey="alt-f">
            <menuitem id="file-open" label="${Spoon.Menu.File.Open}" />
            <menuitem id="file-save-as" label="${Spoon.Menu.File.SaveAs}" disabled="true" />
          </menu>
          

          沒有disabled屬性的效果與disabled="false"相同。

          如何發(fā)展

          Spoon依賴SWT來實(shí)現(xiàn)UI小部件,這對(duì)于操作系統(tǒng)不可知非常好,但它只作為桌面應(yīng)用程序運(yùn)行。 RAP/RWT為web用戶界面提供了SWT API,因此用RAP/RWT替換SWT允許Spoon作為一個(gè)web應(yīng)用程序運(yùn)行,只需稍作代碼更改。 盡管如此,一些api并沒有實(shí)現(xiàn);因此,需要比聽起來更多的代碼更改。

          設(shè)計(jì)理念

          1. 盡量減少與原來kettle spoon的差異。
          2. 將webSpoon優(yōu)化為web應(yīng)用程序。

          分支和版本控制

          我從webspoon分支開始這個(gè)項(xiàng)目,從6.1.0.5-R到6.1.0.6-R之間的分支6.1分支。 很快我意識(shí)到我應(yīng)該從一個(gè)發(fā)布的版本中分離出來。 所以我決定做兩個(gè)分支:webspoon-6.1和webspoon-7.0,每一個(gè)分支分別被重新定位到6.1.0.1-R和7.0.0.0-R。

          webSpoon使用4位數(shù)字版本控制,規(guī)則如下:

          -第1位數(shù)字始終為0(絕不作為單獨(dú)的軟件發(fā)布)。 -第2位和第3位代表基本水壺版本,例如6.1、7.0。 -最后一個(gè)數(shù)字表示修補(bǔ)程序版本。

          因此,下一個(gè)(預(yù))版本將是0.6.1.4,這意味著它是基于Kettle版本6.1的第4個(gè)補(bǔ)丁。 可能有一個(gè)0.7.0.4版本,它基于Kettle 7.0版本,有(基本上)相同的補(bǔ)丁。

          構(gòu)建和本地發(fā)布依賴庫

          請(qǐng)生成并本地發(fā)布以下依賴庫。

          • pentaho-xul-swt
          • org.eclipse.rap.rwt
          • org.eclipse.rap.jface
          • org.eclipse.rap.fileupload
          • org.eclipse.rap.filedialog
          • org.eclipse.rap.rwt.testfixture
          • pentaho-vfs-browser

          pentaho-xul-swt

          $ git clone -b webspoon-8.3 https://github.com/zhangrenhua/pentaho-commons-xul.git
          $ cd pentaho-commons-xul
          $ mvn clean install -pl swt -Dmaven.test.skip=true
          

          rap

          $ git clone -b webspoon-3.7.0 https://github.com/zhangrenhua/rap.git
          $ cd rap
          $ mvn clean install
          

          pentaho-vfs-browser

          $ git clone -b webspoon-8.3 https://github.com/zhangrenhua/apache-vfs-browser.git
          $ cd apache-vfs-browser
          $ mvn clean install
          

          編譯 webSpoon

          確保上面修補(bǔ)的依賴庫已在本地發(fā)布

          $ git clone -b webspoon-8.3 https://github.com/zhangrenhua/pentaho-kettle.git
          $ cd pentaho-kettle
          $ mvn clean install -Dmaven.test.skip=true
          

          解壓命令:

          cd assemblies/pdi-server/target/
          # 解壓
          tar zxvf pdi-server-8.3.0.0-371.tar.gz
          cd webspoon/
          
          

          啟動(dòng)命令:

          • linux/unix OS:sh start-pentaho.sh
          • Windows OS:start-pentaho.bat

          啟動(dòng)之后瀏覽器訪問:http://localhost:8080/spoon/spoon

          使用Selenium進(jìn)行UI測試

          目前,只有Google Chrome瀏覽器在運(yùn)行UI測試用例時(shí)經(jīng)過了測試。 除非通過參數(shù)-Dheadless.unittest=false,否則測試以無頭模式運(yùn)行。 要在non-headless模式下運(yùn)行測試,Chrome的版本應(yīng)該高于59。

          默認(rèn)訪問地址 http://localhost:8080/spoon. 如果webSpoon部署到不同的url,則傳遞如下參數(shù)。

          以下命令以non-headless模式運(yùn)行所有單元測試用例,包括UI。

          $ cd integration
          $ mvn clean test -Dtest.baseurl=http://localhost:8080/spoon/spoon -Dheadless.unittest=false
          
          

          截圖演示

          瀏覽 91
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美逼网 | 亚色大香蕉 | 久久麻豆成人 | 国产一级操逼视频片 | 精品国产黄色电影 |