When I try to return a map (json) from handle-malformed, the server crashes with the following exception:
>> java.lang.IllegalArgumentException:
>> No method in multimethod 'render-map-generic' for dispatch value: null
>> MultiFn.java:160 clojure.lang.MultiFn.getFn
>> MultiFn.java:231 clojure.lang.MultiFn.invoke
>> representation.clj:210 liberator.representation/fn
>> representation.clj:23 liberator.representation/fn[fn]
>> core.clj:176 liberator.core/run-handler
>> core.clj:485 liberator.core/handle-malformed
>> core.clj:93 liberator.core/decide
...
The following code is an example:
(defresource something
...
:malformed?
(fn [context]
(let [params (get-in context [:request :params])]
(empty? (params :imageData))))
:handle-malformed
(fn [_]
{:error "Error: imageData required"})
...
If the handle-malformed function is replaced with a string, the code works and a plain text string is returned to the client, however this is not a workable solution as the api needs to consistently deal with json rather than sometimes returning plain text. :)
Seeing as other handle-xyz branches can return map data, I presume that handle-malformed should be able to do the same?
Tested on Ubuntu 13.10 , liberator 0.10.0 .
When I try to return a map (json) from handle-malformed, the server crashes with the following exception:
The following code is an example:
If the handle-malformed function is replaced with a string, the code works and a plain text string is returned to the client, however this is not a workable solution as the api needs to consistently deal with json rather than sometimes returning plain text. :)
Seeing as other handle-xyz branches can return map data, I presume that handle-malformed should be able to do the same?
Tested on Ubuntu 13.10 , liberator 0.10.0 .