SAStruts(Super Agile Struts)あれこれ

ATOMRSS

S2BlazeDS用のプロジェクト作成しましょう

目次

  1. Eclipseプロジェクト作成
  2. Flexプロジェクト特性の追加
  3. チュートリアルプロジェクトにHSQLDBのjarファイルを追加
  4. S2JDBCの設定ファイル編集
  5. サービスやEntityクラスなどの自動生成



1.Eclipseプロジェクト作成

DoltengプラグインでEclipseプロジェクト"s2blazeds-sample"を作成します。本稿では、簡単にするためFlexクライアントモジュールとJavaサーバーサイドモジュールを1つのプロジェクトにしてしまいます。 それでは、設定項目を以下のようにして作成しましょう。

s2blaze_proj_1.jpg
プレゼンテーションに「S2BlazeDS(ServerOnly)」を選択しています。これにより。"${DOCUMENTS}src\main\webapp\WEB-INF\flex"フォルダに以下のBlazeDS用設定ファイルが配置され、また、必要なライブラリも自動的に配置されます(Doltengってすごい便利ですね)。
services-config.xml
messaging-config.xml
proxy-config.xml
remoting-config.xml
RemoteObjectを使用するだけなら、編集不要です(のはず)。また、web.xmlへのBlazeDS用の設定も行われています。設定内容については、S2BlazeDSマニュアルの設定ファイルリファレンスを参照下さい。

Flexナビゲーターで「s2blazeds-sample」を選択し、右クリックします。[Tomcatプロジェクト]→[コンテキスト定義を更新]をクリックし、「操作が成功しました」と表示されたら成功です。

2.Flexプロジェクト特性の追加

Flexナビゲーターで「s2blazeds-sample」を選択し、右クリックします。[Flexプロジェクト特性]→[Flexプロジェクト特性を追加]をクリックします。

s2blaze_proj_2.jpg

アプリケーションサーバーの種類は「J2EE」を選択します。 s2blaze_proj_3.jpg

BlazeDSサーバーサイトの設定を行います。
ルートフォルダ${DOCUMENTS}\s2blazeds-sample\src\main\webapp
ルートURLhttp://localhost:8400/s2blazeds-sample
コンテキストルートs2blazeds-sample
出力フォルダbin-debug
s2blaze_proj_4.jpg
※「出力フォルダはサーバールートのサブフォルダではありません。」と警告が出ますが、気にしなくてOKです。

すると、Flex Builder3の「問題」ビューに「HTMLラッパーを作成できません~~」というようなエラーが表示されているので、以下のようにメッセージを右クリックして「HTMLテンプレートの再作成」をクリックします。"s2blazeds-sample\html-template\"が生成されればOKです。

s2blaze_proj_5.jpg

あと、Flexソースの置き場が"s2blazeds-sample\src"になるのですが、これではサーバ側のソースと混在してしまうので、変更します。とりあえず、"s2blazeds-sample\flexsrc"フォルダを作成しましょう。そして、"s2blazeds-sample\flexsrc\main.mxml"ファイルを"s2blazeds-sample\flexsrc"に移動します。

Flexナビゲーターで「s2blazeds-sample」を選択し、右クリックします。[プロパティ]を選択してプロパティウインドウを開き、[Flex ビルドパス]を選択し。「メインソースフォルダ」を"src"→"flexsrc"に変更し、また、「出力フォルダ」を"bin-debug"→"src\main\webapp\flex"に変更します。

s2blaze_proj_6.jpg

3.チュートリアルプロジェクトにHSQLDBのjarファイルを追加

ダウンロードしたhsqldb.jarを、"s2blazeds-sample\src\main\webapp\WEB-INF\lib"フォルダーにコピーしましょう。そして、チュートリアルプロジェクトのプロパティから、hsqldb.jarを追加しましょう。

s2blaze_proj_7.jpg

s2blaze_proj_8.jpg

s2blaze_proj_9.jpg


この辺の操作は、MySQLからDoltengでEntityを自動生成しましょうの「2.MySQL Connector/J (JDBCドライバ)を配置」が参考になると思います。

4.S2JDBCの設定ファイル編集

★"s2blazeds-sample\src\main\resources\jdbc.dicon"を以下のように変更します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
    "http://www.seasar.org/dtd/components21.dtd">
