[hunchentoot-devel] *show-lisp-errors-p* ignored?

Andrei Stebakov lispercat at gmail.com
Tue Jul 24 18:33:19 UTC 2012


I see now, thanks a lot.
Andrew

On Tue, Jul 24, 2012 at 2:00 PM, Sebastian Tennant
<sebyte at smolny.plus.com> wrote:
> Quoth Andrei Stebakov <lispercat at gmail.com>:
>> As I understand the whole acceptor-status-message has to be overloaded?
>
>  (use-package :hunchentoot)
>
> First you have to subclass acceptor.  For example:
>
>  (defclass custom-acceptor (acceptor) nil)
>
> Now you can specialise acceptor-status-message on custom-acceptor like so:
>
>   (defmethod acceptor-status-message
>       ((acceptor custom-acceptor) http-status-code &rest args &key &allow-other-keys)
>     (when (equal http-status-code +http-internal-server-error+)
>       (apply custom-error-page args))
>     (call-next-method))
>
> Finally define custom-error-page:
>
>   (defun custom-error-page (k1 error k2 backtrace)
>     (format nil
>       "<html>
>          <head></head>
>          <body>
>          <h2>whoops!</h2>
>          <p>Error: ~a</p>
>          ~a
>          </body>
>        </html>"
>       error backtrace))
>
> Don't forget to start your custom-acceptor like so:
>
>   (tbnl:start (make-instance 'custom-acceptor ...))
>
> Hope this helps.  None of this code is tested by the way.
>
> Seb
> --
> Emacs' AlsaPlayer - Music Without Jolts
> Lightweight, full-featured and mindful of your idyllic happiness.
> http://home.gna.org/eap
>
>
> _______________________________________________
> tbnl-devel site list
> tbnl-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/tbnl-devel




More information about the Tbnl-devel mailing list