Closed milt closed 7 years ago
An attempt to bind multiple parameters into a query like so:
"/:foo/:bar" {:get #vase/query {:name :myapi.v1/a-query :params [foo bar] :query [:find ?e :in $ ?foo ?bar :where [?e :foo ?foo] [?e :bar ?bar]]}}
Will fail, with an error related to parsing params:
clojure.lang.ExceptionInfo: Interceptor Exception: Wrong number of args (7) passed to: actions/coerce-arg-val
It should allow queries with multiple inputs bound.
Error processing request! Exception: clojure.lang.ExceptionInfo: Interceptor Exception: Wrong number of args (7) passed to: actions/coerce-arg-val at clojure.core$ex_info.invokeStatic (core.clj:4725) clojure.core$ex_info.invoke (core.clj:4725) io.pedestal.interceptor.chain$throwable__GT_ex_info.invokeStatic (chain.clj:33) io.pedestal.interceptor.chain$throwable__GT_ex_info.invoke (chain.clj:32) io.pedestal.interceptor.chain$try_f.invokeStatic (chain.clj:55) io.pedestal.interceptor.chain$try_f.invoke (chain.clj:42) io.pedestal.interceptor.chain$process_all_with_binding.invokeStatic (chain.clj:169) io.pedestal.interceptor.chain$process_all_with_binding.invoke (chain.clj:144) io.pedestal.interceptor.chain$process_all$fn__8778.invoke (chain.clj:186) clojure.lang.AFn.applyToHelper (AFn.java:152) clojure.lang.AFn.applyTo (AFn.java:144) clojure.core$apply.invokeStatic (core.clj:657) clojure.core$with_bindings_STAR_.invokeStatic (core.clj:1963) clojure.core$with_bindings_STAR_.doInvoke (core.clj:1963) clojure.lang.RestFn.invoke (RestFn.java:425) io.pedestal.interceptor.chain$process_all.invokeStatic (chain.clj:184) io.pedestal.interceptor.chain$process_all.invoke (chain.clj:180) io.pedestal.interceptor.chain$enter_all.invokeStatic (chain.clj:233) io.pedestal.interceptor.chain$enter_all.invoke (chain.clj:227) io.pedestal.interceptor.chain$execute.invokeStatic (chain.clj:377) io.pedestal.interceptor.chain$execute.invoke (chain.clj:350) io.pedestal.interceptor.chain$execute.invokeStatic (chain.clj:387) io.pedestal.interceptor.chain$execute.invoke (chain.clj:350) io.pedestal.http.impl.servlet_interceptor$interceptor_service_fn$fn__12774.invoke (servlet_interceptor.clj:350) io.pedestal.http.servlet.FnServlet.service (servlet.clj:28) org.eclipse.jetty.servlet.ServletHolder.handle (ServletHolder.java:838) org.eclipse.jetty.servlet.ServletHandler.doHandle (ServletHandler.java:543) org.eclipse.jetty.server.handler.ScopedHandler.nextHandle (ScopedHandler.java:188) org.eclipse.jetty.server.handler.ContextHandler.doHandle (ContextHandler.java:1228) org.eclipse.jetty.server.handler.ScopedHandler.nextScope (ScopedHandler.java:168) org.eclipse.jetty.servlet.ServletHandler.doScope (ServletHandler.java:481) org.eclipse.jetty.server.handler.ScopedHandler.nextScope (ScopedHandler.java:166) org.eclipse.jetty.server.handler.ContextHandler.doScope (ContextHandler.java:1130) org.eclipse.jetty.server.handler.ScopedHandler.handle (ScopedHandler.java:141) org.eclipse.jetty.server.handler.HandlerWrapper.handle (HandlerWrapper.java:132) org.eclipse.jetty.server.Server.handle (Server.java:564) org.eclipse.jetty.server.HttpChannel.handle (HttpChannel.java:318) org.eclipse.jetty.server.HttpConnection.onFillable (HttpConnection.java:251) org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded (AbstractConnection.java:279) org.eclipse.jetty.io.FillInterest.fillable (FillInterest.java:112) org.eclipse.jetty.io.ChannelEndPoint$2.run (ChannelEndPoint.java:124) org.eclipse.jetty.util.thread.QueuedThreadPool.runJob (QueuedThreadPool.java:672) org.eclipse.jetty.util.thread.QueuedThreadPool$2.run (QueuedThreadPool.java:590) java.lang.Thread.run (Thread.java:745) Caused by: clojure.lang.ArityException: Wrong number of args (7) passed to: actions/coerce-arg-val at clojure.lang.AFn.throwArity (AFn.java:429) clojure.lang.AFn.invoke (AFn.java:57) clojure.core$eval30709$fn__30711.invoke (NO_SOURCE_FILE:0) io.pedestal.interceptor.chain$try_f.invokeStatic (chain.clj:52) io.pedestal.interceptor.chain$try_f.invoke (chain.clj:42) io.pedestal.interceptor.chain$process_all_with_binding.invokeStatic (chain.clj:169) io.pedestal.interceptor.chain$process_all_with_binding.invoke (chain.clj:144) io.pedestal.interceptor.chain$process_all$fn__8778.invoke (chain.clj:186) clojure.lang.AFn.applyToHelper (AFn.java:152) clojure.lang.AFn.applyTo (AFn.java:144) clojure.core$apply.invokeStatic (core.clj:657) clojure.core$with_bindings_STAR_.invokeStatic (core.clj:1963) clojure.core$with_bindings_STAR_.doInvoke (core.clj:1963) clojure.lang.RestFn.invoke (RestFn.java:425) io.pedestal.interceptor.chain$process_all.invokeStatic (chain.clj:184) io.pedestal.interceptor.chain$process_all.invoke (chain.clj:180) io.pedestal.interceptor.chain$enter_all.invokeStatic (chain.clj:233) io.pedestal.interceptor.chain$enter_all.invoke (chain.clj:227) io.pedestal.interceptor.chain$execute.invokeStatic (chain.clj:377) io.pedestal.interceptor.chain$execute.invoke (chain.clj:350) io.pedestal.interceptor.chain$execute.invokeStatic (chain.clj:387) io.pedestal.interceptor.chain$execute.invoke (chain.clj:350) io.pedestal.http.impl.servlet_interceptor$interceptor_service_fn$fn__12774.invoke (servlet_interceptor.clj:350) io.pedestal.http.servlet.FnServlet.service (servlet.clj:28) org.eclipse.jetty.servlet.ServletHolder.handle (ServletHolder.java:838) org.eclipse.jetty.servlet.ServletHandler.doHandle (ServletHandler.java:543) org.eclipse.jetty.server.handler.ScopedHandler.nextHandle (ScopedHandler.java:188) org.eclipse.jetty.server.handler.ContextHandler.doHandle (ContextHandler.java:1228) org.eclipse.jetty.server.handler.ScopedHandler.nextScope (ScopedHandler.java:168) org.eclipse.jetty.servlet.ServletHandler.doScope (ServletHandler.java:481) org.eclipse.jetty.server.handler.ScopedHandler.nextScope (ScopedHandler.java:166) org.eclipse.jetty.server.handler.ContextHandler.doScope (ContextHandler.java:1130) org.eclipse.jetty.server.handler.ScopedHandler.handle (ScopedHandler.java:141) org.eclipse.jetty.server.handler.HandlerWrapper.handle (HandlerWrapper.java:132) org.eclipse.jetty.server.Server.handle (Server.java:564) org.eclipse.jetty.server.HttpChannel.handle (HttpChannel.java:318) org.eclipse.jetty.server.HttpConnection.onFillable (HttpConnection.java:251) org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded (AbstractConnection.java:279) org.eclipse.jetty.io.FillInterest.fillable (FillInterest.java:112) org.eclipse.jetty.io.ChannelEndPoint$2.run (ChannelEndPoint.java:124) org.eclipse.jetty.util.thread.QueuedThreadPool.runJob (QueuedThreadPool.java:672) org.eclipse.jetty.util.thread.QueuedThreadPool$2.run (QueuedThreadPool.java:590) java.lang.Thread.run (Thread.java:745)
Define a get method with a vase query literal (as above), and specify more than one param from the path, query string, etc.
Mac OS 10.12.3
lein --version
Leiningen 2.7.1 on Java 1.8.0_111 Java HotSpot(TM) 64-Bit Server VM
Pedestal: 0.5.2 Vase: 0.9.0 - current master
0.5.2
0.9.0
Description
An attempt to bind multiple parameters into a query like so:
Will fail, with an error related to parsing params:
Expected Behavior
It should allow queries with multiple inputs bound.
Actual Behavior
Steps to reproduce
Define a get method with a vase query literal (as above), and specify more than one param from the path, query string, etc.
Environment
Operating System (including version).
Mac OS 10.12.3
Your current Leiningen/Boot/Maven version (
lein --version
)Leiningen 2.7.1 on Java 1.8.0_111 Java HotSpot(TM) 64-Bit Server VM
Pedestal and Vase version
Pedestal:
0.5.2
Vase:0.9.0
- current master