Business Consulting Services Ja-Sakai Café 2009年 3月 17日 法政大学 常盤 祐司 [email protected] © Copyright Hosei University 目次 Sakai CLE Ja Sakai における展開 課題 方針 対象 プログラミングガイド 1 1 © Copyright Hosei University Sakai CLE / Architecture Sakai CLEはオープンソースにより構成されている Sakai 2.x Java Server Faces Velocity Java 1.5 Spring Hibernate Apache SSL mod_jk WEBISO Virtual hosting Tomcat 5.5 Oracle 9i/10g MySQL 4.1 HSQL (demo) 2 2 © Copyright Hosei University Ja Sakai における展開 各大学で開発されたツールおよび利用技術が他大学で再利用できる Sakai Tool Sakai Tool Sakai Tool Sakai Tool Sakai Tool Sakai 標準 Sakai 標準 A大学 開発 B大学 開発 C大学 開発 Question & Testing Syllabus Sakai Application Framework (SAF) User, Course Commercial System Integration Adapter Administrative System Integration Adapter Academic information System 利用技術 SAML based Web SSO SaaS Integration 再利用可能なToolおよびAdapter 再利用可能なKnowhow 3 3 © Copyright Hosei University 課題 4 4 © Copyright Hosei University 方針 Sakaiプログラミング101 Sakaiの導入からアプリケーション組み込みまでの一連の操作 を習得する。 環境設定 Sakai導入 Sakai修正 Contrib モジュール追加 アプリケーション開発 デバッグ Step by Stepでその通り操作すれば確実に完了する。 大学における一般的なICT環境を標準とする。 PC Windows Server Linux 5 5 © Copyright Hosei University 対象 プログラム開発体験のある学生、大学院生および社会人。 IDEおよびコマンドベースによる開発体験があれば望ましい。 6 6 © Copyright Hosei University Sakai プログラミングガイド http://bugs.ja-sakai.org/confluence/display/INSTALL/Home A4にて98ページの分量 1. 前提 2. 開発環境概要 3. バージョン管理のセットアップ 4. 開発用PCのセットアップ 5. Sakaiのアプリケーション構造 6. Eclipseを使ったSakaiアプリケーション開発 7. Sakaiアプリケーションのデバッグ 8. 標準Toolのカスタマイズ 9. Contrib Tool組み込み方法 10.CSVファイルからuser、course、member登録のサンプルプログラム作成 11.プログラムを本番環境へリリース 付録-CSVファイルによるuser、course、member登録のプログラム一式 プログラム一覧 入力用CSVファイルレイアウト 参考文献 7 7 © Copyright Hosei University 1. 前提 以下の知識がある方を対象 Sakai CLEのインストール eclipseを使ったjavaのWebアプリケーション開発 8 8 © Copyright Hosei University 2. 環境 本番環境 バージョン管理 Linux Sakai CLE MySQL Linux Subversion checkout commit 開発用PC Windows Sakai CLE MySQL OS: IDE: DB: JVM: Subversion: Maven: Tomcat: DB Tool: 9 Windows XP SP2 Eclipse IDE for Java EE Developers (eclipse 3.4.1) MySQL 5.0.51b Java 1.5.0_16* CollabNet Subversion Command-Line Client v1.5.4 (for Windows) Maven 2.0.9 apache-tomcat-5.5.26 DbVisualizer 6.5.1 *:Java 1.6ではJava APIの違いによりSakaiのコンパイルでエラーとなる。 © Copyright Hosei University 9 3. バージョン管理のセットアップ 1)Subversionのインストール a. バージョン管理サーバ環境 ・Redhat Linux ES4 ・rootで作業を行います。 ・/root/src配下にソースをダウンロードして、展開します。 ・apacheはインストールされているものとします。 b. Subversionの必要ソースをダウンロードします。 [root@host src]# wget http://subversion.tigris.org/downloads/subversion-1.5.5.tar.gz [root@host src]# wget http://subversion.tigris.org/downloads/subversion-deps-1.5.5.tar.gz [root@host src]# wget http://www.webdav.org/neon/neon-0.25.5.tar.gz c. インストールします。 先ずは、neonをインストールします。 [root@host src]# tar zxvf neon-0.25.5.tar.gz [root@host src]# cd neon-0.25.5 [root@host neon-0.25.5]# ./configure [root@host neon-0.25.5]# make [root@host neon-0.25.5]# make install . . . 10 10 © Copyright Hosei University 4. 開発用PCのセットアップ 1) Javaのインストール 2) MySQLのセットアップ 3) Mavenのセットアップ 4) Subversionのセットアップ 5) Tomcatのセットアップ 6) MySQL JDBCドライバのセットアップ 7) Sakai Sourceのダウンロード 8) Sakai.propertiesのセットアップ 9) Sakaiのbuild 10)Tomcat と Sakaiの起動 11)DB Toolのセットアップ 12)Eclipseのセットアップ 11 11 © Copyright Hosei University 5. Sakaiのアプリケーション構造 app-name Tool名 + api – interfacesなどの定義。Tomcatのshared\libに配備。 + src - interfaces のソースなど + impl – api(interfaces)の実装。Tomcatのcomponentsに配備。 + src – 実装のソース + test – ユニットテストコード + pack – Spring定義ファイルなど。implと一緒に、Tomcatのcomponentsに配備。 + tool - ユーザインターフェース。Tomcatのwebappsに配備。 + src - ユーザインターフェースのソースなど + java – javaのソースコード + webapp + app-name – JSF、JSPファイルなど + css + images + templates - RSF html templates + tools + WEB-INF - web.xml, applicationContext.xmlなど 12 12 © Copyright Hosei University 5. Sakaiのアプリケーション構造 フォルダ名 説明 {ap-name}-tool ツール本体。MVCモデルのコントローラ(controller)に相当するJavaクラス、 Viewに相当するVelocityファイル、ツールで使用する言語ファイルなどを配置 {ap-name}-api MVCモデルのモデル(model)に相当するJavaクラス(インターフェース部分) を配置 {ap-name}-impl MVCモデルのビュー(view)に相当するJavaクラス(インターフェースを実装 したJavaクラス)を配置 13 13 © Copyright Hosei University 6. eclipseを使ったSakaiアプリケーション開発 1. Sakai App Builderのインストール EclipseプラグインSakai App Builderを使いアプリケーション開発 Eclipse上で、 Help -> Software Updates -> Available Software -> Add Site Location:http://source.sakaiproject.org/appbuilder/update/ [Sakai AppBuilder Feature]を選択して[Install] 2. Sakaiアプリケーションの作成 a. Sakai AppBuilderを使って、サンプルコード を生成 File -> New -> Project 14 14 © Copyright Hosei University 7. Sakai アプリケーションのデバッグ 1. ロギングによるトレース DEBUGレベルのログ出力設定 %CATALINA_HOME%\sakai\sakai.properties に以下の 5行を追加。 log.config.count=4 log.config.1 = ALL.org.sakaiproject.log.impl log.config.2 = OFF.org.sakaiproject log.config.3 = INFO.org.sakaiproject.db.impl log.config.4 = DEBUG.org.sakaiproject.mytool.logic.MytoolLogicImp Tomcatを再起動して、ログを確認します。 2. eclipseでデバッグ TomcatのJava Platform Debugger Architecture (JPDA)を 有効にすることで、eclipseから遠隔デバッグができるようにな ります。 15 15 © Copyright Hosei University 8. 標準ツールのカスタマイズ タスク: Profile Toolsに項目をひとつ追加する。 1) 標準Tool修正ガイドについて 2) Profile Tool画面への項目追加概要 3) Profile Tool画面JSPファイルへの項目追加 4) 画面表示用メッセージファイルの項目追加 5) Profileを定義するクラスの項目追加 6) HibernateのO/Rマッピング設定ファイルの項目追加 7) コンパイルとデプロイ 8) アプリケーションの動作確認 9) 参考情報 16 16 © Copyright Hosei University 9. Contrib Tool組み込み方法 タスク: Sakai Contrib Toolsの1つである「JForum」をSakaiに組み込む 1)JForumの入手 2)JForumのセットアップ 17 17 © Copyright Hosei University 10. CSVファイルによる環境(user, course, member)設定 タスク: 用意したCSVファイルから各種登録を行う。 1) CSVインポートプロジェクトの作成 2) プログラム構造 3) ユーザ登録・更新の実装 4) ユーザ削除の実装 5) コースサイト登録・更新の実装 6) コースサイト削除の実装 7) サイトメンバー登録の実装 8) サイトメンバー削除の実装 18 18 © Copyright Hosei University 11. 本番環境へのリリース タスク: 開発環境から本番環境へのリリース 1) 開発用PCのソースをバージョン管理サーバへ転送 2) バージョン管理サーバから本番環境へソースを転送 3) 本番環境でコンパイル 本番環境 バージョン管理 Linux Sakai CLE MySQL Linux Subversion checkout commit 開発用PC Windows Sakai CLE MySQL 19 19 © Copyright Hosei University 参考文献 [1] http://bugs.sakaiproject.org/confluence/display/DOC/Install+Guide+-+Source… Sakai 2.5 Source Install Guide:Sakai2.5のSourceから動作環境を作成する手順書 [2]http://bugs.sakaiproject.org/confluence/display/BOOT/Development+Environ… Development Environment Setup Walkthrough:Sakaiの開発環境作成手順 [3] http://java.sun.com/javase/downloads/index_jdk5.jsp Java SE Downloads - Previous Release - J2SE 5.0:J2SEのダウンロードサイト [4] http://dev.mysql.com/downloads/ MySQL Downloads:MySQLダウンロードサイト [5] http://maven.apache.org/ Apache Maven Project:SakaiのSourceをコンパイルする際に利用するプロジェクト管理ツール [6] http://subversion.tigris.org/ Subversion(バージョン管理ツール)のダウンロードサイト [7] http://tomcat.apache.org/download-55.cgi Apache Tomcat:Apache Tomcat5.5のダウンロードサイト [8] http://www.mysql.com/products/connector/j/ MySQL Connector/J:MySQLのJDBCドライバ [9] http://www.minq.se/products/dbvis/download/install.jsp Download DbVisualizer:データベースのGUIツールダウンロードサイト [10] http://www.eclipse.org/downloads/ Eclipse Downloads:eclipse(統合開発ツール)のダウンロードサイト [11] http://bugs.sakaiproject.org/confluence/display/BOOT/Sakai+application+… Sakai application (tool) structure:Sakaiのアプリケーション構造 20 ….. 20 © Copyright Hosei University
© Copyright 2025 ExpyDoc