ももらぼっ!にっき


2006年04月17日 [長年日記]

_ [W-ZERO3] Kzou’s Diary (^^ゞ - SendNowをW-ZERO3 UtilityPlusに設定してみた。

モバイルなブログのえらい人、KzouさんにSendNowの使い方を解説していただいちゃいました。

私の説明だと、

キー割り当てソフト(W-ZERO3 Utility Plus, PQz等)を使って、ソフトキー1に割り当てを行って使用することを想定しています。 W-ZERO3 Utility Plusを使っている場合は、プリセット機能と組み合わせるとよいかと思います。その場合、「アプリの割り当て」では「\Windows\tmail.exe」を選択してください。

としか説明していない部分を、ハードコピーとかを駆使して詳細に解説してもらっています。 SendNowを使用している方は一度参考にしていただくとよいかもしれません。

_ [Java][Eclipse][Seasar][Maven] Eclipse + Maven2 + WTPでSeasar2を使ったWebアプリを開発するまで。

Seasar2で開発を始めるまでの道のりを以下にメモしておく。

インストール

まずはインストール。今回は以下の組み合わせで環境を構築している。

  • JDK1.5.0_06
  • Eclipse 3.1.1
  • Maven 2.0.2
  • WTP 1.0.1.v200602130105
  • Tomcat 5.5.16

インストールが無事完了したら、実際のプロジェクトを作成する前にいくつか準備が必要だ。

EclipseでMaven2を使用するには、「M2_REPO」というクラスパス変数の指定が必要となる。 その為、

>mvn eclipse:add-maven-repo -Declipse.workspace="ワークスペースへのフルパス"

としてクラスパス変数の追加をしてあげよう。

次にEclipseのプロジェクトに「Servers」を追加する。

Eclipseを起動し、「ファイル」メニュー→「新規...」→「その他...」と選択し、 「Server - Server」のウィザードを選択しよう。 すると、サーバを選択するダイアログが出るので、「Tomcat v5.5 Server」を選択する。 次の画面ではまだプロジェクトを選択していないのでそのまま「終了」でかまわない。

これで、プロジェクトを作る準備ができた。

プロジェクトの作成。

まずはmavenで新しいプロジェクトを作る。 今回の例では、パッケージ名を「pkg.test」、プロジェクト名を「test」とでもしておこう。

C:\>mvn archetype:create
  -DgroupId=pkg.test
  -DartifactId=test
  -DarchetypeArtifactId=maven-archetype-webapp

プロンプト上では一行で書く必要があるので注意しよう。 これで、C:\testフォルダが作成された。

次にMaven2の管理ファイルであるpom.xmlを変更し、Seasar2を使えるようにしよう。 詳細はSeasarのWikiを 見るとよいが、こんな風に修正すればまずはOKだ。

C:\>cd test
C:\test>diff -u pom.xml.orig pom.xml
--- pom.xml.orig        Mon Apr 17 14:28:48 2006
+++ pom.xml     Mon Apr 17 14:59:14 2006
@@ -7,7 +7,19 @@
   <version>1.0-SNAPSHOT</version>
   <name>Maven Webapp Archetype</name>
   <url>http://maven.apache.org</url>
+  <repositories>
+    <repository>
+      <id>maven.seasar.org</id>
+      <name>The Seasar Foundation Maven2 Repository</name>
+      <url>http://maven.seasar.org/maven2</url>
+    </repository>
+  </repositories>
   <dependencies>
+    <dependency>
+      <groupId>org.seasar.container</groupId>
+      <artifactId>s2-extension</artifactId>
+      <version>2.3.7</version>
+    </dependency>
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>

次に、Eclipseが使う.classpath等を生成する。

C:\test>mvn eclipse:eclipse -Dwtpversion=1.0

「-Dwtpversion=1.0」はWTPなプロジェクトとしてのファイルを生成するために必要だ。 一度このオプションをつけて実行しておけばよいみたい。 以後、pom.xmlを修正した後は

C:\test>mvn eclipse:eclipse

とするだけでとりあえず問題がなかった。

(追記 2006/04/18) 問題大ありだった。 「-Dwtpversion=1.0」をつけないと、WTPを使ってTomcatを起動したときに作成されるクラスパスにjarが追加されなくなってしまっていた。 ちゃんといつも「-Dwtpversion=1.0」をつけよう。

設定は以上だ。 作成したプロジェクトをEclipseにインポートし、「Run on Server」を実行してみよう。 無事「Hello World!」が表示されれば成功だ。

後はこのプロジェクトを修正していけばよい。

_ [W-ZERO3] えきから時刻表の直接入力フォーム。

カテゴリがおかしい気がするけど、とりあえずW-ZERO3用として作ったので。

mobachikiさんの所で、

こうして使ってみると例えば路線検索や、乗り換え案内、地図検索などの機能が欲しいですね。

それも、オンラインに接続してからあれこれするのではなくて、オフラインで入力まで済ませてしまってから検索、と出来るような機能が欲しいです。

とのことだったので、私が普段使っているトップページのHTMLを晒してみています。 このファイルをW-ZERO3に保存して、ローカルファイルとして開いています。

これに追加して使う「えきから時刻表」の直接入力フォームができたのでこっちで公開してみます。 *1

こいつを使うと、JavaScriptが有効ならいきなり検索結果画面へ行き、JavaScriptが無効なら一度入力フォームが表示されます。 候補の駅が複数ある場合も、一度入力フォームが表示されます。

以下、HTMLのソースの断片です。 適当な名前で保存して使用してください。

<form action="http://ekikara.jp/cgi-bin/route/route.cgi" onsubmit="
  function addZero(i) {
    if (i < 10) {
      return '0' + i;
    } else {
      return '' + i;
    }
  }
  function getYear(date) {
    var year = date.getYear();
    if (year < 1900) year += 1900;
    return '' + year;
  }

  var date = new Date();
  this.month.value = getYear(date) + addZero(date.getMonth() + 1);
  this.day.value = addZero(date.getDate());
  this.hour.value = addZero(date.getHours());
  var minute = addZero(date.getMinutes());
  this.min1.value = minute.substr(1, 1);
  this.min2.value = minute.substr(0, 1);
  this.check.value = 'off';
">
<a href="http://ekikara.jp/">えきから時刻表</a><br>
<input type="radio" name="way" value="" id="jorudan_way_now"><label for="jorudan_way_now">今</label>
<input type="radio" name="way" value="first" id="jorudan_way_first"><label for="jorudan_way_first">始発</label>
<input type="radio" name="way" value="last" checked id="jorudan_way_last"><label for="jorudan_way_last">終電</label><br>
<input type="text" size="24" name="intext">〜<input type="text" size="24" name="outtext">
<input type="submit" value=" 検索 ">
<input type="hidden" name="check" value="">
<input type="hidden" name="month" value="">
<input type="hidden" name="day" value="">
<input type="hidden" name="hour" value="">
<input type="hidden" name="min1" value="">
<input type="hidden" name="min2" value="">
<input type="hidden" name="arrive" value="">
<input type="hidden" name="airplane" value="1">
<input type="hidden" name="sprexprs" value="1">
<input type="hidden" name="utrexprs" value="1">
<input type="hidden" name="sort" value="time">
<input type="hidden" name="max" value="5">
<input type="hidden" name="half" value="1">
<input type="hidden" name="cut" value="1">
<input type="hidden" name="direct" value="1">
</form>

*1  ここでHTMLとして公開しているのはトップページへのリンクしか許可してくれていないから。

_ [WM5][W-ZERO3] SandR Ver.1.20 リリース。

mobachikiさんとこ

受信トレイを一発送受信するアプリを作ってよ

との一言があったので、PDXメール以外も送受信できるようにしてみました。 ただし、WM5で追加されたAPIを使っているので、WM5以上限定です。

しかも、今までのSandRと比べて以下の点が違っちゃってます。

  • メールソフトが起動し表示されちゃいます。
  • afterオプションとnoreadオプションは無視されます。
  • 接続を行った後に自動切断を行いません。

接続が終了するまで待機する方法がわかれば何とかなるんですがね。 もーちょっと試行錯誤はしてみます…。 ですので、同様の実装をSendNowにもいれようと思ったんですが、 もうちょっと作りが落ち着くまではSandRのみを更新させてもらいますm(_ _)m

一応修正履歴を以下に。

  • accountオプションを追加。 他のアカウントのメールも一応送受信可能になった。

_ [W-ZERO3] 非公式モバイルmixiに直接接続する。

えきから時刻表に続く第二弾は、非公式モバイルmixiへの接続です。

<form method="post" action="http://mixi.10u.org/mobilemixi.cgi" onsubmit="
  var urlList = [
    'http://umm.pv.to/',
    'http://mmixi.puchii.org/',
    'http://mm.8px.org/'
  ];
  var date = new Date();
  var i = date.getTime() % urlList.length;
  this.action = urlList[i] + 'mobilemixi.cgi';
">
<a href="http://mixi.10u.org/">非公式モバイルmixi</a>
<input type="hidden" name="debug" value="on">
<input type="hidden" name="email" value="メールアドレス">
<input type="hidden" name="password" value="パスワード">
<input type="submit" value=" Login ">
</form>

今、本家は停止中なので、3つあるリダイレクト先へ、ランダム(ってわけじゃないけど)で接続しに行きます。 urlListを変えれば、他の非公式モバイルmixiなサイトへも接続するようになるはずです。

「メールアドレス」のところにmixiにログインする際のメールアドレスを、 「パスワード」のところにmixiにログインする際のパスワードを入力して使用してください。

あ、このHTMLはJavaScriptをオフにしていると直接接続しません。 JavaScriptをオフにして使用する方は、actionを適当に書き換えてくださいませ。

本日のツッコミ(全7件) [ツッコミを入れる]
_ kzou (2006年04月17日 18:30)

決してえらくはありませんが(^^ゞ<br>SendNowは大変便利に利用させていただいております<(__)>

_ u-sk (2006年04月17日 23:07)

mobachikiさんトコロで見かけて拝借しに参りました<<htmファイル。自分でもカスタマイズして楽しんでみますー(勝手に言いたいこと言ってやりたいコトして去っていく人でスミマセン

_ ももたろ (2006年04月17日 23:40)

kzouさん><br>いやいやいや。<br>利用していただける方々がいるおかげで、ウチのようなサイトが成り立っていますので。<br><br>u-skさん><br>「このサイトの検索をしたい!」とかがあれば教えていただければ対応できるかもしれません。<br>ただのHTMLでも、いろいろいじってみると面白いですよー。<br><br>ふと、リンク用HTMLを生成するツールとかあると良いかもって思ったんだけど、<br>やること多すぎなので思うだけにしておきます(汗)

_ (2006年04月18日 09:49)

えきからの方は閉じformタグがないみたいです。

_ ももたろ (2006年04月18日 09:53)

あさん><br>コピペ漏れでした。追記しておきました。<br>ご指摘ありがとうございましたm(_ _)m

_ mobachiki (2006年04月18日 22:19)

とりあえずtreo700wでも動いています<sandr<br>ありがとうございます。

_ invorsoricy (2014年06月16日 17:01)

<b></b> <br> <b></b> <br> <b></b> <br> <b></b> <br> <b></b>