
Lift Cookbook
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Content
- Intro
- Copyright
- Table of Contents
- Preface
- Contributors
- Source
- Updates
- Software Versions
- Conventions Used in This Book
- Using Code Examples
- Safari® Books Online
- How to Contact Us
- Acknowledgments
- Chapter 1. Installing and Running Lift
- 1.1. Downloading and Running Lift
- Problem
- Solution
- Discussion
- See Also
- 1.2. Creating a Lift Project from Scratch Using SBT
- Problem
- Solution
- Discussion
- See Also
- 1.3. Developing Using a Text Editor
- Problem
- Solution
- Discussion
- See Also
- 1.4. Incorporating JRebel
- Problem
- Solutions
- Discussion
- See Also
- 1.5. Developing Using Eclipse
- Problem
- Solution
- Discussion
- See Also
- 1.6. Developing Using IntelliJ IDEA
- Problem
- Solution
- Discussion
- See Also
- 1.7. Viewing the lift_proto H2 Database
- Problem
- Solution
- Discussion
- See Also
- 1.8. Using the Latest Lift Build
- Problem
- Solution
- Discussion
- See Also
- 1.9. Using a New Version of Scala
- Problem
- Solution
- Discussion
- See Also
- Chapter 2. HTML
- 2.1. Testing and Debugging CSS Selectors
- Problem
- Solution
- Discussion
- See Also
- 2.2. Sequencing CSS Selector Operations
- Problem
- Solution
- Discussion
- See Also
- 2.3. Setting Meta Tag Contents
- Problem
- Solution
- Discussion
- See Also
- 2.4. Setting the Page Title
- Problem
- Solution
- Discussion
- See Also
- 2.5. HTML Conditional Comments
- Problem
- Solution
- Discussion
- See Also
- 2.6. Returning Snippet Markup Unchanged
- Problem
- Solution
- Discussion
- 2.7. Snippet Not Found When Using HTML5
- Problem
- Solution
- Discussion
- See Also
- 2.8. Avoiding CSS and JavaScript Caching
- Problem
- Solution
- Discussion
- See Also
- 2.9. Adding to the Head of a Page
- Problem
- Solution
- Discussion
- See Also
- 2.10. Custom 404 Page
- Problem
- Solution
- Discussion
- See Also
- 2.11. Other Custom Status Pages
- Problem
- Solution
- Discussion
- See Also
- 2.12. Links in Notices
- Problem
- Solution
- Discussion
- See Also
- 2.13. Link to Download Data
- Problem
- Solution
- Discussion
- See Also
- 2.14. Test on a Req
- Problem
- Solution
- Discussion
- See Also
- 2.15. Rendering Textile Markup
- Problem
- Solution
- Discussion
- See Also
- Chapter 3. Forms Processing in Lift
- 3.1. Plain Old Form Processing
- Problem
- Solution
- Discussion
- See Also
- 3.2. Ajax Form Processing
- Problem
- Solution
- Discussion
- See Also
- 3.3. Ajax JSON Form Processing
- Problem
- Solution
- Discussion
- See Also
- 3.4. Use a Date Picker for Input
- Problem
- Solution
- Discussion
- See Also
- 3.5. Making Suggestions with Autocomplete
- Problem
- Solution
- Discussion
- See Also
- 3.6. Offering Choices with Radio Buttons
- Problem
- Solution
- Discussion
- 3.7. Conditionally Disable a Checkbox
- Problem
- Solution
- Discussion
- See Also
- 3.8. Use a Select Box with Multiple Options
- Problem
- Solution
- Discussion
- See Also
- 3.9. File Upload
- Problem
- Solution
- Discussion
- See Also
- Chapter 4. REST
- 4.1. DRY URLs
- Problem
- Solution
- Discussion
- See Also
- 4.2. Missing File Suffix
- Problem
- Solution
- Discussion
- See Also
- 4.3. Missing .com from Email Addresses
- Solution
- Discussion
- See Also
- 4.4. Failing to Match on a File Suffix
- Problem
- Solution
- Discussion
- See Also
- 4.5. Accept Binary Data in a REST Service
- Problem
- Solution
- Discussion
- See Also
- 4.6. Returning JSON
- Problem
- Solution
- Discussion
- See Also
- 4.7. Google Sitemap
- Problem
- Solution
- Discussion
- See Also
- 4.8. Calling REST Service from a Native iOS Application
- Problem
- Solution
- Discussion
- See Also
- Chapter 5. JavaScript, Ajax, and Comet
- 5.1. Trigger Server-Side Code from a Button
- Problem
- Solution
- Discussion
- See Also
- 5.2. Call Server When Select Option Changes
- Problem
- Solution
- Discussion
- See Also
- 5.3. Creating Client-Side Actions in Your Scala Code
- Problem
- Solution
- Discussion
- See Also
- 5.4. Focus on a Field on Page Load
- Problem
- Solution
- Discussion
- See Also
- 5.5. Add a CSS Class to an Ajax Form
- Problem
- Solution
- Discussion
- See Also
- 5.6. Running a Template via JavaScript
- Problem
- Solution
- Discussion
- See Also
- 5.7. Move JavaScript to End of Page
- Problem
- Solution
- Discussion
- See Also
- 5.8. Run JavaScript on Comet Session Loss
- Problem
- Solution
- Discussion
- See Also
- 5.9. Ajax File Upload
- Problem
- Solution
- Discussion
- See Also
- 5.10. Format a Wired Cell
- Problem
- Solution
- Discussion
- See Also
- Chapter 6. Request Pipeline
- 6.1. Debugging a Request
- Problem
- Solution
- Discussion
- See Also
- 6.2. Running Code When Sessions Are Created (or Destroyed)
- Problem
- Solution
- Discussion
- See Also
- 6.3. Run Code When Lift Shuts Down
- Problem
- Solution
- Discussion
- See Also
- 6.4. Running Stateless
- Problem
- Solution
- Discussion
- See Also
- 6.5. Catch Any Exception
- Problem
- Solution
- Discussion
- See Also
- 6.6. Streaming Content
- Problem
- Solution
- Discussion
- See Also
- 6.7. Serving a File with Access Control
- Problem
- Solution
- Discussion
- See Also
- 6.8. Access Restriction by HTTP Header
- Problem
- Solution
- Discussion
- See Also
- 6.9. Accessing HttpServletRequest
- Problem
- Solution
- Discussion
- 6.10. Force HTTPS Requests
- Problem
- Solution
- Discussion
- Chapter 7. Relational Database Persistence with Record and Squeryl
- 7.1. Configuring Squeryl and Record
- Problem
- Solution
- Discussion
- See Also
- 7.2. Using a JNDI DataSource
- Problem
- Solution
- Discussion
- See Also
- 7.3. One-to-Many Relationship
- Problem
- Solution
- Discussion
- See Also
- 7.4. Many-to-Many Relationship
- Problem
- Solution
- Discussion
- See Also
- 7.5. Adding Validation to a Field
- Problem
- Solution
- Discussion
- See Also
- 7.6. Custom Validation Logic
- Problem
- Solution
- Discussion
- See Also
- 7.7. Modify a Field Value Before It Is Set
- Problem
- Solution
- Discussion
- See Also
- 7.8. Testing with Specs
- Problem
- Solution
- Discussion
- See Also
- 7.9. Store a Random Value in a Column
- Problem
- Solution
- Discussion
- See Also
- 7.10. Automatic Created and Updated Timestamps
- Problem
- Solution
- Discussion
- See Also
- 7.11. Logging SQL
- Problem
- Solution
- Discussion
- See Also
- 7.12. Model a Column with MySQL MEDIUMTEXT
- Problem
- Solution
- Discussion
- See Also
- 7.13. MySQL Character Set Encoding
- Problem
- Solution
- Discussion
- See Also
- Chapter 8. MongoDB Persistence with Record
- 8.1. Connecting to a MongoDB Database
- Problem
- Solution
- Discussion
- See Also
- 8.2. Storing a Hash Map in a MongoDB Record
- Problem
- Solution
- Discussion
- See Also
- 8.3. Storing an Enumeration in MongoDB
- Problem
- Solution
- Discussion
- See Also
- 8.4. Embedding a Document Inside a MongoDB Record
- Problem
- Solution
- Discussion
- See Also
- 8.5. Linking Between MongoDB Records
- Problem
- Solution
- Discussion
- See Also
- 8.6. Using Rogue
- Problem
- Solution
- Discussion
- See Also
- 8.7. Storing Geospatial Values
- Problem
- Solution
- Discussion
- See Also
- 8.8. Running Queries from the Scala Console
- Problem
- Solution
- Discussion
- See Also
- 8.9. Unit Testing Record with MongoDB
- Problem
- Solution
- Discussion
- See Also
- Chapter 9. Around Lift
- 9.1. Sending Plain-Text Email
- Problem
- Solution
- Discussion
- See Also
- 9.2. Logging Email Rather than Sending
- Problem
- Solution
- Discussion
- See Also
- 9.3. SMTP Authentication
- Problem
- Solution
- Discussion
- See Also
- 9.4. Sending Authenticated Email
- Problem
- Solution
- Discussion
- See Also
- 9.5. Sending Email with Attachments
- Problem
- Solution
- Discussion
- See Also
- 9.6. Run a Task Later
- Problem
- Solution
- Discussion
- See Also
- 9.7. Run Tasks Periodically
- Problem
- Solution
- Discussion
- See Also
- 9.8. Fetching URLs
- Problem
- Solution
- Discussion
- See Also
- Chapter 10. Production Deployment
- 10.1. Deploying to CloudBees
- Problem
- Solution
- Discussion
- See Also
- 10.2. Deploying to Amazon Elastic Beanstalk
- Problem
- Solution
- Discussion
- See Also
- 10.3. Deploying to Heroku
- Problem
- Solution
- Discussion
- See Also
- 10.4. Distributing Comet Across Multiple Servers
- Problem
- Solution
- Discussion
- See Also
- Chapter 11. Contributing, Bug Reports, and Getting Help
- 11.1. You'd Like Some Help
- Problem
- Solution
- Discussion
- See Also
- 11.2. How to Report Bugs
- Problem
- Solution
- Discussion
- See Also
- 11.3. Contributing Small Code Changes and ScalaDoc
- Problem
- Solution
- Discussion
- See Also
- 11.4. Contributing Documentation
- Problem
- Solution
- Discussion
- See Also
- 11.5. How to Add a New Recipe to This Cookbook
- Problem
- Solution
- Discussion
- See Also
- 11.6. Sharing Code in Modules
- Problem
- Solution
- Discussion
- See Also
- Index
- About the Author
System requirements
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.