10 5月, 2010

(
9)

(
0)

(
1)

(
0)
Total: 10
EeePCは、SSDとUPSを備えた次世代サーバプラットフォームと言える素晴らしいハードウェアです。知らない人も多いようですが、ニコニコ大百科のフロントサーバはEeePCです。すべてのクエリーをEeePCで受け付け、セッション情報まで管理しているそうです。
まぁ、ハードウェアの素晴らしさは今さら語る必要はありませんが、外配信機材としては軽くてそこそこバッテリーも持つので非常に重宝しております。
ただ、いかんせんSSDのディスク容量が小さい(私のモデルは4Gbyte)でWindows XP SP2を搭載するとかなり苦しい状況になってしまいます。
そこで、Windowsを潰してUbuntuを入れようと思った訳です。まぁ、Arch Linuxでも何でも良かったのですが、最近Ubuntuのデスクトップ環境が良いといと方々で聞くのでUbuntuにトライしようと思った訳です。
EeePCにUbuntuを入れようとすると、Ubuntuプロジェクト公式のUbuntu Netbook Remixとeeebuntuという2つの選択肢があるようですが、私はUbuntu公式のUbuntu Netbook Remixを選択しました。
用意するもの
- USBメモリかSDカード (容量700MB以上のものが必要になります。私はEeePCに付いてきた4GBのSDカードを利用しました)
- Windows マシン
まず、このページで紹介されている「Universal USB Installer(ダウンロードリンク)」をダウンロードして、実行します。(インストールは必要なく、exe単体のプログラムです)
実行すると、ライセンスが表示されるので、[I Agree]ボタンを押します。

Step1で、「Ubuntu Netbook Remix 10.04」を選択します。インストールイメージは自動でダウンロードされますが、インストールイメージをこちらの公式ページからダウンロードしておいてもOKです。自分でダウンロードした場合は、Step2でイメージの場所を選択します。
Step3でインストールしたいドライブを選択します。横のチェックボックスにチェックを入れると、そのドライブをフォーマットします。特に理由がなければ、チェックを入れフォーマットします。
最後に[Create]ボタンを押してインストールイメージを作成します。

インストールイメージが作成できたら、EeePCにSDカードを挿入して起動します。すぐに、[F2]ボタンを押し、BIOSの設定画面を表示します。[Boot]-[Boot Device Priority]で1St Boot Deviceを[Removable Dev.]に設定します。
あとは起動時にUbuntuのブートメニューが出るので、HDD(SSD)にインストールするも良いですし、そのままSDカードやUSBブートで利用しても良いです。
2 5月, 2010

(
5)

(
0)

(
0)

(
0)
Total: 5

プログラミング生放送勉強会 第3回@大阪でAndroidについて話をしてきました。当日のアンケート結果がようやく上がって来たのですが、かなり高評価だったのでより多くの方に見ていただけるようにブログにまとめておきます。
Javaが分かれば誰でも理解できるレベルだと思いますので、これを見てAndroidの開発ってこんなに簡単なんだと思って頂ければ幸いです。
注意:実はAndroidで開発をしたのってこの時が初めてなんですよね。
◆プレゼン資料とソースコード一式はこちらからダウンロードできます。
会場にお越し頂いたみなさまありがとうございます。京都Google Technology User Groupという集まりもやってますので、よければMLに参加してみて下さい。
14 4月, 2010

(
0)

(
0)

(
0)

(
0)
Total: 0

GWT1.6をお使いの方はこちらをご覧ください。
Google Web Toolkit(以下GWT)で開発をするときに、Google Plugin for Eclipseを利用するとEclipse上からGWTのコードを実行でき非常に便利です。
GWT2.0から新しく導入されたDevelopment Modeは、Javaで記述されたGWTのコード(正確にはJavaのbytocode)をブラウザのプラグインで直接実行させるという非常にクレイジーな方法を採用しており、このおかげでJavaのコードをJavaScriptにコンパイルせずにブラウザ上で直接実行できるようになりました。
以下、GWT 2.0で、JNDI経由でMySQLを使う方法。ちなみに、設定ファイルをちょっと変更するだけで、PostgreSQLなど他のDBでも利用できます。
まず、Eclipse上でGWTのプロジェクトを作成します。「Use Google Web Toolkit」にチェックが入っており、「Use Google App Engine」にチェックが入っていないことを確認して下さい。
Google Plugin for Eclipseを導入してない方はこちらの私の記事でご確認ください。

次に、war/WEB-INF/libにjetty-naming-6.1.11.jarとjetty-plus-6.1.11.jar、さらにmysql-connector-java-5.1.12-bin.jar(これは使いたいDB用のJDBC)の3ファイルをコピーします。
*jetty-namingやjetty-plus、mysql-connector-javaのバージョンに理由がある訳ではないので、少しぐらいバージョンが違っても動くと思います。
war/WEB-INFの直下にjetty-web.xmlというファイルを作成して、以下のように記述します。DBのホスト名、ポート番号、ユーザ名、パスワードは適宜設定してください。
CODE:
-
<?xml version="1.0" encoding="UTF-8"?>
-
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
-
-
<configure class="org.mortbay.jetty.webapp.WebAppContext">
-
-
<new id="logstore" class="org.mortbay.jetty.plus.naming.Resource">
-
<arg>java:comp/env/jdbc/mysqldb</arg>
-
<arg>
-
<new class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource">
-
<set name="Url">jdbc:mysql://192.168.0.111:3306/DB名</set>
-
<set name="User">DBのユーザ名</set>
-
<set name="Password">DBのパスワード</set>
-
</new>
-
</arg>
-
</new>
-
-
</configure>
GWTのサーバー側のRemoteServiceServletを拡張したServletクラス内に以下の記述を追加すると、このクラス内からds.getConnection()でSQLのJDBCコネクションが取得できます。
CODE:
-
private static final String LOOKUP_DB = "java:comp/env/jdbc/mysqldb"; //$NON-NLS-1$
-
-
private static DataSource ds = null;
-
-
@Override
-
public void init() throws ServletException {
-
super.init();
-
try {
-
Context ctx = new InitialContext();
-
ds = (DataSource) ctx.lookup(LOOKUP_DB);
-
} catch (NamingException e) {
-
e.printStackTrace();
-
}
-
}
良くわからない人は、Google Web Toolkit 勉強会 in 京都 (#gwt_kyoto)に来るといいよ!