そうだったのか、Flex…

いやいや、色々勘違いもあり、Flexに対しての認識を改めました。

いい解説本がないなんていいましたけど、そいつぁおいらの勘違い。色々本もあるみたい。ただし、FlexではなくAS3としての本かな。

とにかく、mxmlはデザイン的なもので、おいらの理解ではCSSに近い。そいつで出来ないような細かいことや複雑なことはAS3に任せる感じです。

この認識も間違いかもしれないけれど、まぁ自分的には納得がいった感じ。

で、改めて勉強と構築をすることにしました。便利そうなのには変わりないしね。ユーザにウケるUIを作るのにFlashベースってのは、なかなかいいし♪

がんばりましょう!

ではでは。

GoodなFlex関連書籍がみつからない

えっと、いろいろ反論はあるにしろ、Flex関連の書籍でいいものがみつからなかったんすよ。

希望としてはFlexBuilderに寄らない、基本のFlexについてのみ書かれた書籍。今のところいいものが見つかっていない。

なので、このブログで、おいらが得た知識を少しずつ公開していこうかと思います。もちろん、いい書籍が見つかれば、それを参考にしておいらなりの見解を見つけていければと思います。

このブログを見ている方(いないとは思いますが…w)で、いい書籍を知っている方がいれば教えてください。

ではでは~

EclipseとAxis2の連携を! その4

さぁ、第4弾。Axis2のアーカイブ、AAR形式を作成して登録します。

まずは、AARファイルの作成。

ws000024

新規作成でその他を選択。

ws000025

Axis2 Service Archiverを選択して次へ。

ws000026

Class File Locationに、実ファイルでクラスファイルが置かれている場所を指定する。画像を参考にして、自分の環境で探ってみてください。

ws000027

Skip WSDLを選択して次へ。もしWSDLを別途作成してあって、それを利用するなら、Select WDSLでそのファイルを選択する。

ws000029

service.xmlは自動生成してもらうにして、次へ。これも自分で用意したものを利用するならば、選択する。

ws000030

さて、ここがおいらのおおはまり場所。クラス名に、作成したクラスを入力して、ロードを押す。この時点でエラーが出る場合は、前の方にあったClass File Locationを設定するところで間違っている可能性が大きい。この画面の状態になれば、ロードが完了しているので、このまま次へ。ちなみに、サービスとして公開したくないメソッドがあれば、メソッド横のチェックを外せばOK。

ws000031

AARファイルを吐き出すところを選択。これはどこでもOK。

ws000032

こう出ればOK。この画面がでたときは泣きそうになりましたw

さぁ、これで作成されたAARを今度は登録しなければいけないっす。

Tomcatにはすでにwar形式のAxis2が登録済みのはず。それにアクセスしてみます。おいらの環境ではTomcatはEclipseから起動できるので、早速起動。ブラウザで「http://localhost:8080/axis2/」にアクセス。

ws000033

そしたら、Administratorをクリック。

ws000034

UsernameとPasswordは特にいじっていなければ、「admin」「axis2」でいけるはず。

ws000036

この画面でUpload Serviceを選択。

ws000037

ここで、さっき作成したAARファイルを選択して、Uploadを押す。

ws000038

こんな風にSuccessfulと出ればOK。

次にAvailable Servicesをクリック。

ws0000391

こんな感じでWS03が表示されていればOK。ちなみに、その下のFaulty Servicesは、アップロードはOKだったけど、サービス登録する際に失敗したものが表示されます。

あと、アップロード直後に見たとしても表示されない場合があるんで、気をつける。これはオートリロードのタイミングによるものだと思うので、焦らず少し待ってから見てみるといいかも。

さて、それでは実際にアクセスしてみます。

ブラウザで「http://localhost:8080/axis2/services/WS03/HelloWorld/test?str=AAA」にアクセスして、Eclipseのテストのときと同じ用に表示されればOK。

ふぅ~やっと終わった。ここまで長かった。これを利用すれば色々なことが、比較的簡単にWebサービスに載せられるな。これらの情報も誰かの役に立ちますように…

ではでは~。

EclipseとAxis2の連携を! その3

では、早速ですが、作ったサービスをテストします。

と、その前にサービスを作らなきゃね。まぁお決まりのHelloWorldで。

以下のように、ソースを作成します。

ws000009

クラスを生成。

ws000010

「com.dosome」というパッケージでHelloWorldクラスを生成。

ws000012

中身はこんな感じ。入力された文字列をそのままオウム返しで返すだけ。実はこれで、サービスの作成は終了です。簡単だなぁw

次に、これらを公開するためのテストを行います。

ws000013

作ったクラスを右クリックして、Webサービスの作成を選択。

