: Marius Danciu, Tyler Weir, Derek Chen-Becker
: The Definitive Guide to Lift A Scala-based Web Framework
: Apress
: 9781430224228
: 1
: CHF 35.70
:
: Allgemeines, Lexika
: English
: 200
: Wasserzeichen/DRM
: PC/MAC/eReader/Tablet
: PDF

The Definitive Guide to Lift will educate you about Lift, a great framework for building compelling web applications. Lift is designed to make powerful techniques easily accessible, while keeping the overall framework simple and flexible. Lift makes it fun to develop because it lets you focus on the interesting parts of coding.

By the end of this book, you'll be able to create and extend any web application you can think of.



Marius Danciu spent the past 6 years architecting, designing, and leading development of highly scalable server-side applications based on J(2)EE platforms. Most applications were based on the data synchronization techniques (which in turn were based on the SyncML OMA standard) and adjacent technologies. For more than a year, Marius has been a committer to the LiftWeb framework, contributing to the design and implementation of various features in the framework.
Table of Contents1
The Definitive Guide to Lift: A Scala-Based Web Framework8
Acknowledgements9
Chapter 1: Welcome to Lift10
Lifting Off!10
Implementing the View-First Pattern with Lift10
Leveraging the Scala Language11
Supporting Advanced Features Easily12
Getting to Know the Lift Community12
Creating Your First Lift Application13
Conclusion18
Chapter 2: PocketChange19
Keeping Track of Your PocketChange19
Defining the Model20
Creating Your First Template23
Writing Snippets24
Sprinkling a Little AJAX Spice27
Conclusion31
Chapter 3: Lift Fundamentals32
Entering Lift32
Making Standard import Assumptions for This Book33
Bootstrapping in Lift33
Using LiftRules33
Resolving Classes34
Rendering in Lift34
Rendering with Templates35
Rendering with Views36
Getting to Know the Lift Tags38
snippet38
surround39
bind40
embed40
comet40
Merging HTML Headings41
Providing User Feedback42
Using Snippets42
Binding Values in Snippets43
Choosing Between Stateless and Stateful Snippets44
Using Eager Evaluation45
Rewriting URLs45
Adding Custom Dispatch Functions48
Using HTTP Redirects50
Using Cookies50
Storing Session and Request States51
Gathering a Few More Useful Objects53
S object53
SHtml53
Conclusion53
Chapter 4: Forms in Lift54
Practicing Form Fundamentals54
checkbox59
hidden60
link60
text and password61
textarea62
submit62
multiselect62
radio63
select64
selectObj65
untrustedSelect65
Uploading Files65
Conclusion67
Chapter 5: SiteMap68
Defining SiteMap68
Creating the Link Class68
Using ExtLink69
Creating Menu Entries69
Using Nested Menus70
Setting the Global SiteMap71
Customizing the Display72
Using the Hidden LocParam72
Controlling the Menu Text72
Using Menu73
Controlling Access with Menus74
Using If Clauses74
Using the Unless LocParam75
Working with the Template LocParam75
Working with the Snippet and LocSnippets Parameters76
Setting the Title77
Testing a Request77
Categorizing with LocGroup78
Writing Your Own Loc78
Knowing the Corresponding Functions79
Using Type-Safe Parameters80
Conclusion84
Chapter 6: Mapper and Record85
Introducing Mapper and MetaMapper85
Adding Mapper to Your Project86
Setting Up the Database Connection86
Constructing a Mapper-Enabled Class87
Creating Object Relationships90
Indexing93
Mapping Schemas93
Performing Persistence Operations on an Entity94
Creating a Mapper Instance95
Saving a Mapper Instance96
Deleting a Mapper Instance96
Querying for Entities96
Using Comparison QueryParams97
Using Control QueryParams99
Making Joins a Little Friendlier101
Using Utility Functionality101
Generating a Display101
Generating Forms102
Validating Forms103
Supporting CRUD Operations104
Using Life Cycle Callbacks105
Knowing the Base Field Types105
Defining Custom Field Types108
Working with ProtoUser and MegaProtoUser113
Using Advanced Mapper Features114
Using Multiple Databases114
Performing SQL-Based Queries117
Conclusion119
Chapter 7: Advanced Lift Architecture120
Understanding Lift Architecture120
Understanding the Request/Response Life Cycle121
Transforming a Request into a Response122
Processing a Stateful Request123
Mapping Lift Functions125
Exploring LiftResponse in Detail127
Basic HTTP Equivalent Responses127
Redirecting the Client128
Sending Content to the Client129
InMemoryResponse130
StreamingResponse130
Returning Text to the Client131
Returning XML to the Client131
Managing Sessions132
Using Sticky Sessions133
Using Lift’s Garbage Collection134
Wrapping Lift’s Processing Logic135
Using Additional Snippet Features137
Passing Parameters to Snippets137
Using Snippets for Tag Attributes137
Working with Advanced S Object Features139
Managing Cookies139
Managing the Time Zone140
Setting Session DispatchPF Functions140
Rewriting Sessions140
Accessing HTTP Headers140
Managing the Document Type141
Performing Other Functions141
Managing Resources with ResourceServer141
Obtaining HTTP Authentication142
Using Basic HTTP Authentication142
Using HTTP Digest Authentication145
Conclusion147
Chapter 8: Lift and JavaScript148
Using High-Level JavaScript Abstractions148
Understanding JsCmd and JsExp149
Exploring JavaScript Abstraction Examples152
Using jQuery and Other JavaScript Frameworks153
Using XML and Jav