<components namespace="jdbc">
    <include path="jta.dicon"/>
  
    <!-- for HSQLDB -->
  
    <component name="xaDataSource"
        class="org.seasar.extension.dbcp.impl.XADataSourceImpl">
        <property name="driverClassName">
            "org.hsqldb.jdbcDriver"
        </property>
        <property name="URL">
            "jdbc:hsqldb:file:c:/hsqldb/tutorial"
        </property>
        <property name="user">"sa"</property>
        <property name="password">""</property>
    </component>
  
    <component name="connectionPool"
        class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl">
        <property name="timeout">600</property>
        <property name="maxPoolSize">10</property>
        <property name="allowLocalTx">true</property>
        <destroyMethod name="close"/>
    </component>
  
    <component name="DataSource"
        class="org.seasar.extension.dbcp.impl.DataSourceImpl"
    />
  
</components>


★"s2blazeds-sample\src\main\resources\s2jdbc.dicon"を以下のように変更します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
	"http://www.seasar.org/dtd/components24.dtd">
<components>
	<include path="jdbc.dicon"/>
	<include path="s2jdbc-internal.dicon"/>
	<component name="jdbcManager" class="org.seasar.extension.jdbc.manager.JdbcManagerImpl">
		<property name="maxRows">0</property>
		<property name="fetchSize">0</property>
		<property name="queryTimeout">0</property>
		<property name="dialect">hsqlDialect</property>
	</component>
</components>


5.サービスやEntityクラスなどの自動生成

データベースアクセスを行うためのクラスは、S2JDBC-Genを使用して自動生成します。"gen-entity"をターゲットとして実行すると、以下のファイルが生成されます。実行の方法は、MySQLからS2JDBC-Genで各種クラスを自動生成しましょう(Eclipse編)の「4.S2JDBC-Gen実行」を参考にして下さい。
s2blazeds-sample\src\main\java\samples\entity\Address.java
s2blazeds-sample\src\main\java\samples\entity\Department.java
s2blazeds-sample\src\main\java\samples\entity\Employee.java
s2blazeds-sample\src\test\java\samples\entity\AddressTest.java
s2blazeds-sample\src\test\java\samples\entity\DepartmentTest.java
s2blazeds-sample\src\test\java\samples\entity\EmployeeTest.java
s2blazeds-sample\src\main\java\samples\condition\AddressCondition.java
s2blazeds-sample\src\main\java\samples\condition\DepartmentCondition.java
s2blazeds-sample\src\main\java\samples\condition\EmployeeCondition.java
s2blazeds-sample\src\main\java\samples\entity\AddressNames.java
s2blazeds-sample\src\main\java\samples\entity\DepartmentNames.java
s2blazeds-sample\src\main\java\samples\entity\EmployeeNames.java
s2blazeds-sample\src\main\java\samples\service\AbstractService.java
s2blazeds-sample\src\main\java\samples\service\AddressService.java
s2blazeds-sample\src\main\java\samples\service\DepartmentService.java
s2blazeds-sample\src\main\java\samples\service\EmployeeService.java


※このようなエラーの出る場合は、Refreshの説明どおりにResourceSynchronizerをインストールして下さい。
  [refresh] refresh task failed. cause=java.net.ConnectException: Connection refused: connect
BUILD SUCCESSFUL
Total time: 10 seconds




おまけ







アップロードしたファイル

プレゼン公開・共有サイト handsOut.jp チーム・マイナス6% - みんなで止めよう温暖化

基本情報

ソースコードID:
597
登録者:
台北猫々
登録日時:
2008/07/30 13:42
最終更新日時:
2009/05/08 22:46
登録ページ数:
106
アクセス数:
83984
タグ:
java mysql json ajax hello sastruts ページング サンプル フレームワーク データベース トークンチェック テンプレート flex validwhen s2jdbc dolteng jaxb リセット s2jdbc-gen 自動生成 一括登録 super agile struts ria tiles 一括更新 jsonic エンティティ
編集権限:
ログインユーザ全員
ブックマーク:
  • codeなにがしブックマークに追加する 0 users
  • このページをはてなブックマークに追加
  • このページを del.icio.us に追加

GoodJob

  • GoodJob
  • 1668

GJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJGJ

GJGJGJGJGJGJGJGJ

編集者一覧

  • 台北猫々

GoodJobしたユーザ

  • ikdk
  • NAT
  • mikeda
  • うさうさ
  • こてつ
  • greennoah
  • とむよん
  • icofit
  • teshimasa4
  • tamr
  • T[]HAL

ブックマークコメント