Index: trunk/lib/Bookmarks/Controller.pm
===================================================================
--- trunk/lib/Bookmarks/Controller.pm	(revision 95)
+++ trunk/lib/Bookmarks/Controller.pm	(revision 98)
@@ -27,6 +27,5 @@
 );
 has request => (
-    is => 'ro',
-    required => 1,
+    is => 'rw',
 );
 
Index: trunk/lib/BookmarksApp.pm
===================================================================
--- trunk/lib/BookmarksApp.pm	(revision 95)
+++ trunk/lib/BookmarksApp.pm	(revision 98)
@@ -94,4 +94,9 @@
         }
     );
+    $self->_controller(
+        Bookmarks::Controller->new({
+            dbname  => $self->config->{dbname},
+        })
+    );
 }
 
@@ -101,10 +106,5 @@
 
     # initialize the controller based on this request
-    $self->_controller(
-        Bookmarks::Controller->new({
-            request => Plack::Request->new($env),
-            dbname  => $self->config->{dbname},
-        })
-    );
+    $self->_controller->request(Plack::Request->new($env));
 
     # dispatch to the app