ws000014

いままでの設定ができていれば問題はないので、そのまま次へ。

ws000015

色々Webサービス用のコンポーネントをプロジェクトに生成してくれますので、待ちます。

ws000016

新しくservice.xmlを生成するか既存のものを利用するかを聞かれるので、新しく生成するほうを選択します。

ws000017

この時点でTomcatを起動します。サーバを起動を押します。もしエラーがあったら、おそらくサーバ関連の設定ミスなので、見直すこと。

ws000019

サービスの登録云々といわれるが、とりあえず無視して完了を押す。

これで終了。う~ん、こう書いてしまうとものすごく簡単だが、実はここにくるまでにかなり試行錯誤していますですw

それでは、ちゃんと動いているかどうか確かめます。ブラウザで「http://localhost:8080/WS03/」にアクセスします。

ws000020

このような画面が出てくればOK。

そしたら、ためしにServiceと書かれたリンクをクリックします。

ws000021

こんな風に表示されるはず。ここでは、現在提供されているWebサービス一覧が見えます。この中に作った覚えのないVersionっていうサービスがありますが、これはAxis2がデフォルトで自動生成してくれるものらしい。害はないので、とりあえずはそのまま放置。その下にはHelloWorldがあるはす。このリンクをクリックすると

ws000022

こんな感じのWSDLファイルが取得できる。これは、Webサービスを作成したらAxis2の機能で自動的にWSDLを作り出してくれているから、閲覧できるもの。感謝感謝。

そしたら、作ったサービスにアクセスするために、ブラウザで「http://localhost:8080/WS03/services/HelloWorld/test?str=AAA」にアクセスします。

ws000023

この時点で、このような表示がされればOK。

あ~長かったw

これでデバッグしながら、サービスの作成ができますね。

次は出来上がったサービスをAARファイルにして登録するまでを。

ではでは~。

EclipseとAxis2の連携を! その2

さて、次にサービスを実際に作成していく。

だがここで、もう一個準備をしておく。

Axis2は配布形式としてsrcはもちろん、war形式でも配布している。これをTomcatに導入することで、Tomcat上のアプリケーションとして利用でき、aar形式(Axis2で作成したWebサービスプロジェクトのアーカイブファイル)でアップロード配備が可能になっている。

このため、war形式のAxis2をダウンロードして予めTomcatに配備しておく。

ダウンロード先は

http://www.meisei-u.ac.jp/mirror/apache/dist/ws/axis2/1_4_1/axis2-1.4.1-war.zip

ダウンロードしたものを解凍して、Tomcatの中のwebappフォルダに配置しておく。次回Tomcatが起動されたときに、利用される。

さて、本題。EclipseでAxis2のプロジェクトを作っていきます。

まず、動的Webプロジェクトを作成します。

ws000003

ws000004

プロジェクト名は適当に。ここではWS03としています。ターゲットランタイムは新規を選択します。

ws000005

出てきたウィンドウで「Apache Tomcat v5.5」を選択して、次へ。

ws000006

Tomcatインストールディレクトリは、Tomcatを解凍したフォルダを選択。完了を押す。

ws000007

このまま完了を押す。これで、Webサービスのためのプロジェクトが完成。

ちょっと長くなってしまったので、今回はここまで。次のエントリで作成したプロジェクトをテストしてみます。

ではでは。

EclipseとAxis2の連携を! その1

とにかく、はまりました。

なので、その方法を備忘録的に。ちなみに開発環境はWindowsです。JDKは予め1.5を入れておくこと。

まずは、EclipseとTomcat5.5とAxis2のダウンロード。それぞれは、

EclipseはJ2EEバージョンをダウンロードする。これはWebサービスに関するプラグイン関連がすべて入っているので、面倒がない。ここで利用しているのは3.4。

Tomcatは5.5をダウンロードする。

Axis2は1.5が最新版だけど、これだとEclipse用のプラグインが対応していない(できてるのかもしれないけど、サイトにはそうは書いていないので。。。)ため、対応している1.4.1を使う。

おいらの環境で話を進めよう。

まずは、EclipseをDドライブ直下に解凍する。この時点でPleiadesのAll-in-Oneパッケージを入手しているなら日本語化は終了しているはず。そうでなくてもPleiadesパッケージを導入すればいい。このあたりはダウンロードしたPleiadesパッケージのReadmeを参考にすること。

次にTomcatをDドライブの直下に「eclipse workspace」というフォルダを作ってそこに解凍する。

同様にAxis2も「eclipse workspace」に解凍する。

Axis2のプラグインもこの時点でEclipseのPluginフォルダにぶち込んでおく。

