hello, thanks for reply ...
Edi Weitz edi@agharta.de writes:
On Mon, 26 Feb 2007 20:11:27 +0100, Nicolas Lamirault lam@tuxfamily.org wrote:
i would like to print a customized error message. it is possible ?
Sure.
i try to modify my code like this :
(handler-case (progn ...) (db-connect-error (cond) (setf (hunchentoot:session-value 'error-msg) cond) (hunchentoot:redirect "/test-lam/index")) ...)
he index-handler which print the error message but it doesn't works. The customize error handler catch the exception before
From your example it's impossible to see where the problem is. What's
in the "..." part? Are you sure the error happens in there? Are you sure it's of type DB-CONNECT-ERROR?
oh thanks ! i'm writing a mail which explain my problem, with the backtrace of hunchentoot, and i find my problem !
another question : the
(handler-case (progn ...) (db-connect-error (cond) (setf (hunchentoot:session-value 'error-msg) cond) (hunchentoot:redirect "/test-lam/index")) ...)
works fine. But how the error dispatcher could print the error message to the template ?
i could make this :
(package-type-unknown-error (condition) (hunchentoot:log-message :warn "Clappa system : ~A" condition) (setf (hunchentoot:session-value 'error-msg) (clappa-system:package-type condition)) (hunchentoot:redirect "/clappa/error"))
and creates a dispatcher "/clappa/error" -> error-dispatcher. But how use the error dispatcher (with one arg) :
(defun handle-error (arg) "Modify the Hunchentoot error dispatcher." (declare (ignore arg)) (make-web-page #p"error.html" (list :message (format nil "~A" (hunchentoot:session-value 'error-msg)))))
?
Thanks for your help ...