WebLogicのWebSocket
Takahiro YAMADA
@yamadamn
2013/8/19
WebLogic Server (WLS) 12.1.2
• Java EE 6対応
• リリース: 2013/7/11
• 商用APサーバーとして、WebSocketに早い段階で対応
ある夜明けのこと
エヴァンジェリストに絡んでる人を発見...
※プライバシー保護のため一部加工しています
何が起こったのか?
• その前日のこと
マニュアルを見てみると
• http://docs.oracle.com/middleware/1212/wls/WLPRG/websockets_sse.htm
確かに独自実装
WLS 12.1.2のリリースは、2013/7/11なので
タイミング的に間に合わなかったっぽい
JSR 356
エヴァンジェリストからの援護射撃
ヒゲメン登場
実はこの方、昔のBEAシステムズでWLSサポート担当
実装イメージ
import weblogic.websocket.WebSocketAdapter;
import weblogic.websocket.WebSocketConnection;
import weblogic.websocke...
(参考) JSR 356の実装イメージ
import java.util.*;
import javax.websocket.*;
import javax.websocket.server.ServerEndpoint;
 
@ServerE...
まとめ
• 手早く手厚くWebSocketのサポートを受けたい方
• WebLogic Server 12.1.2
• サポートは弊社の利用をご検討ください m(_ _)m
• 標準準拠でなければ使いたくない方
• GlassFish 4.0
...
ご清聴いただき、ありがとうございました
Upcoming SlideShare
Loading in...5
×

WebSocket of WebLogic

1,188

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,188
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
16
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

WebSocket of WebLogic

  1. 1. WebLogicのWebSocket Takahiro YAMADA @yamadamn 2013/8/19
  2. 2. WebLogic Server (WLS) 12.1.2 • Java EE 6対応 • リリース: 2013/7/11 • 商用APサーバーとして、WebSocketに早い段階で対応
  3. 3. ある夜明けのこと エヴァンジェリストに絡んでる人を発見... ※プライバシー保護のため一部加工しています
  4. 4. 何が起こったのか? • その前日のこと
  5. 5. マニュアルを見てみると • http://docs.oracle.com/middleware/1212/wls/WLPRG/websockets_sse.htm 確かに独自実装
  6. 6. WLS 12.1.2のリリースは、2013/7/11なので タイミング的に間に合わなかったっぽい JSR 356
  7. 7. エヴァンジェリストからの援護射撃
  8. 8. ヒゲメン登場 実はこの方、昔のBEAシステムズでWLSサポート担当
  9. 9. 実装イメージ import weblogic.websocket.WebSocketAdapter; import weblogic.websocket.WebSocketConnection; import weblogic.websocket.WebSocketContext; import weblogic.websocket.annotation.WebSocket;   @WebSocket(pathPatterns="/hello", timeout=300) public class MyListener extends WebSocketAdapter { @Override public void onMessage(WebSocketConnection connection, String payload) { // 受信時の処理 }   public void broadcast(String message) { for (WebSocketConnection con : context.getWebSocketConnections()) { if (con.isOpen()) { con.send(message); // 送信 } } } } weglogic.websocket パッケージを利用 WebSocketアノテーション + (WebSocketListenerの実装 or WebSocketAdapterの継承)
  10. 10. (参考) JSR 356の実装イメージ import java.util.*; import javax.websocket.*; import javax.websocket.server.ServerEndpoint;   @ServerEndpoint("/hello") public class MyEndpoint {   private static Set<Session> sessions = Collections.synchronizedSet(new HashSet<Session>()); @OnMessage public void onMessage(String message) { // 受信時の処理 } public void broadcast(String message) { for (Session session : sessions) { if session.isOpen() { session.getAsyncRemote().sendText(message); // 送信 } } } @OnOpen public void onOpen(Session session){ sessions.add(session); } @OnClose public void onClose(Session session){ sessions.remove(session); } }
  11. 11. まとめ • 手早く手厚くWebSocketのサポートを受けたい方 • WebLogic Server 12.1.2 • サポートは弊社の利用をご検討ください m(_ _)m • 標準準拠でなければ使いたくない方 • GlassFish 4.0 • WebLogic Server 12.1.3 (おそらくJSR 356に準拠) • 謝辞 • てらだよしお愛してる • ヒゲメンまじイケメン • ネタに使った@btn*****さん、ごめんなさい
  12. 12. ご清聴いただき、ありがとうございました
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×