Books & Videos

Table of Contents

  1. Chapter 1 Installing and Running Lift

    1. Downloading and Running Lift

    2. Creating a Lift Project from Scratch Using SBT

    3. Developing Using a Text Editor

    4. Incorporating JRebel

    5. Developing Using Eclipse

    6. Developing Using IntelliJ IDEA

    7. Viewing the lift_proto H2 Database

    8. Using the Latest Lift Build

    9. Using a New Version of Scala

  2. Chapter 2 HTML

    1. Testing and Debugging CSS Selectors

    2. Sequencing CSS Selector Operations

    3. Setting Meta Tag Contents

    4. Setting the Page Title

    5. HTML Conditional Comments

    6. Returning Snippet Markup Unchanged

    7. Snippet Not Found When Using HTML5

    8. Avoiding CSS and JavaScript Caching

    9. Adding to the Head of a Page

    10. Custom 404 Page

    11. Other Custom Status Pages

    12. Links in Notices

    13. Link to Download Data

    14. Test on a Req

    15. Rendering Textile Markup

  3. Chapter 3 Forms Processing in Lift

    1. Plain Old Form Processing

    2. Ajax Form Processing

    3. Ajax JSON Form Processing

    4. Use a Date Picker for Input

    5. Making Suggestions with Autocomplete

    6. Offering Choices with Radio Buttons

    7. Conditionally Disable a Checkbox

    8. Use a Select Box with Multiple Options

    9. File Upload

  4. Chapter 4 REST

    1. DRY URLs

    2. Missing File Suffix

    3. Missing .com from Email Addresses

    4. Failing to Match on a File Suffix

    5. Accept Binary Data in a REST Service

    6. Returning JSON

    7. Google Sitemap

    8. Calling REST Service from a Native iOS Application

  5. Chapter 5 JavaScript, Ajax, and Comet

    1. Trigger Server-Side Code from a Button

    2. Call Server When Select Option Changes

    3. Creating Client-Side Actions in Your Scala Code

    4. Focus on a Field on Page Load

    5. Add a CSS Class to an Ajax Form

    6. Running a Template via JavaScript

    7. Move JavaScript to End of Page

    8. Run JavaScript on Comet Session Loss

    9. Ajax File Upload

    10. Format a Wired Cell

  6. Chapter 6 Request Pipeline

    1. Debugging a Request

    2. Running Code When Sessions Are Created (or Destroyed)

    3. Run Code When Lift Shuts Down

    4. Running Stateless

    5. Catch Any Exception

    6. Streaming Content

    7. Serving a File with Access Control

    8. Access Restriction by HTTP Header

    9. Accessing HttpServletRequest

    10. Force HTTPS Requests

  7. Chapter 7 Relational Database Persistence with Record and Squeryl

    1. Configuring Squeryl and Record

    2. Using a JNDI DataSource

    3. One-to-Many Relationship

    4. Many-to-Many Relationship

    5. Adding Validation to a Field

    6. Custom Validation Logic

    7. Modify a Field Value Before It Is Set

    8. Testing with Specs

    9. Store a Random Value in a Column

    10. Automatic Created and Updated Timestamps

    11. Logging SQL

    12. Model a Column with MySQL MEDIUMTEXT

    13. MySQL Character Set Encoding

  8. Chapter 8 MongoDB Persistence with Record

    1. Connecting to a MongoDB Database

    2. Storing a Hash Map in a MongoDB Record

    3. Storing an Enumeration in MongoDB

    4. Embedding a Document Inside a MongoDB Record

    5. Linking Between MongoDB Records

    6. Using Rogue

    7. Storing Geospatial Values

    8. Running Queries from the Scala Console

    9. Unit Testing Record with MongoDB

  9. Chapter 9 Around Lift

    1. Sending Plain-Text Email

    2. Logging Email Rather than Sending

    3. SMTP Authentication

    4. Sending Authenticated Email

    5. Sending Email with Attachments

    6. Run a Task Later

    7. Run Tasks Periodically

    8. Fetching URLs

  10. Chapter 10 Production Deployment

    1. Deploying to CloudBees

    2. Deploying to Amazon Elastic Beanstalk

    3. Deploying to Heroku

    4. Distributing Comet Across Multiple Servers

  11. Chapter 11 Contributing, Bug Reports, and Getting Help

    1. You’d Like Some Help

    2. How to Report Bugs

    3. Contributing Small Code Changes and ScalaDoc

    4. Contributing Documentation

    5. How to Add a New Recipe to This Cookbook

    6. Sharing Code in Modules

  1. Index

  2. Colophon