資料 - Processtune Blog

Download Report

Transcript 資料 - Processtune Blog

Java EE 6 Web Profile
SDK Update 2 のねらいと
Silverlightからの利用
高尾 哲朗



自己紹介



Microsoft MVP Client App Dev
http://blog.processtune.com
Twitter @takaoteturo
.NETラボの運営に携わっています。
facebook Takao Tetsuro
http://dotnetlab.net
MIX11のレポート書きました。(日経ソフトウェア7月号)
http://www.facebook.com/mixjapan
記事とか書いてます。
http://thinkit.co.jp/book/2011/03/01/2023
Web Profileのねらいの前に
私はJavaをMSのコンペキターと
感じたことがない
•
•
•
•
Swingでアプリケーションを作る気がしない
Javaを始めようと思った人が、開発環境作るだけで何日もかかる
Eclipseの標準的な使い方ってMarven必須ですか?
…
• クライアントアプリケーションの作成でMS技術を選択しな
い理由が見当たらない
• さまざまな種類のアプリケーションが、新規プロジェクト
の作成→F5で動くようにできている
• Azure AppFabric ACSを使ったWindows Phone
Silverlightアプリケーションのプロトタイプをインストー
ルから始めて半日で作れました。
• …
Web Profileのねらいとは?
Oracleが感じているJavaの問題点
• 11億のデスクトップでJavaが稼働しています。
• 30億の携帯電話でJavaが稼働しています。これは、iPhoneや
Androidの数を組み合わせた物を比べても31倍多い事を意味して
います。
• Blue Rayプレーヤの100%でJavaが稼働しています。
• 14億のJavaカードが毎年製造されています。
Java One 2010 キーノート
Thomas Kurian(オラクル・サーバー技術開発担当 シニア・バイスプレジデント)
なのに、クライアントアプリケーショ
ン開発で、サンはなぜ.NETに勝てな
かったか?
Web Profileのねらいとは?
Oracleが解決してきたもの
開発環境編
• NetBeans IDEは新規プロジェクトの作成→F6でアプリケーショ
ンが動きます。
• これまでMarvenを使っていた人も、標準インストール直後から
Marvenプロジェクトを作成できるので安心。
• 追加のインストールも非常にわかりやすい。
• 例)SOAP Web サービスだけ選択しても、次の画面でJava
Web アプリケーション プラグインが必要なことを警告し、
自動的にインストールできる。
Web Profileのねらいとは?
Oracleが解決してきたもの
通信編
• 2007年からProject Tangoを通してインターオペラビリティにア
プローチしている(Sun MicrosystemsとMicrosoft)
• →Metro ProjectでWeb Services Interoperability
Technologies(WSIT※)に受け継がれた。
• →Glass Fish v3.*にはMetro v2.1が同梱
WS-Trust
WS-SecureConversation
WS-SecurityPolicy
WS-ReliableMessaging
WS-AtomicTransactions/Coordination
WS-MetadataExchange
SOAP over TCP
とはいえ、OracleはSun MicrosystemsとMicrosoftの成果を買っ
ただけですけど。。。
実際にPlugfest(Project Tangoの成果報告)はレドモンドで行わ
れてました。
Web Profileのねらいとは?
Oracleが解決してきたもの
描画編(おまけ)
• NetBeans IDEに付属のSwing GUI Builderは、Swing
Application FrameworkとBeans Bindingを提供する
Swing
Application
Framework
Beans
Binding
Visual
Studioのデ
ザイナー機能
サーバー側の
データとのバ
インド
Web Profileの構成
• 考案者Sun Microsystems シニアエンジニア Roberto Chinnici
• →Oracle テクニカルコンサルティング
• →Google エンジニア
• 構成
• JDK 6 Update 26
• GlassFish Server Open Source Edition 3.1
• Java EE 6 Code Samples
• Java EE 6 API Documentation
• Java EE 6 Tutorial
• Your First Cup: An Introduction to the Java EE
Platform
• 彼の思い
ウェブアプリケーションが、Servlet 仕様が現れて以降おおきな進化を遂げた結
果、ごく単純なウェブアプリケーションを作るためであっても、直接Servlet API
を利用しているものはほとんど存在せず、サードパーティ製のフレームワークや
ライブラリに依存し、オープンソースとして開発されることが多い。
これらが、簡単に拡張できる標準的なAPIで構成された完全なスタックであれば、
開発者は、その生産性、拡張性を享受できる。
完全なスタックとは、現在のウェブアプリケーションに必要なプレゼンテーショ
ンと状態管理をあつかう技術、ウェブコンテナ機能、ビジネスロジックをあつか
う技術、トランザクション技術、永続化技術がそろっているスタックを言う。
http://weblogs.java.net/blog/robc/archive/2009/01/java_ee_6_platf_1.html
GlassFishはJava EEコンテナです。
Java EE 6の構成
•
構成
• Webアプリケーション機能
• Java Servlet 3.0
• JavaServer Pages(JSP)2.2
• JavaServer Faces(JSF)2.0
• JavaServer Pages Standard Tag Library(JSTL)1.2
• Debugging Support for Other Languages 1.0
• サービス機能
• Java API for RESTful Web Services(JAX-RS)1.1
• Java API for XML-Based Web Services (JAX-WS)2.2
• Java Architecture for XML Binding (JAXB)2.2
• Implementing Enterprise Web Services 1.3
• Web Services Metadata for the Java Platform
• Java API for XML-Based RPC(JAX-RPC)1.1
• Java APIs for XML Messaging(JAXM)1.3
• Java API for XML Registries(JAXR)1.0
• その他
• Enterprise JavaBeans(EJB)3.1
• Contexts and Dependency Injection for Java(Web Beans)1.0
• Dependency Injection for Java 1.0
• Bean Validation 1.0
• Java Persistence(JPA)2.0
• Common Annotations for the Java Platform 1.1
• Java Message Service API(JMS)1.1
• Java Transaction API(JTA)1.1
• JavaMail 1.4
• Java EE Connector Architecture 1.6
• Java Authentication Service Provider Interface for Containers 1.0
• Java Authorization Contract for Containers 1.3
• J2EE Management 1.1
• Java EE Application Deployment 1.2
Silverlightからの利用
もうお気づきかと思いますが
Javaアプ
リケーショ
ン
ASP.NET
アプリケー
ション
Silverlight
アプリケー
ション
Javaアプ
リケーショ
ン
ASP.NET
アプリケー
ション
Silverlight
アプリケー
ション
WCF Service
Webサービス
(JAX-WS、JAXRX)
IIS
GlassFish
インターオペラビリティ
Microsoftは多くをサポート
http://msdn.microsoft.com/en-us/webservicesinterop
リンク集
WCFに関連するリンク
WCFの基本的なバインディング情報
http://blogs.msdn.com/b/nakama/archive/2008/10/02/par
t-3-hello-world-wcf.aspx
WCFとMetroのコンバート
http://webservices20.blogspot.com/2011/06/test-drive-shinynew-wcf-interop.html
Azure AppFabric Service Busを使う場合の設定
http://download.microsoft.com/download/F/D/8/FD863D1
7-E85E-478C-B06F6825D50EA103/A%20Developer's%20Guide%20to%20Servic
e%20Bus%20in%20Windows%20Azure%20platform%20AppF
abric.docx
WCF
BasicHttpBinding
WebHttpBinding
WSHttpBinding
WS2007HttpBinding
WSHttpContextBinding
WS2007HttpFederationBinding
NetTcpBinding
NetTcpContextBinding
Service Bus
BasicHttpRelayBinding
WebHttpRelayBinding
WSHttpRelayBinding
WS2007HttpRelayBinding
WSHttpRelayContextBinding
WS2007HttpRelayFederationBinding
NetTcpRelayBinding
NetTcpRelayContextBinding