diff --git a/Happstack/Server/Helpers.hs b/Happstack/Server/Helpers.hs
--- a/Happstack/Server/Helpers.hs
+++ b/Happstack/Server/Helpers.hs
@@ -1,5 +1,5 @@
 module Happstack.Server.Helpers
-    ( smartserver, exactdir, smartserver'
+    ( smartserver, exactdir, smartserver',getData'
     ) where
 
 import Happstack.Server
@@ -46,3 +46,6 @@
   if p rq
     then sps
     else mzero
+
+getData' :: (ServerMonad m, FromData a, MonadPlus m) => m a
+getData' = getData >>= maybe mzero return
diff --git a/happstack-helpers.cabal b/happstack-helpers.cabal
--- a/happstack-helpers.cabal
+++ b/happstack-helpers.cabal
@@ -1,5 +1,5 @@
 Name: happstack-helpers
-Version: 0.21
+Version: 0.22
 License: BSD3
 License-file: bsd3.txt
 Description: Functions I found I was using repeatedly when programming Happstack based web-apps. 
