Play! Framework for Web Application Development
3.6 (55 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
274 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Play! Framework for Web Application Development to your Wishlist.

Add to Wishlist

Play! Framework for Web Application Development

Leverage the awesome Play! Framework to develop Java web applications
3.6 (55 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
274 students enrolled
Created by Packt Publishing
Last updated 12/2014
Current price: $12 Original price: $85 Discount: 86% off
3 days left at this price!
30-Day Money-Back Guarantee
  • 2 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Create reliable Java web applications
  • Develop your own modules so that you can re-use code with the DRY principle
  • Deploy your application for free and share it with the world
  • Put the fun back into Java application development by using the Play! Framework
  • Test every aspect of your applications using the Play! Framework’s powerful testing functionality
  • Use Bootstrap to create attractive UIs for your Java applications
  • Create powerful APIs for your application
  • Consume Twitter’s API to add social networking data to your application
View Curriculum
  • All you need to start this course is basic Java knowledge and the desire to create powerful web applications using the Play! Framework.
  • Created with simplicity in mind, this practical, hands-on course teaches using a sample web application example throughout.

If you have always wanted to learn how to create great Java web applications then this course is for you. This friendly, hands-on course will show you how to overcome the inherent complexity in writing Java web applications by leveraging the Play Framework.

The course starts by showing you how to create a basic agenda application. You’ll then add validations, internationalization and custom error pages before enhancing it using the popular frontend framework Twitter Bootstrap. Additionally you’ll learn how to create modules to re-utilize code for future projects. You’ll finish the course by adding a JSON API to your application so that it can consume Twitter’s API using async requests.

By the end of Play Framework for Web Application Development you will be a more confident developer able to create attractive, fast, and scalable applications using the Play Framework.

About the Author

Martin Gontovnikas is a software engineer living in Buenos Aires, Argentina. He’s an IT enthusiast who started programming at the age of 12, when he decided that this was going to be his life. Martin is passionate about technology and he always keeps up to date with everything regarding IT.

He started as a .NET programmer and converted into Java early on as he saw that most of the open source and the greatest technology contributions were in this area. He continued working on this while trying JavaScript, Ruby, and Scala later on. After learning about Rails, he started to look for a framework that could be as good and productive for the JVM, as it is written from scratch and more robust. That’s when he discovered Play! 1 and Play! 2. He started working with these two with Java as well as Scala, and hasn’t looked back since.

Who is the target audience?
  • This video course is for Java programmers who want to develop applications in a simple and straightforward manner.
Compare to Other Play Framework Courses
Curriculum For This Course
30 Lectures
Introduction to Play!
3 Lectures 13:17

WebApps made in Java require people to know a lot of tools and frameworks and makes people write a lot of Boilerplate.

Preview 04:19

Learning the history and the reason why Play! was created now.

What Is Play!?

Understanding Play!'s advantages in everyday coding compared to other frameworks and checking out real WebApps using Play!.

Play! in the Real World
My First WebApp
7 Lectures 28:51

We create the Agenda project and the Eclipse / NetBeans / IntelliJ files to import them to the IDE.

Creating a Play! Project

The database and DDL creation was finished along with the Java model to interact with it.

Creating the Models

We are now able to transform URLs to actions.


We are now able to handle requests from the user's browser.

Creating the Controllers

Bind parameters from the request to create objects and save them to the database.

Using Forms

We can create HTML files using the Controllers variable and template inheritance.

Preview 07:03

The Agenda project is finished so that we can use it to store our friend's information.

Let's Run the App
Let’s Do Some Testing
5 Lectures 20:48

We are now sure that the model is working correctly.

Preview 05:37

We're now sure that the templates are being displayed correctly.

Are the Templates Working?

We're now sure that the controllers get the correct information and display them correctly as well.

Let's Check the Controllers

We're now sure that the URLs and HTTP methods are exactly the ones we wanted.

Is It Routing?

We're now sure that the application works well when it is live.

Let's Test This End to End
Let’s Improve the App
3 Lectures 14:33

When the contact added has an invalid field, it's shown to the user now and not saved in the DB.

Preview 03:43

We compose actions to use the DRY principle (don't repeat yourself).

Creating Nested Actions

Basic auth is used to restrict access to our application.

Securing Our App
Let’s Make the App Cooler
4 Lectures 21:53

As the default 404 page is quite ugly, Play! Let’s create our own.

Let's Create a Custom 404 Page

We're going to use messages from Play! to create texts in English and Spanish for our app.

Preview 03:14

We're going to learn how to use Twitter Bootstrap for form fields and for any other DOM element.

I Want to Use Twitter Bootstrap

We're going to deploy this app in Heroku, which is free for basic usage.

Let's Deploy This
I Love Modules
3 Lectures 10:42

Modules help us not repeat ourselves and to comply with DRY.

What Is a Module?

We're creating a module with generic code to use it in another project without copy-pasting.

Creating a Module

Using modules lets us use code that we've written before or that another person has, so that we don't have to reinvent the wheel.

Preview 04:06
Hey, What about APIs?
5 Lectures 17:19

BodyParsers let us tell Play! how to convert the body of the request to a Java value.


We want to create a new API for creating contacts in our app.

Consuming JSON

We're going to use JSON library from Play! to return JSON to the user.

Serving JSON

Play! provides the WS library to make requests to external URLs.

Using External WebServices

AsyncResult solves the c10k problem by not creating one thread per request but cycling them while waiting for responses.

Using AsyncResult
About the Instructor
Packt Publishing
3.9 Average rating
8,274 Reviews
59,236 Students
687 Courses
Tech Knowledge in Motion

Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.

With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.

From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.

Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.