http://ja.netbeans.org/index.html
機能的な目玉としては
- Java SE 7 対応
- Maven 3対応
- Swing開発の拡張
- JavaEE6対応強化
- PHPのリファクタリング等強化
- Weblogic対応強化
- OracleDatabase対応(ストアドも動かせるらしい)
- 付属AP鯖が更新。Tomcat は7、Glassfish は3.1へ
- HTML5対応
あたりか。細かいのを後で乗せよう。
http://ja.netbeans.org/index.html
機能的な目玉としては
あたりか。細かいのを後で乗せよう。
たとえばWebアプリケーションに、Message Driven Beanを2つつくります。(import文略)
@MessageDriven(mappedName = "jms/NewMessage1Queue", activationConfig = { @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"), @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue") }) public class NewMessageBean1 implements MessageListener { @Override public void onMessage(Message message) { System.out.println("mdb1"); } }
これの、mappedNameやクラス名、printlnの部分の「1」を「2」にしたものも作ります。
で、呼び出します。
@WebServlet(name = "InvokeServlet", urlPatterns = {"/InvokeServlet"}) public class InvokeServlet extends HttpServlet { @Resource(mappedName = "jms/NewMessage1Queue") private Queue newMessage1Queue; @Resource(mappedName = "jms/NewMessage1QueueFactory") private ConnectionFactory newMessage1QueueFactory; @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { Connection connection = newMessage1QueueFactory.createConnection(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); //メッセージ作成 TextMessage tm = session.createTextMessage(); tm.setText("hoge"); //送信 MessageProducer messageProducer = session.createProducer(newMessage1Queue); messageProducer.send(tm); sendJMSMessageToNewMessage1Queue("hoge"); session.close(); connection.close(); } catch (JMSException ex) { Logger.getLogger(InvokeServlet.class.getName()).log(Level.SEVERE, null, ex); } response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head><title>Servlet InvokeServlet</title></head>"); out.println("<body>"); out.println("<h1>Invoked</h1>"); out.println("</body></html>"); out.close(); } }
実際にはNetBeansのJMS呼びだしコードを挿入機能でコードを生成しています。
そのとき、次のような定義ができます。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd"> <glassfish-web-app error-url=""> <resource-ref> <res-ref-name>jms/NewMessage1QueueFactory</res-ref-name> <jndi-name>jms/NewMessage1QueueFactory</jndi-name> </resource-ref> <message-destination-ref> <message-destination-ref-name>jms/NewMessage1Queue</message-destination-ref-name> <jndi-name>jms/NewMessage1Queue</jndi-name> </message-destination-ref> <class-loader delegate="true"/> <jsp-config> <property name="keepgenerated" value="true"> <description>Keep a copy of the generated servlet class' java code.</description> </property> </jsp-config> </glassfish-web-app>
で、実行すると、mdb1とmdb2がランダムにログに表示されて、適当にMessage Driven Beanが呼び出されてしまっています。
ちゃんと特定のMessage Driven Bean呼び出すには、どうしたらいいんでしょ?
Porting情報が掲載されていたpdk.android.comの内容が、いつの間にか共に消えていた。”この情報は古すぎるから消した。新しいの今書いてるからちょっと待ってて”らしい。 とはいえ、まるごと消してしまうのは…。
この情報が無いため仕事が滞る人もいるわけで。ってことで、その(旧)pdk.android.comの内容が転載されているサイトがあったのでおしらせ。http://www.kandroid.org/online-pdk/ です。参考までに。
XAMPP1.7.4の場合。
まずはPHPUnit
コマンドプロンプトを管理者として実行。
> cd \xampp\php > pear upgrade-channels > pear update PEAR > pear channel-discover pear.phpunit.de > pear channel-discover components.ez.no > pear channel-discover pear.symfony-project.com > pear install phpunit/PHPUnit
で、XDebugの設定。
php.iniの設定。
php_xdebug.dllを読み込んでる行のコメントをはずす
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
remote_enableをOn
xdebug.remote_enable = On
これで、NetBeansでもデバッグできるはず。
久しぶりににPCを購入した。今回は、LenovoのIdeaPad S10-3。本当は、購入して3年経過したMacBookPro15を最新のMacBookPro13インチに新調しようとも考えたが、現状に特に不満も無いのでまた次回に先送りということに(MacBookProは長く使えるマシンだね)
なにかと出張したり気分転換に喫茶店で仕事したりする事が増えてきたので、小さくて電池の持ちがよいPCは、なにかと都合がよい、はず。
これまでは、MBP15インチを持ち歩いてウロウロしていたが、持ち運びの不便さ、電池の持たないなどの点もあってなんとかしたいなーとは思ってたので、そこでNetBookと(今さらな理由…)
ということで、Amazon.comから個人輸入することに。
周辺環境はUSキーボードで統一しているが、この機種は日本でUSキーボード配列のものが購入できない。なので、Amazon.comで購入してHopShopGo Homeで転送して日本へ、ことに。
このときプリインストールされているOSが英語版Windows7 Starterになってしまうのだが、速攻でUbuntu入れるのだし、この際無視。
Amazon.comに注文してから日本に届くまでは、送料が一番安くつくプランで約2週間ほど。もっと早く欲しいひとはお金積めば2,3日は早くなる。今回は急ぎでもないので、そういうプランにしたが。
気になる費用は
で、合計$395.53(83円換算で32900円ほど)となった。まあ、日本で同機種購入+別途USキーボードを購入したと思えば、そんなものかなと。
IdeaPad S10-3にしたのは、もともとThinkPadを愛用していた、というのもるのだが、それ以外にも「MeeGoの動作確認済機種である」というのも決め手に。
MeeGoというのは、IntelとNokiaが開発している組み込み機器向けOS。立場からすると、Androidの近い(Intelが開発しているAndroidみたいなOSと言う表現も、さほど間違いではない)
Twitterのタイムライン上には、MeeGoを連呼する人が何名かいるので、そのあたりに感化されたというか、ちょっと触ってみるか、という気になった。
手持ちのBeagleBoardでもMeeGoを動作させることはできるのだが、追加投資が必要 & 動作している様子を手軽に人に見せられない、というのがあるので断念。こういうのは人に見せてなんぼだと思うので。
ほかにも、NetBookは通常のノートより動作するOSが多い(MacOSXも!)ので、動作検証、研究にも何かと役立ちそう、というのもある。
で、このあと、Ubuntuのインストールでトラブったのだが、それは次回へ。
昨日はオープンセミナー2011@岡山に参加させて頂きました。
午前中と昼過ぎの地元コミュニティーの紹介の後
オラクル、マイクロソフト、グーグルといった大手外資系の方が
セッションされすごく盛り上がりました。
参加者がそれぞれに言ってましたがオラクル、マイクロソフト、
グーグルの三社が同時に来てるってすごい!
あまり活動していませんがわが下駄Beans(netBeansユーザー会)
としてはオラクルの寺田さんのセッションは聞き逃せないところ
Java7のいろんな話を聞かせて頂きました。また、オープンラボ
備後も紹介して頂き感謝します。
また、18時30分からの懇親会も楽しく、盛り上がりました。
オープンラボ備後のメンバーもいろいろ広報活動をして頂き
ありがとう!
% env LC_ALL=C netbeans
% netbeans --locale en
# Options used by NetBeans launcher by default, can be overridden by explicit # command line switches: netbeans_default_options="--locale en -J-client ....
以前、WindowsがインストールされたVMwareのイメージを縮小するエントリーを書いたが、今回はLinux編。こちらもWindowsの時と同様に、利用していない領域をゼロで埋めてからcompactを実行するとかなり小さくなる。これは、VMwareのイメージファイルは内部で圧縮されて保存されているため。
特に、VMwareのイメージを配布するときはファイルサイズが小さい方がよいわけで。そのために以下の方法を試してみるのはよいかと思う。
ちなみにこの方法は、某巨大掲示板に書いてあった方法だが、見失いそうなのでblogに転記しておく。
あらかじめ、縮小したいデバイス(/dev/sda1とか)を調べておく(dfコマンドなどで知ることが可能)
必要なものは、UbuntuのCDイメージ(まあ別にubuntuでなくてもいいのだが)
パーティションを一通りzerofreeで処理したあとは、VMwareにてHDDにcompactを実行する
以下のシリーズでGlassFishを勉強してみます。
NetBeansを使うのでとっても便利そう!
GlassFishからアプローチするJava〜入門編〜
第1回「GlassFishとNetBeansのインストール」
事情によりFroYoをビルドする必要がありUbuntu10.04にJDK5をインストールしようとしたが、ググるとよく出てくる
/etc/apt/sources.listに
deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
を追加する方法は現在では有効な方法ではなくなっている。
というのも、jaunty(Ubuntu 9.04)が既にサポートを終了しておりサーバのレポジトリごと抹消されてアクセスできなくなっているから。
ということで、かわりにHardy(Ubuntu 8.04)を指定する必要がある。
deb http://us.archive.ubuntu.com/ubuntu/ hardy multiverse deb http://us.archive.ubuntu.com/ubuntu/ hardy-updates multiverse
あとは、いつもの方法でJDK5をインストール。
$ sudo apt-get update $ sudo apt-get install sun-java5-jdk
ちなみに、Ubuntu 8.04 デスクトップ版は既にサポート終了しているが、サーバー版は2013年4月までサポートされるのでJDK5は当分は入手可能である。
「デスクトップ」とかディレクトリ名が日本語になってて気持ち悪いので英語に。
$ LANG=C xdg-user-dirs-gtk-update
Javaのフォントの設定がおかしいらしくNetBeansとか起動するといろいろ文字化けするので対策
$ cd /usr/lib/jvm/java-6-sun/jre/lib/fonts/ $ sudo mkdir fallback $ cd fallback $ sudo ln -s /usr/share/fonts/truetype/takao/Takao* ./
2011/06/04追記 Ubuntu10にこの方法でパッケージからPostgreSQL9入れるとなんか不安定になってしまう
2011/06/07追記 VirtualBoxの問題だったかも。
まずはリポジトリの登録
$ sudo add-apt-repository ppa:pitti/postgresql $ sudo apt-get upgrade
で、PostgreSQLをインストール
$ sudo apt-get install postgresql-9.0
なんならpgadminも
$ sudo apt-get install pgadmin3
データベース中のpostgresユーザーのパスワードを指定
$ sudo su postgres $ psql # alter user postgres with password 'postgres'; # \q $ exit