ラベル ZK の投稿を表示しています。 すべての投稿を表示
ラベル ZK の投稿を表示しています。 すべての投稿を表示

2007年10月19日金曜日

ZK3.0RC

マイコミ | 試験とソースレビューで性能を4、5倍改善 - ZK 3.0 RC登場

まだRCですがZK3.0の登場ですよー!主にパフォーマンスアップがメイン?のようです。4,5倍てww なんかRubyでも最近そんなパフォーマンスアップがあったような。日本語サイトもありまっす。 とにかく私のマスィンではうんこのよぅに遅かったですから!期待です。ちなみにZKが悪いんじゃなくて、私のマスィンだとどのDHTMLなサイトでも重いんですけれどね。

2007年10月2日火曜日

ZK3.0.0環境構築メモ(Eclipseを使わない)

  1. コマンドプロントを起動して、ZKのProjectを作成するフォルダへ移動して以下を実行。例のごとくgroupId、artifactId、packageName、versionは適当でよい。
    mvn archetype:create -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=com.shin1 -DartifactId=zk01 -DpackageName=com.shin1.zk01 -Dversion=0.0.1
    
  2. 作成されたProjectの直下にある「pom.xml」を編集する。まずは<project>ノードの直下に以下のzkとJetty用のバージョン番号を追加。
    <properties>
    <zk.version>3.0.0-RC</zk.version>
    <jetty.version>6.1.4</jetty.version>
    </properties>
    
  3. <dependencies>ノード直下に以下を追加。最初からjunitへの依存関係が定義されているので、その下あたりに追加すると良い。
    <dependency>
    <groupId>org.zkoss.zkforge.el</groupId>
    <artifactId>zcommons-el</artifactId>
    <version>1.0.0</version>
    </dependency>
    <dependency>
    <groupId>org.zkoss.zk</groupId>
    <artifactId>zul</artifactId>
    <version>${zk.version}</version>
    </dependency>
    <dependency>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>jetty</artifactId>
    <version>${jetty.version}</version>
    <scope>provided</scope>
    </dependency>
    <dependency>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>jetty-util</artifactId>
    <version>${jetty.version}</version>
    <scope>provided</scope>
    </dependency>
    <dependency>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>jetty-management</artifactId>
    <version>${jetty.version}</version>
    <scope>provided</scope>
    </dependency>
    
  4. <build>ノード直下に以下を追加。
    <plugins>
    <plugin>
      <groupId>org.mortbay.jetty</groupId>
      <artifactId>maven-jetty-plugin</artifactId>
    </plugin>
    </plugins>
    
  5. src/main/webapp/index.jspを削除。
  6. src/main/webapp/WEB-INF/web.xmlをZK3.0.0環境構築メモのweb.xmlと同じ内容に編集する。
  7. src/main/webapp/index.zulを作成し。これもZK3.0.0環境構築メモのindex.zulと同じように編集する。
  8. コマンドプロンプトで作成したProjectのディレクトリへ移動して、以下を実行する。
    mvn jetty:run
    
  9. 「[INFO] Started Jetty Server」のメッセージが表示されたら成功!ブラウザで「http://localhost:8080/${artifactId}/」を開いて確認する(${artifactId}はmvn archeType:createで指定したartifactId=pom.xml内の<artifactId>ノードのtext())。

ZK3.0.0環境構築メモ

ZK3.0.0-RCを試したので環境の構築方法メモ。

EclipseでWebAppの環境作成メモで作成したEclipseの環境構築を前提として説明。今回はEclipse上でProjectを作成する方法。
  1. [File][New][Project]で[Maven/Maven Project]を選択してNext。
  2. Project名を入力してNext。
  3. 「Create a Maven2 project」で「src/main/webapps」を追加してNext。zk-eclipse01.png
  4. 「Add Maven2 dependecies to the project」画面で、Add。
  5. 「Repository Search」画面の「Query」に「zul」を入力して少し待つと入力した文字でフィルタされた情報が表示されるので、今回はその中のzulの最新バージョンである3.0.0-RCを選択してOK。zk-eclipse02.png
  6. 「Finish」でProjectを作成。
  7. Package Explorer で作成したProjectのTreeを展開し、「pom.xml」を開く。
  8. <dependencies>には先ほど追加したzulしかないが、ZKの動作にはzcommons-elが必要となるので、下記をzulのした当たりに追加する。
  9. pom.xmlを保存すると、M2Eclipseがzcommons-elをダウンロードしてEclipseの参照ライブラリに追加してくれる。
  10. Package Explorer上で、src/main/webappを右クリックして「WEB-INF」フォルダを作成。
  11. WEB-INFフォルダに「web.xml」を追加して以下のように編集する。
    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>zk02</display-name>
    
    <listener>
          <description>Used to cleanup when a session is destroyed</description>
          <display-name>ZK Session Cleaner</display-name>
          <listener-class>
            org.zkoss.zk.ui.http.HttpSessionListener</listener-class>
    </listener>
    <servlet>
          <description>ZK loader for ZUML pages</description>
          <servlet-name>zkLoader</servlet-name>
          <servlet-class>org.zkoss.zk.ui.http.DHtmlLayoutServlet</servlet-class>
          <init-param>
            <param-name>update-uri</param-name>
            <param-value>/zkau</param-value>
          </init-param>
          <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
          <servlet-name>zkLoader</servlet-name>
          <url-pattern>*.zul</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
          <servlet-name>zkLoader</servlet-name>
          <url-pattern>*.zhtml</url-pattern>
    </servlet-mapping>
    <servlet>
          <description>The asynchronous update engine for ZK</description>
          <servlet-name>auEngine</servlet-name>
          <servlet-class>org.zkoss.zk.au.http.DHtmlUpdateServlet</servlet-class>
    </servlet>
    <servlet-mapping>
          <servlet-name>auEngine</servlet-name>
          <url-pattern>/zkau/*</url-pattern>
    </servlet-mapping>
    
    <welcome-file-list>
          <welcome-file>index.zul</welcome-file>
    </welcome-file-list>
    </web-app>
    
  12. src/main/webapp直下に「index.zul」を作成し、以下のように編集する。このファイルがZKアプリのソース。
    <?xml version="1.0" encoding="utf-8"?>
    <?page title="ZK::Hello World!"?>
    
    <window title="zk02 window." border="normal" width="200px">
    Hello, World!
    </window>
    
  13. Wicket1.3環境構築メモを参考にして作成したProject用のJettyの起動構成を作成する。
  14. ブラウザから「http://localhost:8080/」を開いて、以下のような表示が出ればOKOK!zk-eclipse03.png