2013-02-07 26 views

Trả lời

1

Tôi cũng đang tìm cách thực hiện điều này. Đây là thông tin tốt nhất mà tôi đã tìm thấy cho đến thời điểm này:

Giả sử một trong những khung công cụ websocket phổ biến nhất có hoạt động tốt với Jersey (Jersey được đóng gói với Dropwizard). Bạn có thể tìm hiểu thêm về nó ở đây: https://github.com/Atmosphere/atmosphere

Ngoài ra, ai đó đã công bố một kho lưu trữ tích hợp hai người họ với nhau: https://github.com/mgutz/dropwizard-atmosphere/

+0

Ví dụ này dường như không hoạt động cho việc bỏ phiếu dài? – Aion

+0

Tôi không chắc chắn; Tôi chưa bao giờ có cơ hội thử nó. – Nate

1

tôi thực hiện WebSockets vào một dự án Dropwizard bằng cách bao gồm CometD.

CometD bao gồm một servlet để xử lý các yêu cầu WS và Dropwizard phơi bày môi trường để cho phép bạn đăng ký các servlet tùy ý.

Một trích đoạn nhỏ từ ứng dụng của tôi (Groovy):

environment.addServlet(new Initializer(httpClient, amqpConsumer), "/_initializer") 
      .setInitOrder(2) 

    environment.addServlet(AnnotationCometdServlet, "/cometd/*") 
      .addInitParams([ 
      transports: 'org.cometd.websocket.server.WebSocketTransport', 
      services: EventService.getCanonicalName(), 
      jsonContext: 'org.cometd.server.JacksonJSONContextServer', 
      maxSessionsPerBrowser: serviceConfiguration.maxBrowserSessions.toString(), 
      maxInterval: '7200', 
      logLevel: "2" 
    ]).setInitOrder(1) 

Một servlet initializer làm cho mọi thứ dễ dàng, như thể hiện trong các hướng dẫn CometD.

7

Tôi đã làm việc với cùng một vấn đề, và nghĩ rằng tôi muốn chia sẻ giải pháp của tôi: http://cvwjensen.wordpress.com/2014/08/02/websockets-in-dropwizard/

tôi sử dụng khuôn khổ Atmosphere và giá trị mặc định giải pháp cho sử dụng WebSockets, nhưng có thể hạ xuống dài bỏ phiếu nếu được yêu cầu.

Điều đó là đủ để bạn bắt đầu ...

Các vấn đề liên quan