 |
 |
 |
 |
 |
 |
100 パーセント、サーブレット: ビューについて考え直す 動的コンテンツを持つ Web ページで開発者とUI 設計者のコンサーンを分け隔てる方法としては、JSP (JavaServer Pages) 技術が大々的に勧められていますが、残念ながら JSP は多くの設計者にとってあまりにも複雑すぎます。そのため Java 開発者が自ら JSP コードを処理するはめになりがちですが、その結果は大抵の場合、満足できないものです。そこでこの記事では、代わりとなる型破りな方法がもたらす利点を紹介します。その方法とは、単純なヘルパー・オブジェクトを使ってサーブレットにのみ基づいた Web インターフェースをビルドするというものです。 |
|
|
|
2007/03/27 |
|
| |
2007 年の Java: この 1 年を占う 2007 年は、Sun Microsystems が Java プラットフォームのコントロールをあきらめ、オープンソース・ライセンスの下で Java 開発者コミュニティーに解放した年として歴史に残ろうとしています。この記事では、Java 開発者である Elliotte Rusty Harold が、Java プラットフォームの新しい方向について、スクリプト言語からバグ修正、新しい構文まで、さまざまな面から予測します。 |
|
|
|
2007/02/06 |
|
| |
3、2、1 . . . Geronimo! 第 1 回: J2EE をシンプルに キャリアを飛躍させる準備はできていますか? 開発中のアプリケーションのタイプが何であれ、J2EE (Java 2 Platform, Enterprise Edition) は今日普及している重要な標準です。これをマスターすることが、あなたのプログラマーとしての評価をあと押しすることは疑いようがありません。 |
|
|
|
2006/08/15 |
|
| |
3、2、1 ... Geronimo! 第 2 回: 素材を形にする 料理本のようなガイドを手に、Apache Geronimo をダウンロード、インストールして、生産的に使用できるように構成してください。ちょっとした味付けをあれこれ加えると、最先端の Java 2 Platform, Enterprise Edition (J2EE) 認定サーバーというごちそうが完成します。 |
|
|
|
2006/10/10 |
|
| |
3、2、1 ... Geronimo! 第 3 回: ステートの問題 コンピューターと Web は日常的な仕事を一層手軽なものにしますが、その一方で、新しい課題ももたらします。今や、インターネットが HTML でコーディングされた Web ページの要求に応答するだけでいいだけの時代は終わりました。現代の Web サイトは、ユーザーに関する山のような情報を維持し、数々の複雑なタスクを管理できなければなりません。このようなステートに関する問題は、幸いにも最先端のツールによって単純化することができます。セッション状態という長年の問題に対する、業界ならではのソリューションとは何でしょう。この記事では、IT マネージャーを安心させるために Apache Geronimo が何千もの同時接続のステートを維持する方法について説明します。 |
|
|
|
2006/10/31 |
|
| |
3、2、1 ... Geronimo! 第 4 回: ものごとのスキーマ Web ブラウザーはデータベース・スキーマで始まる行の終わりにマークを付けますが、優れたデータベース・スキーマとはどうやって作成するのでしょうか。それには効率的なツールだけではなく、計画が必要です。データベースの設計は、科学でもあり、芸術でもあります。この記事を読んで、データベースの設計手腕を磨きましょう。この記事には、高速かつ効率的で、変更にすぐに対応できるデータベース・スキーマを設計するのに役立つヒントが記載されています。 |
|
|
|
2006/11/14 |
|
| |
Accessorを使用するとJavaコードの堅牢性が高まります Scott Amblerがaccessorの使用方法を説明し、そしてなぜaccessorを開発標準の1つとして推進していくべきかを述べています。この記事は、The Object Primer 2<sup>nd</sup> Edition の第8章を変更したものです。 |
|
|
|
2000/10/12 |
|
| |
Acegi を使って Java アプリケーションをセキュアにする、第 1 回: アーキテクチャーの概要とセキュリティー・フィルター この 3 回からなる連載記事で紹介するのは、Java エンタープライズ・アプリケーションのための非常に優れたオープン・ソース・セキュリティー・フレームワーク、Acegi Security System です。第 1 回目のこの記事では、Bilal Siddiqui が Acegi のアーキテクチャーとコンポーネントを取り上げ、Acegi を使用して単純な Java エンタープライズ・アプリケーションをセキュアにする方法を紹介します。 |
|
|
|
2007/03/27 |
|
| |
Acegi を使って Java アプリケーションをセキュアにする、第 3 回: Java オブジェクトのアクセス制御 Acegi Security System を紹介するこの 3 回連載の最終回では、Bilal Siddiqui が Java クラスのインスタンスへのアクセスをセキュアにする方法を説明します。Java クラスへのアクセスをセキュアにしなければならない理由、Spring が Java クラスのインスタンスを生成してセキュアにする仕組み、そして Java アプリケーションにクラスのセキュリティーを組み込むように Acegi を構成する方法を学んでください。 |
|
|
|
2007/09/25 |
|
| |
AIM 対応のアプリケーションを Eclipse で作成する 今日のアプリケーションは、多くの人が既に使用しているインターフェースである IM (Instant Messaging: インスタント・メッセージ) を利用しています。アプリケーションに IM を統合している理由は、IM によるインターフェースが使いやすく、多くの人がそのインターフェースに慣れていて、しかも既に利用しているからです。IM アプリケーションは多くのモバイル・プラットフォームでも利用可能であり、ユーザーは IM を利用することでモバイル機器からアプリケーションとインターフェースを取れるようになります。 |
|
|
|
2009/02/24 |
|
| |
Ajax と Java EE との統合を容易にする Ajax が一般的になるにつれ、このホットな話題についての俗説を払拭し、また Ajax を使う上での問題に取り組む必要性が高まってきました。この記事では、シニア IT スペシャリストである Patrick Gan が、Java EE Web アプリケーションに Ajax 技術を導入する場合、開発ライフサイクル全体において、どのような影響が考えられるかを検証します。 |
|
|
|
2006/07/25 |
|
| |
Ajax と REST、第 1 回 サーバー・サイド Web アプリケーションがリッチ・アプリケーション・モデルに従ってパーソナライズされたコンテンツを配信し、ますます実体験のようになるにつれ (没入型 Web アプリケーション)、そのアーキテクチャーが Web のアーキテクチャー・スタイル、REST (Representational State Transfer) に違反することも多くなってきています。このような違反によって、アプリケーションのスケーラビリティーは損なわれ、システムはより複雑になります。Ajax アーキテクチャーは REST との調和を実現することによって、没入型 Web アプリケーションがそのようなマイナス効果を排除し、REST 本来の特性を十分活用できるようにします。 |
|
|
|
2006/10/02 |
|
| |
Ajax と REST、第 2 回 Ajax の人気は急上昇しています。古い Web フレームワークでは Ajax をサポートするための改良が進行中で、新たな Ajax のみでのフレームワークの開発が進んでいます。また、Ajax の採用を検討中であったり、Ajax アプリケーションの構築をすでに開始したという組織も多数あります。そんなブームとは裏腹に、Ajax アプリケーションのデプロイメントに成功した組織は数えるほどです。2 回連載のこの最後の記事は、実際の IT アプリケーションで Ajax を使用するべきかどうかを判断する際の手掛かりとなるとともに、Ajax 開発の成功率を高めることを目的としています。 |
|
|
|
2006/11/14 |
|
| |
Ajax による JSF フォームの自動保存: 第 2 回 連載「Ajax による JSF フォームの自動保存」の第 1 回では、Java 開発者である著者、Andrei Cioroianu が Ajax (Asynchronous JavaScript + XML) および JSF (JavaServer Faces) 技術を用いて、Web フォームを自動的に保存する Java アプリケーションを作成する手順を紹介しました。この手順に沿って、JavaScript と XMLHttpRequest を使ってフォーム・データを取得、エンコード、送信する方法、Ajax リクエストの処理に JSF リクエスト処理のライフ・サイクルを適応させる方法、JSF コンポーネント・ツリーから送信されたデータをサーバー側で取得する方法を理解できたはずです。3 回連載の 2 回目となるこの記事では、ブラウザー・セッション間で匿名ユーザーを識別する方法、複数のユーザーとページに対して自動保存されたフォーム・データを管理する方法、データ・リポジトリーを選択する方法、そしてスレッド・セーフの問題に対処する方法を説明します。 |
|
|
|
2007/09/18 |
|
| |
Ajax による JSF フォームの自動保存: 第 3 回 この連載の第 1 回では、Java 開発者である著者の Andrei Cioroianu が Ajax (Asynchronous JavaScript + XML) によって Web フォームのユーザー入力を送信し、JSF (JavaServer Faces) によって Ajax リクエストを処理する方法を説明しました。続く第 2 回では、サーバー側でのデータ管理を取り上げ、自動的に保存されたフォーム・データを維持するためのデータ・リポジトリーを紹介しました。3 回からなる連載の最終回となるこの記事で説明するのは、おそらく読者が想像する以上に巧妙な JSF フォーム・データのリストア方法です。興味深い JSF 手法として、JSF コンポーネントの immediate および onclick 属性を使用する方法、JSF リクエスト処理のライフ・サイクルのいくつかのフェーズを省略する方法、隠しフォーム要素を使って JSF リスナーを起動する方法を学んでください。この記事ではさらに、JSP/JSF 式を JavaScript コードに組み込む方法や JSF コンポーネントのレンダラーで生成された HTML フォーム要素と併せて JavaScript を使用する方法、そしてアプリケーション Bean のシリアライズおよびデシリアライズを行うサーブレット・コンテキスト・リスナーを実装する方法も説明します。 |
|
|
|
2007/10/09 |
|
| |
Ajax による SOAP Web サービスの呼び出し - パート 2: Web サービス・クライアントの拡張 今回は、Ajax (Asynchronous JavaScript + XML) の設計パターンを使用して Web ブラウザー・ベースの SOAP Web サービス・クライアントを実装する方法について解説します。このパート 2 では、Web Services Addressing Language仕様および Web Services Resource Framework仕様への基本サポートを実装することにより、前回の JavaScript ライブラリーの諸機能を拡張します。 |
|
|
|
2006/01/10 |
|
| |
Ajax をマスターする: 第 1 回 Ajax の紹介 HTML、JavaScript、DHTML、そして DOM からなる Ajax は、魅力のない Web インターフェースをインタラクティブな Ajax アプリケーションに変換するための卓越した手法です。この記事では Ajax のエキスパートである著者が、Ajax を構成する技術が連動して極めて効率的な Web 開発を容易に実現する仕組みを、その概要から詳細に至るまで実例で説明します。さらに XMLHttpRequest オブジェクトをはじめ、Ajax の中心となる概念についても明らかにします。 |
|
|
|
2005/12/06 |
|
| |
Ajax をマスターする: 第 2 回 JavaScript と Ajax を使用して行う非同期要求 大抵の Web アプリケーションでは、サーバーから HTML ページをまるごと取得する要求/応答モデルを使用します。このモデルを使用したやり取りは、ボタンをクリックしてサーバーからの応答を待ち、また別のボタンをクリックして再び待機するといったものになってしまいます。一方 Ajax と XMLHttpRequest オブジェクトを使用すれば、ユーザーがサーバーからの応答を待つ必要のない要求/応答モデルを使用することができます。今回の記事では、Brett McLaughlin が特定のブラウザーに依存しないように XMLHttpRequest インスタンスを作成する方法、要求を作成して送信する方法、そしてサーバーからの応答を処理する方法を説明します。 |
|
|
|
2006/01/17 |
|
| |
Ajax をマスターする: 第 3 回 Ajax での高度な要求と応答 多くの Web 開発者たちにとって、シンプルな要求を行って、シンプルな応答を受け取ることができれば、それですべての必要は満たせます。しかし Ajax をマスターしたいのであれば、HTTP ステータス・コード、Ready 状態、そして XMLHttpRequest オブジェクトを完全に理解することが必須です。今回の記事では、Brett McLaughlin が各種のステータス・コードを紹介し、そのそれぞれをブラウザーがどのように処理するかを説明します。そして最後に、使用されることは少ないものの Ajax を使用して実行できる HTTP 要求を紹介します。 |
|
|
|
2006/02/14 |
|
| |
Ajax 対応の JSP TagLib コントロールを作成する: 第 2 回 自動入力コントロールとフィールド・バリデーター・コントロール ビジネス分野のアプリケーションで使用できる Ajax (Asynchronous JavaScript + XML) コントロールを作成しましょう。この記事で作成する構成可能な JSP (JavaServer Pages) TagLib ベースのコントロールは、JSON (JavaScript Serialized Object Notation)、JavaScript スクリプト言語、そして CSS (Cascading Style Sheets) を利用して作成します。このような標準的な JSP TagLib コントロールを簡単にアプリケーションに組み込んで、より直観的で応答性に優れたインターフェースを提供する方法を学んでください。 |
|
|
|
2008/11/25 |
|
| |
AjaxTags で Ajax 開発を容易にする Web 2.0 の時代には、Web ベースのアプリケーションのユーザビリティーと応答性に関する開発者やユーザーの期待はずっと高くなっています。この 2 年間ほど岩の下に住んでいたのでもない限り、皆さんはAjax (Asynchronous JavaScript + XML) の手法について聞いたことがあるはずです。Ajax を使えば、洗練されていていて、応答性が良く、しかも非常に動的なブラウザー・ベースのユーザー・インターフェースを、ブラウザーがページをリロードせずに作成することができます。この記事では AjaxTags について見ていきます。AjaxTags は Java/JavaScript ライブラリーであり、JSP ページに Ajax の機能を容易に統合することができます。 |
|
|
|
2007/10/23 |
|
| |
AlphaBot: Robocodeの生みの親Mat Nelson氏へのインタビュー ゲームをプレイする面とロボットを作成する面の両方でRobocodeの人気がうなぎ登りに高まってきたため、Mat Nelson氏へインタビューを行い、Robocodeを開発したきっかけや、それが将来どこへ向かっているかについて話を伺いました。 |
|
|
|
2002/05/01 |
|
| |
AntとJUnitを用いた漸進的開発 ソフトウェア開発において、ソフトウェア品質の向上のため、単体テストを開発プロセスに取り入れるメリットを探ります。 |
|
|
|
2000/11/01 |
|
| |
AOP@Work: Contract4Jを使用したコンポーネント設計 Design by Contractは、コンポーネント設計の詳細の明確化、クライアントに適した使用法のドキュメント化、およびプログラムによる使用法準拠のテストに定評のある技法です。AOP@Workシリーズの最後となるこの記事でDean Wamplerは、Design by ContractツールのContract4Jを紹介します |
|
|
|
2006/04/11 |
|
| |
AOPが密結合の憂うつさを取り除く この記事ではAOPの機能設計概念の一つである静的横断(static crosscutting)を使う事により、密に結合されて絡み合ってしまう可能性のあるコードが、強力で拡張可能なエンタープライズ・アプリケーションに変えられることを説明します。 |
|
|
|
2004/02/18 |
|
| |
AOPを使いコントラクトを実施する この記事では、コードをすっきりとしていて柔軟な状態に保ちながらコンポーネント間の明確なコントラクトを設計・定義することを促すことにより、どのようにしてAOPがリスクを緩和するかを論議します。 |
|
|
|
2004/07/15 |
|
| |
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 2 ApacheDerbyデータベースに対して単純なデータベース・クエリーを実行する方法、そして結果を選んで処理する方法を完全に把握してもらうには、Statement、ResultSet、そして ResultSetMetaData という 3 つの新しい JDBC クラスについて紹介しなければなりません。この記事では、この 3 つのクラスを JDBC データベース接続で使用して、Apache Derby データベースから独自の Java アプリケーションに短時間で簡単にデータを抽出する方法を説明します。 |
|
|
|
2007/01/30 |
|
| |
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 3 Java プログラムから Apache Derby データベースを変更する方法を学んでください。今回は連載の前の 2 回の記事を基に、Java アプリケーション内から Apache Derby データベースのテーブルを作成および削除する方法、データを挿入、更新、削除する方法を説明します。また、JDBC の Statement および <code>PreparedStatement</code> クラスの使用方法、そして SQL バッチによってパフォーマンスを改善する方法も取り上げます。 |
|
|
|
2007/02/20 |
|
| |
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 4 SQL カーソルの概要、そして SQL カーソルを使用して Apache Derby データベースで動的にデータを変更する方法を学んでください。SQL カーソルは、ij ツールを使って明示的に使用することも、該当する Java メソッドを呼び出して暗黙的に使用することもできます。この機能をマスターすれば、ビジネス・アプリケーションに合わせて選択的にデータを変更可能な Java アプリケーションを作成できるようになれるはずです。 |
|
|
|
2007/04/17 |
|
| |
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 5 Apache Derby データベース・アプリケーションで準備済みステートメントを使うときに利用できる拡張機能について学んでください。まず初めに、ij ツールで動的に PreparedStatement を実行して迅速なプロトタイプ化を有効にします。続いてデータを PreparedStatement に流し込んで大量のデータを特定の列に効率的に挿入する方法、そして ParameterMetaData オブジェクトを使って、ベンダー固有の実装詳細をはじめ、PreparedStatement に含まれる個々のパラメーターに関する情報を取得する方法を説明します。 |
|
|
|
2007/05/22 |
|
| |
Apache Derbyを使用した開発 -3連単を当てる:Apache Derbyの紹介 ほとんどすべてのアプリケーション開発者は、ある時点でデータを保存する必要に迫られます。この回では、Apache Derbyを紹介します。Apache Derbyは、オープン・ソースの、フットプリントの小さい、標準ベースのJavaデータベース・システムです。他のデータベース・システムとの比較を試み、ダウンロードとインストールについて論じます。 |
|
|
|
2006/02/14 |
|
| |
Apache Directory ServerへのJavaオブジェクトの保管 第1回 この2部構成の記事では、ApacheDS (Apache Directory Server) にJava (TM) オブジェクトを保管する手順を詳しく説明します。この第1回目の記事では、Bilal SiddiquiがApacheDSを紹介し、コア・アーキテクチャーの概要を説明します。ApacheDSは主にJavaオブジェクトを保管するLDAPサーバーとして使用されるため、LDAPの概念と用語の概要について説明します。また、JXplorerを使用して属性タイプ、オブジェクト・クラスなどのLDAPスキーマ・コンポーネントを表示する方法、およびデータ・オブジェクトをApacheDSに格納する方法も示します。 |
|
|
|
2006/05/02 |
|
| |
Apache Directory ServerへのJavaオブジェクトの保管 第2回 ApacheDS (Apache Directory Server) へのJava(TM) オブジェクトの保管手順を説明するこの記事では、第1回目の記事で説明した概念を、Bilal Siddiquiが9つのアプリケーションを例に取って解説していきます。また、ApacheDSを使用したJavaオブジェクトの保管、検索、取得、変更の各手順をすべて紹介した上で、LDAPスキーマ・コンポーネントを使用してこれらの機能をApacheDS内で組み合わせる再使用可能なJavaクラスを最後に説明します。 |
|
|
|
2006/05/02 |
|
| |
Apache Geronimo EJB トランザクションのオプションを比較検討する、第 1 回: コンテナー管理トランザクション 全 3 回のこのシリーズで、Apache Geronimo での EJB (Enterprise Java Beans) コンテナー管理トランザクションと Bean 管理トランザクションの両方について学んでください。第 1 回では、この 2 つのタイプのトランザクションの違い、そしてコンテナー管理トランザクションでは、どのようにしてトランザクション・ロジックと管理の複雑さをなくし、エンタープライズ Bean のビジネス・ロジックに専念できるようにしているかがわかります。また、コンテナー管理トランザクションを Geronimo アプリケーション・サーバーに実装する方法、さらに Geronimo、OpenEJB、XDoclet を使って、やっかいな EJB コーディングから逃れる方法についても学びます。 |
|
|
|
2006/07/25 |
|
| |
Apache Geronimo EJB トランザクションのオプションを比較検討する、第 3 回: まとめ この記事で、Apache Geronimo アプリケーション・サーバーでのコンテナー管理 EJB トランザクションと Bean 管理 EJB トランザクション両方の特徴、そしてその他のインプリメンテーション・オプション、構成オプションを把握してください。 |
|
|
|
2006/08/15 |
|
| |
Apache Geronimo PetStore デモの分析 実際的な手順に従って、ビジネスに実用できるエンタープライズ・アプリケーションを構築してみませんか。iBATIS PetStore アプリケーションは、Sun Java BluePrints プログラムから作成されたサンプル・アプリケーションです。このアプリケーションは、iBATIS パーシスタンス・フレームワーク、Java のみによる Apache Derby データベース、そして Java EE (Java Platform, Enterprise Edition) の機能を使用して単純なクロスプラットフォーム・エンタープライズ・アプリケーションを開発する方法を教えてくれます。この記事では、iBATIS、Derby、Apache Geronimo の機能を活用して柔軟かつ実用的な PetStore アプリケーションの実装を作成する際に参考にできるヒントと技法を紹介します。 |
|
|
|
2006/10/03 |
|
| |
Apache Geronimo および POJO を使用して SOA フレームワークを構築する Apache Geronimo フレームワークは、高度なアプリケーションおよびサービスを構築するために、POJO 開発用の強固なインフラストラクチャーを提供します。POJO の戦術を使用してサービス指向の開発を成功させるために使用できる Geronimo フレームワークのコンポーネントと技法の一部を探索しましょう。 |
|
|
|
2006/07/11 |
|
| |
Apache Geronimo で Apache Pluto ポータル・アプリケーションを開発し、デプロイする Apache Geronimo の機能セットにはあらかじめポータル・サーバーが統合されてはいませんが、Geronimo をポータル・アプリケーションのテストと開発用の環境として使うことができます。この記事では、Apache Pluto のドライバーとコンテナーを Geronimo にデプロイする手順をステップごとに追いながら、ポータル・アプリケーションのための 100% オープンソースの環境を実現します。そして Pluto と Geronimo でサンプルのポータル・アプリケーションを開発し、デプロイし、テストするための方法を学びます。 |
|
|
|
2007/04/10 |
|
| |
Apache Geronimo の JNDI ネーミングおよび Java リソース接続プール、第 1 回: データ・ソース接続 JNDI (Java Naming and Directory Interface) は、Apache Geronimo アプリケーション・サーバーにある接続プールとのインターフェースです。このインターフェースを介して、開発者は EJB (Enterprise Java Bean) をはじめとするすべての Java オブジェクトにアクセスします。この連載記事では、JNDI を使用してデータ・ソース、JMS (Java Messaging Services)、メール・セッション、そして URL 接続のための接続プールにアクセスする方法をそのコンセプトとともに説明します。 |
|
|
|
2006/11/21 |
|
| |
Apache Geronimo の JNDI ネーミングおよび Java リソース接続プール、第 2 回: Java メッセージ・サービスの使用 JNDI (Java Naming and Directory Interface) は、オブジェクトに名前を関連付けるメソッド、そしてその名前に基づいてディレクトリー内のオブジェクトを検索するメソッドをアプリケーションに提供するアプリケーション・プログラミング・インターフェース (API) またはライブラリーです。連載第 2 回目のこの記事では、Apache Geronimo、JNDI、そして JMS (Java Message Service) リソース・グループの相互関係について説明します。さらに、JMS リソース接続を作成し、JNDI を使って単純な Geronimo アプリケーション内で JMS リソースにアクセスする方法についても学びます。 |
|
|
|
2006/12/12 |
|
| |
Apache Geronimo の JNDI ネーミングおよび Java リソース接続プール、第 3 回: メール・セッション この連載ではこれまで、データ・ソース接続と JMS (Java Message Service) リソース・グループを作成し、それぞれが Apache Geronimo および JNDI (Java™ Naming and Directory Interface) とどのように連動するかを説明してきました。4 回連載の第 3 回目となるこの記事では、Apache Geronimo、JNDI、メール・セッションが相互に作用する仕組みについて取り上げます。単純な Geronimo アプリケーションで JNDI を使ってメール・セッションを作成する方法、そしてメール・セッションにアクセスする方法を紹介します。 |
|
|
|
2007/02/13 |
|
| |
Apache Geronimo、JMSを使いイベントドリブンフレームワーク構築する リアルタイムで発生する変化やイベントに即座に応答できることは、エンタープライズ・フレームワークにとって重要な要求です。この記事では、リアルタイムの刺激に対してアプリケーションやサービスが効果的に応答できるように、またアーキテクチャーの仮想レイヤーにまたがってイベントを送受信できるようにするための機能として、Apache Geronimoフレームワークの中に具体化されている技術や機構を紹介します。 |
|
|
|
2006/06/27 |
|
| |
Apache Geronimoでの依存性注入 第1回: J2EEアプリケーションでの分離を新しい角度から見る この記事は、Apache GeronimoにおけるDI(dependency injection: 依存性注入)の動作を学ぶ2回シリーズの第1回です。ここでは最も軽量なDIコンテナーであるPicoContainerを使う例を通して、DIの理論的な基礎を、複雑な詳細を排除しながら解説して行きます。 |
|
|
|
2006/02/07 |
|
| |
Apache Geronimoでの依存性注入 第2回: 新たな時代 第1回に続いて、Apache GeronimoにおけるDI(dependency injection: 依存性注入)の動作を学びましょう。今回は、Geronimoアーキテクチャーの概要やDIがGeronimoに与える影響、GeronimoでのDI機能によって、コードの書き方がどのように変わるのか、などに関して解説します。 |
|
|
|
2006/02/14 |
|
| |
Apache Geronimoでフェールセーフなトランザクショナル・アプリ構築する この記事では、IBM Advanced Technology Solutionsチームが、Apache Geronimoでのトランザクション・サポートの概要を説明し、こうした機能を利用することでフェールセーフなトランザクショナル・アプリケーションが構築できることを示します。 |
|
|
|
2006/02/21 |
|
| |
Apache GeronimoにJ2EEアプリケーションをデプロイする Apache GeronimoにJSP (Java Server Pages)、サーブレット、およびさまざまなEJB (Enterprise JavaBeans)をデプロイする方法を学びます。この記事では、他のJ2EE (Java 2 Platform, Enterprise Edition)コンテナーとは異なるApache Geronimoに必要なデプロイメント手順を説明します。 |
|
|
|
2006/01/03 |
|
| |
Apache GeronimoにWebサービスをデプロイする この記事では、Javaの専門家である Kunal Mittalが、GeronimoのWebサービス機能の紹介として、標準的なJ2EE Webサービス・コードをGeronimoで書き、開発する方法を解説します。 |
|
|
|
2005/06/28 |
|
| |
Apache Geronimoアプリケーションを作成しデプロイしデバッグする Apache Geronimoサーバー用の新しいEclipseプラグインを使って、Webアプリケーションを開発し、デプロイするための方法を学びましょう。 |
|
|
|
2005/05/10 |
|
| |
Apache Geronimoディストリビューションの最適化 ここでは、listenとアプリケーションサービスの停止/再開方法、必要な各アプリケーションモジュールとWebアプリケーションのアンデプロイ/再デプロイ方法について説明し、Apache Geronimoディストリビューションによるデプロイメントを必須のコアサービスやアプリケーションにまで効率的に利用できるようにします。 |
|
|
|
2006/05/12 |
|
| |
Apache Lucene を使ったテキスト検索 充実した機能を備えたハイパフォーマンスのテキスト検索エンジン・ライブラリー、Apache Lucene について学びましょう。この記事では Lucene のアーキテクチャーとそのコアとなる API について解説し、Lucene を利用して、プラットフォームに依存しない全文検索、索引付け、結果の表示、そして検索機能の拡張を行う方法を説明します。 |
|
|
|
2009/08/18 |
|
| |
Apache Mahout の紹介 データやユーザー入力から学習するインテリジェントなアプリケーションの開発は、これまでは巨額の研究予算のある学術界や企業でしか行われていませんでしたが、今や一般的になりつつあります。クラスタリングや協調フィルタリング、カテゴリー分けなど、機械学習の手法に対するニーズは今までにないほど高まっています。機械学習の用途には、大勢の人達の間での共通性の発見、あるいは大量の Web コンテンツの自動タグ付けなどがあります。Apache Mahout プロジェクトは、インテリジェントなアプリケーションの作成を容易に、そして迅速にすることを目標としています。この記事では Mahout プロジェクトの共同設立者である Grant Ingersoll が機械学習の基本的な概念を紹介し、Mahout を使って文書をクラスタリングする方法、レコメンデーションを行う方法、コンテンツを構成する方法を説明します。 |
|
|
|
2009/09/08 |
|
| |
Apache Pluto を組み込んだ Apache Geronimo に対してポートレットを作成し、デプロイする ポートレットは、複数の場所にあるデータの集約や、異なるアプリケーションの統合を実現し、さまざまなユーザーのグループが協力する作業空間を提供するための、強力なツールです。Apache Pluto はポートレット仕様の参照実装であり、開発中のポートレットをテストするのに適しています。この記事は、Apache Geronimo サーバーの中に Pluto ポートレット・コンテナーをインストールし、構成するための方法について解説します。 |
|
|
|
2007/06/12 |
|
| |
Apache SOAP の型マッピング: 第 1 回 Apache の直列化 API について SOAP では、アプリケーション・レベルのデータを転送するための簡単なワイヤー・プロトコルが定義されています。このプロトコルは、充実した広範な型システムを備えており、Java の任意の型を直列化された XML として簡単に伝送できます。Apache SOAP ツールキットにおける型システム・サポートについての 2 回シリーズの第 1 回である今回の記事で、Gavin Bong 氏は、SOAPの型システムに関する理論的な基礎を紹介します。また、SOAP における直列化と非直列化のプログラム的なサポートの詳細を学習し、最後にツールキット内部の仕組みを紹介します。これらのプロセスの動作原理をよく理解しておけば、独自の分散システムを開発する際に役に立ちます。 |
|
|
|
2002/04/01 |
|
| |
Apache SOAP型マッピング: 第2回 シリアライゼーションの詳細説明書 SOAPは、データベース、プログラム言語 (例えばJavaプログラム言語)、およびデータ・リポジトリーにおける共通の型を表すためのエンコード方式を指定しています。Apache SOAPのツールキットは、Javaの型を直列化されたXML表現にマップするという、厄介な仕事を行なうクラスである(デ)シリアライザー の基本セットを提供することにより、エンコードをサポートします。この2回シリーズの記事の第1回では、これらの(デ)シリアライザーの使い方を調べました。この第2回で、Gavin Bongは、ツールキットから提供される(デ)シリアライザーがユーザーの要求を満たすことができない場合に、ユーザー独自の(デ)シリアライザーを作成する方法を示します。彼はまた、このシリーズで研究する概念の多くをデモンストレーションする、サンプル・アプリケーションを提供しています。 |
|
|
|
2002/03/01 |
|
| |
Apache Solr でもっと賢く検索する: 第 1 回 基本機能と Solr スキーマ Solr は Lucene をベースにしたエンタープライズ対応の検索サーバーで、ファセット検索、検索結果の強調表示、そして複数の出力形式をサポートします。Solr を紹介するこの 2 回の連載記事では、Lucene Java コミッターの Grant Ingersoll が Solr ならではの優れた全文検索機能を簡単に Web アプリケーションに取り込む方法を伝授します。 |
|
|
|
2007/05/29 |
|
| |
Apache Solr でもっと賢く検索する: 第 2 回 エンタープライズに対応した Solr Solr の紹介を締めくくるこの記事では、Lucene Java のコミッター Grant Ingersoll が、管理インターフェース、高度な構成オプション、そしてキャッシング、複製、ロギングなどのパフォーマンス機能を含め、Solr のエンタープライズ向け機能を説明します。 |
|
|
|
2007/06/05 |
|
| |
Apache Solr の新しい内容 Apache Solr で新たに強化された多くの機能を活用して選り抜きの機能をアプリケーションに追加してください。 |
|
|
|
2008/11/04 |
|
| |
ApacheのBeehive入門 この記事では、Beehiveを使い始めるための手掛かりを紹介し、またBeehiveアプリケーションを作るためのEclipseプラグインである、Pollinateを簡単に紹介します。 |
|
|
|
2005/04/19 |
|
| |
Apacheの戦士Geronimoが持つ実力: 第1回 勇気を出してジェロニモとお近づきになってみる J2EEアプリケーションサーバ「Apache Geronimo」が静かにブレイクの兆しを見せています。本連載では、このGeronimoの魅力に迫っていきます。まず、Geronimoの導入ポイントと、Eclipse+Web Tools Platformを使った開発の流れを紹介しましょう。 |
|
|
|
2007/05/25 |
|
| |
Apacheの戦士Geronimoが持つ実力: 第2回 WTPを使用したWebアプリケーション開発 前回は、Geronimoの導入と、アプリケーション開発環境となるEclipseとWeb Tools Platform(WTP)をインストールしました。今回は、WTPを使用して簡単なWebアプリケーションを開発する方法を紹介します。 |
|
|
|
2007/05/25 |
|
| |
Apacheの戦士Geronimoが持つ実力: 第3回 GeronimoカーネルとGBeanアーキテクチャー Tomcat、Jetty、ActiveMQ、OpenEJBなど、至難と思われたさまざまなオープンソースミドルウェアの柔軟な統合を実現したGeronimo。今回は、その統合を強力に支えるGeronimo特有の柔軟なアーキテクチャーを紹介します。統合用部品GBeanの疎結合連携を実現するDIカーネル機構などを通して、Geronimoが秘めた本当のポテンシャルを体験してみましょう。 |
|
|
|
2007/05/25 |
|
| |
Apacheの戦士Geronimoが持つ実力: 第4回 GBean×DI徹底解剖 コンポーネントの疎結合化・再利用を促す手法であるDI(Dependency Injection)ですが、Geronimoカーネルの最大の特徴は、GBeanの取り扱いにこのDIの考え方を取り入れている点と言えるかもしれません。今回は、GBeanに活用されているDIの仕組みを紹介します。 |
|
|
|
2007/05/25 |
|
| |
Apacheの戦士Geronimoが持つ実力: 第5回 Ruby on Geronimoを試す(前編) Geronimoでオープンソースミドルウェアの柔軟な統合を実現できるなら、独自のミドルウェアも統合できるはず! 今回は、統合の実例として、近年注目を集めるRubyのランタイム環境をGeronimo上に統合してみます。 |
|
|
|
2007/05/25 |
|
| |
Apacheの戦士Geronimoが持つ実力: 第6回 Ruby on Geronimoを試す(後編) J2EEアプリケーションサーバ「Apache Geronimo」の魅力に迫ってきた本連載も、いよいよ今回で最終回となります。今回は、RoGの実現を通して、GBeanの原理をより深く理解してください。 |
|
|
|
2007/05/25 |
|
| |
AppFuse を使用する 7 つの簡単な理由 Spring、Hibernate、あるいは MySQL などの Java プラットフォームを対象としたオープン・ソース・ツールを使い始めるのは難しい場合があります。オープン・ソース・プロジェクトの統合につきものの悩みの種を取り除いてくれるのが、AppFuse です。 |
|
|
|
2006/08/08 |
|
| |
AspectJおよび疑似オブジェクトによる柔軟なテスト この記事では、テスト・ケースの分離に関係する問題を紹介し、疑似オブジェクトとAspectJを使って正確で強力な単体テストを推し進めていく方法を示します。 |
|
|
|
2002/05/01 |
|
| |
Atom の署名と暗号化、そして暗号化解除 Atom は情報を中継するためには優れたフォーマットですが、セキュリティーの懸念はないのでしょうか。XML デジタル署名は、データが信頼できる相手から来たものであること、そして変更されていないことを保証します。また XML 暗号化は、機密情報が盗み見られないように防ぐことができます。しかしこうした技術を、Atom の構造を破壊せずに使うにはどうすべきなのでしょう。この記事では、Apache Abdera API を使うことによって、Atom データにデジタル署名と暗号化を容易に適用する方法を説明します。 |
|
|
|
2007/05/22 |
|
| |
AUIMLツールキット入門 この記事では、Abstract User Interface Markup Languageツールキットの入手方法、またインストールや使用の方法を手順を追って説明します。 |
|
|
|
2004/07/21 |
|
| |
Axis2 と JiBX を使って Java クラスを Web サービスに変換する: 第 1 回 XML を使って Java クラスから Web サービスを定義する XML は、ほとんど何についてでも定義できるという意味で強力です。しかも、大部分のアプリケーションにとって、特にこのシリーズの目的である Axis2 と JiBX にとっては、外部から読み取り可能なフォーマットの基本でもあります。それに加え、Web サービスがより一般的になってきたため、レガシーの Java プロジェクトを完全機能の Web サービスに変換することの緊急度が次第に高まっています。これまで、Web サービスの自動生成は 1 つのサービスや1 つのクラスに限定されていましたが、現在では、既存のプロジェクトの中にあるさまざまな Java クラスから 1 つ以上のサービスを生成するという選択肢があります。この記事は 2 回シリーズの第 1 回として、XML を使って既存の Java クラスから Web サービスを定義します。 |
|
|
|
2007/03/20 |
|
| |
Axis2 と JiBX を使って Java クラスを Web サービスに変換する: 第 2 回 XML を完全機能の Web サービスに変換する XML は、ほとんど何についてでも定義できるという意味で強力です。しかも、大部分のアプリケーションにとって、特にこのシリーズの目的である Axis2 と JiBX にとっては、外部から読み取り可能なフォーマットの基本でもあります。それに加え、Web サービスがより一般的になってきたため、レガシーの Java(TM) プロジェクトを完全機能の Web サービスに変換することの緊急度が次第に高まっています。これまで、Web サービスの自動生成は 1 つのサービスや1 つのクラスに限定されていましたが、現在では、既存のプロジェクトの中にあるさまざまな Java クラスから 1 つ以上のサービスを生成するという選択肢があります。この記事は 2 回シリーズの第 2 回として、Axis2 と JiBX を使って、XML から、そして既存の Java クラスから、完全機能の Web サービスへの移行を行います。 |
|
|
|
2007/03/22 |
|
| |
Castor JDOを始めよう この記事では、100% Pure Javaテクノロジーに基づいて構築されたデータ・バインディング・フレームワークであるCastor JDOの使用の基本を説明します。まず、リレーショナル・データ・モデルとJavaオブジェクト・モデルについて取り上げ、これらのマッピングの基本について説明します。 |
|
|
|
2002/08/01 |
|
| |
Castor によるデータ・バインディング: 第 1 回 Castor のインストールとセットアップ データ・バインディング用にCastor をダウンロード、インストール、そして構成します。 |
|
|
|
2007/11/13 |
|
| |
Castor によるデータ・バインディング: 第 2 回 XML のマーシャリングとアンマーシャリング このシリーズの前回の記事では、Cator をダウンロードしてインストールし、セットアップしました。今回の記事では、Java(TM) クラスを XML に変換し、そしてその XML を Java コードに逆変換する方法について学びます。また Castor がどのように動作するのかについて、そして Castor の API でうまく動作するようにクラスを設計する方法についても説明します。 |
|
|
|
2007/12/10 |
|
| |
Castor によるデータ・バインディング: 第 3 回 スキーマ間のマッピング 扱いにくくて不自由な XML 文書を Castor を使ってカスタム Java オブジェクトに変換してください。 |
|
|
|
2008/01/29 |
|
| |
Castor によるデータ・バインディング: 第 4 回 Java オブジェクトを SQL データベースにバインドする Castor を利用することによって、Java オブジェクトのデータを直接データベース・テーブルにバインドすることができます。この記事で、Java オブジェクトから SQL にマーシャリングする方法を学んでください。 |
|
|
|
2008/04/18 |
|
| |
Coberturaでテスト対象範囲を調べる この記事では、コード・カバレッジ(テスト対象範囲)に関するベスト・プラクティスを使ってCoberturaを活用する方法を解説します。 |
|
|
|
2005/05/03 |
|
| |
COBOL のように死んだ言語 Java が間もなく消え去るという最近の報告を見聞きした皆さんは、Java というプラットフォームを捨ててもっと優れたものに移行する時が来たのだろうかと思っていることでしょう。しかし結論を下す前に一歩下がって Java のエコシステムとその競合とを検証し、冒頭の噂が内容を伴ったものかどうかを調べてみましょう。つまりアメリカ大統領の一般教書演説にならい、Java プラットフォームの評価に関して高慢も偏見も交えずに Java の一般教書演説をしてみようというわけです。 |
|
|
|
2008/05/27 |
|
| |
CodeRally FAQ ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally ゲーム紹介 ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally 作ってみよう! ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally 試してみよう!(2) ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally 試してみよう!(3) ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally 試してみよう!(4) ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally 試してみよう!(5) ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRally 試してみよう!(6) ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。 |
|
|
|
2004/08/13 |
|
| |
CodeRulerで中世世界の王国を攻略 至高のCodeRulerを使い、一日中一生懸命に頑張れば、(スキル習得と領地収得を含む)勝利と栄光は全てあなたのもの。戦争シミュレーションの熱狂者は、究極の王国支配への王道へとあなたをいざないます。 |
|
|
|
2004/06/29 |
|
| |
ConTestを使用したマルチスレッド・ユニットのテスト この記事ではConTestというツールを紹介します。これは、並列プログラムのテストやデバッグ、カバレッジの測定に使用するツールです。これから説明しますが、ConTestは単体テストに代わるものではなく、並列プログラム上での単体テストの問題点を解決する補助的なテスト手法です。 |
|
|
|
2006/04/04 |
|
| |
CORBAテクノロジーに触れる 6 月の記事では、CORBA と Java テクノロジーをなぜ選ぶのかについてお話ししました。今月は、CORBA テクノロジーのさまざまな面がよくわかる簡単な例から話を始めます。ただし、わたしたちの目標を見失わないようにしましょう。つまり、あるコンピューターに常駐するクライアントを使って、別のコンピューター上で実行されているサービスを要求する分散アプリケーションを作成することです。ハードウェアやオペレーティング・システム・ソフトウェアなど細かいことを気にする必要はありません。欲しいのは、クライアントの要求を満たすサービスだけです。 |
|
|
|
2000/07/06 |
|
| |
Cypal Studio for GWT を使って Ajax 開発をもっと簡単にする GWT (Google Web Toolkit) を使えば、Java プログラマーが完全に Java プログラミング言語でリッチな Ajax (Asynchronous JavaScript + XML) アプリケーションを作成することができます。この GWT 構造の管理サポートするのが、Eclipse IDE 用に設計された Cypal Studio for GWT です。この記事を読んで、Cypal Studio for GWT が GWT モジュールの新規作成を支援する方法、そしてリモート・プロシージャー呼び出しをサポートして Web アプリケーションを簡単に表示、デプロイできるようにする仕組みを学んでください。 |
|
|
|
2007/06/19 |
|
| |
DAOを繰り返すな! Java 5ジェネリックの採用により、汎用の(ジェネリックな)型安全なDAO(Data Access Object:データ・アクセス・オブジェクト)実装というアイデアが現実のものになりました。この記事では、Hibernateに基づくジェネリックDAO実装クラスについて解説します。また、Spring AOPイントロダクションを使用して、このクラスに、クエリー実行のための型安全なインターフェースを追加する方法も示します。 |
|
|
|
2006/05/12 |
|
| |
Data Web Services を使用した pureXML のための Universal Services Universal Services の構成、テスト、変更を行ってみましょう。 |
|
|
|
2008/05/01 |
|
| |
DB2 で XML と Java を使う DB2 9 では pureXMLの強力さを活用でき、しかもそれをアプリケーション開発環境に統合することができます。この強力な技術を Java アプリケーションに統合する方法を学び、また新しい DB2 Developer Workbench を使うことで開発を容易に進められることを学びましょう。 |
|
|
|
2006/10/26 |
|
| |
DBMSストアード・プロシージャーをセッションEJBコンポーネントのメソッドとしてラッピングする Webアプリケーションとデータベース管理 (DBMS) テクノロジーを統合することは、多くの新規ビジネス・アプリケーションで共通の要件です。この記事では、この統合の1つの面、つまり、セッションEnterprise JavaBeans (EJB) コンポーネントで既存のDBMSストアード・プロシージャーのラッピングや呼び出しを行うメソッドの設計/開発を行う方法について考えます。この記事から最大限の益を得るには、EJBテクノロジー、構造化照会言語 (SQL)、およびJava Database Connectivity (JDBC) の基礎に通じている必要があります。 |
|
|
|
2000/10/01 |
|
| |
DbUnitとAnthillによるテスト環境の制御 連続的な統合にいかにして対処するか、そして(テスト前にデータベースの状態を設定してテスト環境を一貫して制御する為に)JUnitと同時進行でいかにしてDbUnitを使用するかをこの記事で説明します。 |
|
|
|
2004/04/13 |
|
| |
developerWorks インタビュー: Web 2.0 EXPO Tokyoにてティム・オライリー氏に聞く 2007年11月15、16日、アジアで初となる Web 2.0 EXPO Tokyo が開催されました。私は、アドバイザリー・ボード・メンバーとして、USからロッドスミスを迎え、キーノート・スピーチの準備をするなど、このイベントを裏で支えてきました。Web 2.0 という単語の生みの親とも言えるティム・オライリー氏と、2日目のキーノートの直後にちょっとした会話をする機会を得ました。ティムはとてもフランクに、そして、楽しそうに会話してくれました。そのときの様子をIBMのXMLデータベース/Info 2.0 エバンジェリストである中林紀彦とともにお送りします。 |
|
|
|
2007/11/19 |
|
| |
developerWorksの歩き方: 第2回 ゾーンを巡る 前回は、日本語による技術情報が集約された「IBM developerWorks」を紹介しました。今回は、developerWorksにはどういったコンテンツがどのように配置されているのかを紹介します。 |
|
|
|
2007/03/30 |
|
| |
developerWorksの歩き方: 第3回 トレンドをつかむ developerWorksのコンテンツを十分に味わうには、外部のサービスなども活用した方がいいでしょう。今回は、RSSやソーシャルブックマークを活用してdeveloperWorksの人気記事をチェックしていきます。 |
|
|
|
2007/03/30 |
|
| |
developerWorksの歩き方 第1回 現場で使える技術を求めて日々Webサイトを巡回する技術者は多い。国内ではコアな情報を扱うサイトや雑誌が少ないが、developerWorksには多くの有益な情報が存在している。本連載では、developerWorksを徹底的に活用するためのガイドを提供します。 |
|
|
|
2007/03/30 |
|
| |
DITADoclet と DITA API 特殊化を利用して DITA Java API リファレンス・マニュアルを生成する DITADoclet と DITA API 特殊化を組み合わせることで、時間を節約しながらも、品質の高い API ドキュメントを Java ソース・コードから直接作成します。 |
|
|
|
2009/02/03 |
|
| |
Dojo 1.x を使ってウィジェットを開発する Dojo JavaScript ツールキットを使用して HTML ウィジェットを開発する上での基本を学んでください。この記事では Dojo ツールキットについて紹介し、開発プロセスに役立ついくつかの例を記載します。単純なウィジェットから次第に複雑なウィジェットの例へと進むなかで、開発段階で発生する可能性のある共通の問題を明らかにし、解決します。 |
|
|
|
2009/04/28 |
|
| |