さて、Eclipseを起動し、TomcatとAxis2の設定を行う。まずTomcatの設定は、「ウィンドウ」→「設定」→「Tomcat」でバージョンを5.5に、Tomcatホームを「D:eclipse workspaceapache-tomcat-5.5.27」で指定する。JVMやその他はそのままでOKなはず。

ws000000

次にAxis2の設定は、「ウィンドウ」→「設定」→「Webサービス」→「Axis2設定」でAxis2ランタイム・ロケーションに先ほど解凍した場所「D:eclipse workspaceaxis2-1.4.1」を指定する。すると、その下に「Axis2 runtime loaded successfully」とメッセージがでるはずなので、これでOK。

ws000001

次に同じレベルにある「サーバとランタイム」でサーバーに「Tomcat v5.5 Server」を、Webサービス・ランタイムに「Apache Axis2」を設定する。

ws000002

これで設定はすべてOK。

次は実際にWebサービスを作成するわけだけど、これは次のエントリーで書きますです。

とりあえず今日はここまで! ではでは。

WordPress2.8って。。。

使えないorz

アップグレートしたらビジュアルエディタが使えなくなったので、まっさらからインストールしなおしたけど、それでもアウト。。。

結局、2.7.1を入れなおし、エクスポートファイルからインポートしなおしました。。。

あぁ。。。つかれたびぃ。。。

ではでは。

Eclipse&Axis2でWebサービスを!

いやぁ、はまりましたw

事の発端は、新しいネット上のサービスをWebサービス形式で行おうとしたことで、その選定段階までさかのぼります。

まず、費用面や負荷などを考えて、Windowsサーバでの運用は消えました。まぁ引継ぎなどを考えれば楽なんだけど、色々考えたら、引継ぎ云々よりもサービス(軽さ)重視としたほうがいいかと。

で、LinuxをOSとしたときに、レンタルサーバでの運用を考えたらおのずとCentOSかRedHatかFreeBSDかになった。まぁこのあたりはシェアの問題なのかな。Debianがいいんだけどなぁ…。で、RedHatはライセンスの関係上費用がかかるし、FreeBSDは使ったことがほとんどない。そのため、CentOSに絞られる。

ここまでは、いろんな制約によりあっさりと決まった。だが、ここからが問題。

Webサービスとした場合、C#での構築や独自にXMLを書き出すREST形式のみのものなら経験があるが、その他のものは経験なし。で、どのフレームワークが利用しやすいかなと探し出した。

まず、Java。まぁ当然ですな。見つかったのはAxis2。これも当然か。使い方に少しとまどったが、使えるかなぁって感じで。結果的にはこの使い方の部分でおおはまり。これは次のエントリーに書くとするっす。

次にPHP。これはPHP5なので、ライブラリに組み込まれてはいるけれど、安定性に難アリのようだし、PEAR版のSOAPでないとWSDLの自動生成ができないのでなんとなく不便な気がした。

というわけで、Tomcat+Axis2でウェブサービスというのが、やっと固まる。クライアント側はFlexによるFlashで構築するとして、残りはDB。ここはいまだに迷っている。まぁ選択肢は二つで、MySQLかPostgreSQL。どっちでもいいのだけど、どっちのJDBCが枯れてるのかなぁ?

このへんはもう少し悩みます。

ではでは。

FlashDeveloperってすごい!

いやぁ、久しぶりにFlexを触ってみた。

というか、FlexSDKとFlashDeveloperだがね。

最初に触ったFlexはなんかFlashの焼き直しみたいな感じでいまいちだったけど、最近のものはちゃんと進化しているね。よくできてます。

あるサイトの構築のために、FlashでRichなクライアントを作成したいなぁなんて思って、色々市場調査してたら、Flexがやはりというかなんというか、引っかかった。

そこで、Flex関連を洗いなおしていたら、FlashDeveloperっていうIDEにたどりついた。きっかけはOpenLaszlo経由だけど、このIDEはすごいね。FlexBuilderで可能なことは、ほぼできるみたい。(できないことがあることも確認済みだが。。。)

これだけのものがフリーなのは、開発者としてはありがたい。まぁFlexBuilder自身がEclipseのプラグインだったりしていることがなんともおかしな感じなんだけどね。

ともかく、これは使えるってことで、しばらくこれを追っかけたいと思います!

ではでは。

C#でFTP

巷に溢れるいろんな情報をもとに、FTPクライアントをC#で作ってみた。今度考えている新しいサービスに必要になりそうだというのがきっかけ。

う~ん、ちょっとはまった。結局はできたのだけど、癖があったりで、フリーのライブラリを利用することに。

このあたりは、次回以降でアップしていこう。

ではでは。