2011年9月19日月曜日

もう一度だけscala

書いてたのが全部消えた。

もう一度頑張る。

【環境】
言語 : scala
flamework : lift
DBサバ : Mysql
webサバ : apache


IBMのぺーじなら、デプロイ方法まで書いてあるから、頑張れそうな気がした。

① liftアプリケーションの作成
$ mvn archetype:generate -U -DarchetypeGroupId=net.liftweb
-DarchetypeArtifactId=lift-archetype-basic -DarchetypeVersion=0.8
-DremoteRepositories=http://scala-tools.org/repo-releases
-DgroupId=org.developerworks.lift -DartifactId=quepasa

② ページを追加する
1, /src/main/webapp/update.html を追加する。
2, /src/main/scala/bootstrap/liftweb/Boot.scala に追加。
※ :: 表記を使ってリスト・リテラル

③ アプリケーションのテスト
$ mvn jetty:run -U
http://192.168.11.3:8080/update に接続

④ スニペットを追加する。
1, /src/main/webapp/update.html を修正する。
2, /src/main/scala/~/snippet/Update.scala を追加。
3, 再コンパイルする。
$ mvn compile

⑤ モデルを追加する。
1, /src/main/scala/~/model/Message.scala を作成
2, /src/main/scala/~/snippet/Update.scala を修正
3, /src/main/scala/bootstrap/liftweb/Boot.scala に追加。

⑥ Geronimoにデプロイする。
1, Geronimoインストール
geronimoのぺーじのGeronimo 2.2.1 with Jetty 7 (tar.gz)をダウンロード・解凍

$ sudo wget http://ftp.jaist.ac.jp/pub/apache//geronimo/2.2.1/geronimo-jetty7-javaee5-2.2.1-bin.tar.gz
$ tar -xvzf geronimo-jetty7-javaee5-2.2.1-bin.tar.gz

bashrcに以下を記述。
export GERONIMO_HOME=/usr/local/geronimo-jetty7-javaee5-2.2.1
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin

/usr/local/geronimo/bin/で、geronimo起動コマンドを実行
$ sudo java -jar server.jar

※ 途中でこんなのでて失敗した。
The service ServiceModule=org.apache.geronimo.configs/jetty7/2.2.1/car,j2eeType=GBean,name=JettyAJP13Connector did not start because Address already in use

ポートが競合してる的なやつかと思い。
/usr/local/geronimo/var/config/config.xmlの
JettyWebConnector, JettyAJP13Connectorの、
redirectPortを8080にした。

そしたら今度は・・・。
2011-09-19 12:16:19,770 ERROR [GBeanInstanceState] Error while starting; GBean is now in the FAILED state: abstractName="org.apache.geronimo.configs/j2ee-corba-yoko/2.2.1/car?ServiceModule=org.apache.geronimo.configs/j2ee-corba-yoko/2.2.1/car,j2eeType=CORBANameService,name=NameServer"
org.apache.geronimo.gbean.InvalidConfigurationException: CORBA usage requires Yoko CORBA spec classes in java.endorsed.dirs classpath

何のこっちゃ。

2, Jettyだけ入れようかな・・。
JETTYを入れる。
jettyだけ入れてデプロイする方法もあるし。

やってみたけど、スクリプトからデーモン起動するとドキュメントルートが別のところになってしまう問題未解決。


3, warファイルの作り方
$ mvn clean install
$ mvn package
これで、targetデレクトリ内にwarファイルが出来る。

4, デプロイ
jettyのドキュメントルートにwarファイルをコピーする。

5, 確認
それっぽい画面は出てきたが、sitemapが出てこない~。

その後、mvn jetty:runのホーム(http://192.158.11.3:8080)に
jettyのサンプルが出るようになった。はぁ・・・。
(/usr/java/default)


問題点は、
1,jettyのデーモン起動
2,liftのデプロイ方法(sitemapが出ない原因は?)
3,なぜ、mvn jetty:runで、/usr/java/default/が出るのか?
4,liftでMysqlを使う方法は?

まだまだ、先は長い。。

0 件のコメント:

コメントを投稿