タグ

javaとservletに関するhiro360のブックマーク (13)

  • J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(3) - 水まんじゅう2

    何回かに分けてJ2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーションについて実際のコードを見ながら解説したいと思います。 変更前のサンプルソースはこちら https://github.com/megascus/oi-webapp-sample/tree/initial 第一回はこちら J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(1) ここで一度Webアプリケーションの処理の流れについておさらいしたいと思います。 Webアプリケーションの一般的な処理の流れについて 例外はたくさんありますが、だいたい以下のような順番で処理が行われます。*1 認証、認可等全ての処理に対して行うべき共通処理 入力値の適切な形への変換、検証 DB等のリソースへのアクセス 画面の表示 いろいろ簡略化されていますが、大体こんな感じです。 今回のアプリケ

    J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(3) - 水まんじゅう2
  • J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(2) - 水まんじゅう2

    何回かに分けてJ2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーションについて実際のコードを見ながら解説したいと思います。 変更前のサンプルソースはこちら https://github.com/megascus/oi-webapp-sample/tree/initial 第一回はこちら J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(1) 今回はHibiernateをJPA(Eclipse Link)に置き換えたいと思います。 hibernate.cfg.xmlからpersistance.xmlへの置き換え hibernate.cfg.xmlは削除してしまいます。その代わりにpersistance.xmlを置きます。 https://github.com/megascus/oi-webapp-sample/blob/initia

    J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(2) - 水まんじゅう2
  • J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(1) - 水まんじゅう2

    何回かに分けてJ2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーションについて実際のコードを見ながら解説したいと思います。 変更前のサンプルソースはこちら https://github.com/megascus/oi-webapp-sample/tree/initial こちらのソースは、Tomcat上で動く、ビューがServlet2.5+JSP、O/RマッパーとしてHibernateを直接使用するという、大体2005年ぐらいに作られたシステムのイメージになっています。 また、いくつかの点にてきちんと設計されているとは言えず、MVCに沿って作られたことになっていますが、きちんとViewとModelが分離できていません。 それ以外にも問題をいくつか抱えています。 これをGlassFish4.0上でのJavaEE7仕様で作り直したいと思います。 古いシステムを新しい仕

    J2EEレガシーアプリケーションのJavaEEアプリケーションへのマイグレーション(1) - 水まんじゅう2
  • Servlet 3.0 の超シンプルなサンプル (pom も) - 宇宙行きたい

    ちょっとした Java のライブラリ使うサーバ書かなきゃいけなかったのですが、 折角なので、Servlet 3.0 で書いてみたら鼻血が出るほど簡単で、今まで web.xml とか書いてたのはなんだったんだ状態になったので、 超シンプルなサンプル書いてみました。 package org.yoshiori; import java.io.IOException; import java.util.Date; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.H

    Servlet 3.0 の超シンプルなサンプル (pom も) - 宇宙行きたい
  • もっとJavaEE6っぽくcometチャットを実装する - きしだのHatena

    もっとJavaEE6っぽくやってみよう 昨日のエントリでは、AsyncContextの使いかたを試すため、サーブレットだけを使って実装してみました。 でも、すこし泥臭いコードも多くなっていたし、このまま実用的なコードにしていくときにゴテゴテとコードを継ぎ足していくというのもイヤな感じです。 そこで、もっとJavaEE6っぽいコードに書き換えてみましょう。 少し準備 今回は、JAX-RSでのRESTful Webサービスと、CDIでのインジェクションを使ってみます。 JAX-RSの準備 まずは、JAX-RSを使うための設定クラスを作成します。 package chat2; @javax.ws.rs.ApplicationPath("rs") public class ApplicationConfig extends javax.ws.rs.core.Application { } こういう

    もっとJavaEE6っぽくcometチャットを実装する - きしだのHatena
  • Servlet3.0でcometチャットを作ってみる - きしだのはてな

    Cometとは? ブラウザベースのチャットをつくろうとする場合、以前は定期的にクライアントからリクエストを送信して更新を確認するという手法がとられました。そうすると、平均して更新間隔の1/2の遅延が発生し、更新がないときの問い合わせが無駄になるなど、ユーザーにもサーバーにもうれしい手法ではありませんでした。 そこで使われるようになったのがCometです。 Cometは、HTTPでクライアントからの接続への返答を保留して、サーバーからデータを送信する必要がでたときに返答を返すことで、サーバーからのリアルタイムデータ送信を行う手法の総称です。 Servlet3.0でのComet対応 Cometでは、クライアントからの接続を保持しつづけるので、これまでのServletの仕組みをつかって実現しようとすると、各接続にスレッドを割り当てることになり、スレッド数が多くなりすぎるため、多くのユーザーには対

    Servlet3.0でcometチャットを作ってみる - きしだのはてな
  • Servlet 3.0 File Upload 機能

    Servlet 3.0 File Upload 機能 2010年3月11日 at 10:33 午後 3件のコメント Servlet 3.0 ではマルチパートデータを扱う事ができるようになったため、とても簡単にファイルアップロード機能を実現できます。 (表示用 HTML) <html> <head> <meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″> <title>JSP Page</title> </head> <body> <FORM action=”/FileUpload/MyFileUpload” enctype=”multipart/form-data” method=”POST”> アップロードするファイル名: <INPUT type=”file” name=”content”> <INPUT t

    Servlet 3.0 File Upload 機能
  • 航海日誌(2008-10-29)

    << 2008/10/ 1 1. SpursEngineの可能性 2. BSアニメ夜話 第11段! 3. 今週の新番組 4. ザ・ネットスター! 「懐かしスター大集合」 5. Scalify 6. Web Flavor 0.2.2リリース 7. 一番簡単なWeb Flavorアプリケーション 8. 今期の録画予報 2 1. 「Javaの未来を考える」わんくま同盟 富山勉強会 #01 2. Digest認証の仕組 3. 2getズザー 4. 2chのDAT形式 3 1. LiftなCRUDでModel 2. Web Flavor 0.2.3リリース! 4 1. とびだす!盗んでいきました「平行法」 5 1. 自転車に乗る初音ミクを作る 6 1. 今週の新番組 2. 今日の獲物 3. 手のひらサイズのUSBキーボード 7 1. Web Flavor 0.2

  • web.xml 要素リファレンス

    web_app_2_3.dtdに基づいたweb.xmlの各要素に関するリファレンスです。 JavaPress誌Vol22/23に掲載された「ピンポイントJSP&サーブレット」 という記事の原稿をもとにして、 コラムなどを末尾に移動して見通しをよくしたものを公開します。 校正前の原稿(プレインテキスト)を元にしていますので、 見栄えなどはあまり考慮していません。 また、雑誌記事口調の部分と、適当に省略して不自然になっている文が 混じってます_o_。 間違いのご指摘はshin@sk-jp.comまでお願いします。 Webアプリケーションとは web.xml詳細 各要素の説明 開発者のサポートのための要素 <distributable>? <context-param>* <param-name> <param-value> <description>? <filter>* <icon>? <f

  • 【コラム】Java API、使ってますか? (49) やっぱり基本はServlet - Servlet 3.0のEarly Draftを読む | エンタープライズ | マイコミジャーナル

    JSR 315: Java Servlet 3.0 Specification 現在、Javaで構築するWebアプリケーションのためにはさまざまなフレームワークが用意されているが、基となるのはServletにほかならない。次期Java EEプラットフォームとなるJava EE 6ではServlet仕様の大幅なアップデートが予定されており、その仕様がJSR 315として策定されている。コラムでも第17回でその概要を紹介しているが、去る5月5日にEarly Draftが公開されたので、さっそく目を通してみたいと思う。 アノテーションの追加 Servlet 3.0ではEoDをさらに促進するため、ServletやFilterなどを定義するためのアノテーションが用意される予定となっている。これによってコードの記述量の削減やweb.xmlなどに対する設定の簡略化を実現する。具体的には次のようなアノ

  • JavaOne2008 5日目 JavaOne3日目開催 - おおたに6号機blog

    ■Servlet3.0 きました、Servlet3.0! そのままメモはり。 JSR135 まだ決定していない事項も多い 新機能 プラガビリティ EoD 非同期サポート セキュリティ プラガビリティ web.xml 単一のweb.xmlはつらいよねと。 modular web.xml。個別web.xmlをフレームワークごとに設定 META-INF/web.xmlで個別の設定をよめますよ。 web-fragments, servlets, filters <web-fragment> <servlet> </servlet> ...... </web-fragment> ServletContextの設定でServlet、Filterなどを足せる 初期化時のみ動的にServlet、URLマッピング、Filterを足せる @ServletContextListener public class

    JavaOne2008 5日目 JavaOne3日目開催 - おおたに6号機blog
  • 2008-05-09

    例によって、メモ書き。不適切な表現は、全スルー推奨。 JSR 311: JAX-RS: The JavaTM API for RESTful Web Services JSR 315: JavaTM Servlet 3.0 Specification Pluggability web.xmlに直接触れるAPIが追加される為、 ServletAPIを使うFrameworkは、それ専用の設定ファイルを持つ必要がなくなる。 今は、web.xmlにServletFilter書いて頑張ってるよねぇ…とか。 それについて、ドキュメント書くのダルくね?とか。 それぞれのFrameworkは、それぞれのjarにMETA-INF/web.xmlをおいて使う。 そのweb.xmlをWebコンテナが気合で探す。 ポイントは、タグ。まぁ、中身は既存のweb.xmlと同じ様な感じ ServletContextに、w

    2008-05-09
  • [ThinkIT] 第1回:Are you ready for Server Java ? (1/2)

    第1回:Are you ready for Server Java ? 著者:山田 祥寛   2006/4/7 サーバサイドJavaについて説明する前に、まずはサーバサイドJavaが動くベースとなるWebについて、簡単に紹介しておくことにしましょう。 Webの世界では大きく分けて、「クライアント」と「サーバ」という概念が存在します。クライアントとは多くの場合、Internet ExplorerやFirefox、Operaのような製品に代表されるブラウザのことを指します。 Webにおいては、ブラウザ上でインターネット上のコンテンツの位置を指定することで、その位置に格納されているコンテンツを取得してくることができます(図1)。 この位置を表す記法となるのが、皆さんもよくご存じの「URL(Uniform Resource Locator)」です。 このURLとコンテンツとはHTTP(HyperT

  • 1