≒ Javaサーバサイドスクリプトの勉強

ようやく開始。なぜなら実行環境の構築にえらく手間取ったからw

エクリプスで書いてエクリプスの上のTomcatで実行してみたり、windows にTomcat導入してlocalhostで実行してみたりしてみたんだけど、やっぱりウェブアプリは実際の環境で動かしてみないとなんかピンと来ない。

なのでこのドメイン(beingtested.jp)を置いてるサクラのレン鯖に作れないかなと思ったんだけど(今考えると当然無理w)、借りてる鯖の仕様でだめ。そんでTomcat導入できる鯖をいろいろ当たってみたんだけど、別にもう一つ借りて一からドメイン取ったり環境整えたりすること考えたら、比較的時間に余裕がある今、一から自宅サーバ立ててみようと思ったのです。ちなみにレン鯖でTomcat走らせるなら、今のところサクラのVPSがベストのようです。外鯖なら無料なとこもあるみたいですけどね。

参考にしたサイトはむちゃくちゃあるのでいちいちここには上げません。各サイト説明が微妙に違うので(やり方が違うので当然です)、あっちみたりこっちみたりしながら何とか立ち上げました。

beingtested.dip.jp

余ってるノートPCにcentos導入して費用ゼロで立てたので、どこまで保つか不明w まだ今のところコンテンツも何もないです。ただ開通記念にこのエントリを書きました。

初めてvim触りました。というよりLinux自体初めて。超難解。PC-DOSの頃を思いだしました。windowsの偉大さを再確認。

でも、Linuxって何でもできるのは良く分かった。windowsの便利さは不自由の上に立っていることを実感。

Javaの勉強のために始めたことだけど、Linuxも少しづつ触っていこうと思う。

 

≒ スマートフォン対応の件

すごく原始的な対応方法で、何ら目新しいことが含まれてないエントリですが、自分向けのメモとして。

このブログはwordpressが対応してくれてるのか、初期設定のままで(もちろんJavaやcanvasは走りませんが)問題なく表示されてるんですが、ドメインのインデックスページが何か変。

様々なサイトを漁りまくって、言われるがままにコードをいろいろ書き直して試行錯誤しても上手く行かず。viewportの記述を加えると変な風に崩れるし、Media Queriesもなぜか期待通りの動作をせず。

結果的に上手く行ったので、やったことを書き残しておきます。

参考:初めてスマートフォン専用ページを作成する際に知っておきたいポイント

1) -webkit-text-size-adjust : none; を記述。縦横で勝手にフォントサイズを変えさせない。

2)@media screen and (max-width: 480px) { body { font-size: 0.7em; } } を記述。フォントを小さくする。

やったことはこれだけw 原始的すぎる。まぁ、そっけないインデックスページなんだから当然なんだけど。

で、ポイントはMedia Queriesの書き方の説明がサイトによってちょっと違うこと。基本を理解してないのが悪いんだけど、間違った書き方で書いちゃって動かなくて試行錯誤w

もう余計なことはしないで、次からはこのやり方で行きます。

≒ 続)Java appletのweb埋め込みの件

前のエントリの続き。えらく長くなりそうなのでエントリ分けました。つまり、ものすごくハマってます。

「z-indexの不思議」

IEとChromeは柔軟です。アプレットのあるdivを0(=AUTO)にして、その他のdivを1以上に設定すると当然アプレットを背景にすることが出来ます。

FFはその設定だとアプレットdivが最前面に来て、すべてを見えなくしてしまいます。もともとposition:absoluteだし、wmode=”transparent”にしてもだめ。結局アプレットdivを-1にしてみたら、他が隠されなくなった、というかアプレットdivが親divの後ろに隠れちゃうw あたりまえー、なんだけど、IE、Chromeだとちゃんと(期待通り)表示される。これ柔軟すぎないか?w つまり、親divのz-index値は無視で、内包された子divのz-index値の大小で重ね合わせてるご様子。

しかし、ここで驚愕の現象が。アプレットdivでない、ただの文字を引っ張ってきてるiFrameのdivに-1を設定すると、IE、Chromeともに親divの後ろに消えるw 上の仮説がすぐ崩れたw

FF、IE、Chromeそれぞれ違うけど、アプレットの扱い方が他の要素と違うってことがわかりました。問題は解決せず。

追記)あきらめました。

FF除外ハックってあるんですね。2009年の記事だからいつまで保つかわかりませんが。「モズドキュメントハック

7/4追記)さらに後退

全部アプレットで書き直しました。アプレットとhtml要素の重なりに悩むのをやめました。

でもnoembedタグが使えないと言うことでまたjre拒否の場合の表示に悩んだんですが、結局noembedタグ使いました。jre走らないくらい古いブラウザならnoembedタグも活きてるんじゃないかと。

IEテスターで見た限り、IE7まではnoembedタグの内容が期待通り表示されてました。最新ブラウザで意図的に拒否してる場合はどうなるのだろうか。やっぱりobjectタグで書き直そうかな。

サファリ?知りません。

7/4追記)これで最後?

objectタグで書き直ししました。わかったこと。

  1. objectタグをChromeとFFは認識せず。書き方の問題かもしれないけど、この書き方(ページソース見てね)でIEは普通に動作。
  2. commentタグで括ってembedタグを(従来通りの内容で)記述。ChromeとFFも従来通り、普通に動作するようになる。
  3. jreが死んでるサファリではちゃんとobjectタグの代替ドキュメント(だけ)が描画される。期待通り。

問題はobjectタグの書き方が良く分からないこと。ググってもそれぞれ書いてる内容が(時期に依るのかも)違う。objectタグをChrome、FFが認識しないなんてあり得ないので、認識できるように書ければembedタグの入れ子なんて要らない。

あるいは、noembedタグの復活を期待。もともとIE、Chrome、FFすべてembedタグは認識して、ちゃんと動作するのだから、代替ドキュメントをembedタグで適用できれば何の問題もないのだから。

やっぱりoracleが悪いんじゃないかと思うのです。未だにググって出てくる純正ドキュメントに「appletタグの利用」なんてあるからね。「objectタグ(or embedタグ)による埋め込み」ってキーワードで出てくるのはFLASHについての記事ばかりw

objectタグ埋め込みは今後も勉強しよう。

追記)

スマートフォン…