Book Image

Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON

By : Bhakti Mehta, Masoud Kalali
Book Image

Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON

By: Bhakti Mehta, Masoud Kalali

Overview of this book

<p>As the technology landscape moves focus towards smaller devices, the need for building scalable, flexible, lightweight, and real-time communications-based applications grows. HTML 5 and Java EE 7 provide a new synthesis of technologies that demonstrate tremendous scope and potential in areas of device independence, asynchronous communication, interoperability, and portability.<br /><br />Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON is a practical, hands-on guide that provides you with clear and pragmatic information to take advantage of the real power behind HTML5 and Java EE technologies. This book also gives you a good foundation for using them in your applications.<br /><br />Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON looks at the different HTML5-based Java EE 7 API, and takes a deep dive into the individual areas of technologies to cover basic to advanced concepts, and also provides best practices for each API. You will also learn how to build a REST-based Event Notification Application using the Twitter API, tying all the different technologies together that we will cover. You will also take a look at integrating different Java EE APIs to build a Library Application. If you want to take advantage of using the new HTML5 technologies and Java EE 7 platform, then this is the book for you. You will learn everything you need to know to build portable RESTful Web Services with JAX-RS 2.0, Web Sockets, JSON, and Server-Sent Events.</p>
Table of Contents (12 chapters)

Best practices for applications based on Server-sent Events


The following chapter covers the best practices for applications based on Server-sent Events. The following topics will be covered:

  • Checking if the event source's origin is as expected

  • Working with proxy servers and Server-sent Events

  • Handling fault tolerance for Server-sent Events

Checking if the event source's origin is as expected

The following snippet shows how to check for the origin of the event source so that it matches the application's origin.

if (e.origin != 'http://foo.com') {
alert('Origin was not http://foo.com');
return;

An event stream from an origin distinct from the origin of the content consuming the event stream can result in information leakage. When the events are obtained from the server, it is good practice to check for the events originator to see if it is as expected.

Working with proxy servers and Server-sent Events

Proxy servers can drop HTTP connections after a short timeout. To avoid such dropped connections...