appengine magic,几乎满意,但在repl上获得空指针(appengine magic, almost satisfied but getting null pointer on repl)
我在dev_appserver.sh上使用了webapp(用appengine-magic和lein制作),但因为我需要更多的交互性而不需要重新启动服务器,所以我更喜欢使用repl。 现在的问题是,在我这之后
(require '[appengine-magic.core :as ae])
,(use 'myapp.core)
并尝试提供应用程序(ae/serve myapp)
我得到了这个例外:[Thrown class java.lang.NullPointerException] Backtrace: 0: java.io.File.<init>(File.java:360) 1: sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 2: sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) 3: sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) 4: java.lang.reflect.Constructor.newInstance(Constructor.java:513) 5: clojure.lang.Reflector.invokeConstructor(Reflector.java:160) 6: appengine_magic.core$start.doInvoke(core_local.clj:85) 7: clojure.lang.RestFn.invoke(RestFn.java:439) 8: appengine_magic.core$serve.doInvoke(core_local.clj:139) 9: clojure.lang.RestFn.invoke(RestFn.java:410) 10: user$eval2264.invoke(NO_SOURCE_FILE:1) 11: clojure.lang.Compiler.eval(Compiler.java:5424) 12: clojure.lang.Compiler.eval(Compiler.java:5391) 13: clojure.core$eval.invoke(core.clj:2382) 14: swank.commands.basic$eval_region.invoke(basic.clj:47) 15: swank.commands.basic$eval_region.invoke(basic.clj:37) 16: swank.commands.basic$eval807$listener_eval__808.invoke(basic.clj:71) 17: clojure.lang.Var.invoke(Var.java:365) 18: user$eval2262.invoke(NO_SOURCE_FILE) 19: clojure.lang.Compiler.eval(Compiler.java:5424) 20: clojure.lang.Compiler.eval(Compiler.java:5391) 21: clojure.core$eval.invoke(core.clj:2382) 22: swank.core$eval_in_emacs_package.invoke(core.clj:92) 23: swank.core$eval_for_emacs.invoke(core.clj:239) 24: clojure.lang.Var.invoke(Var.java:373) 25: clojure.lang.AFn.applyToHelper(AFn.java:167) 26: clojure.lang.Var.applyTo(Var.java:482) 27: clojure.core$apply.invoke(core.clj:540) 28: swank.core$eval_from_control.invoke(core.clj:99) 29: swank.core$eval_loop.invoke(core.clj:104) 30: swank.core$spawn_repl_thread$fn__493$fn__494.invoke(core.clj:309) 31: clojure.lang.AFn.applyToHelper(AFn.java:159) 32: clojure.lang.AFn.applyTo(AFn.java:151) 33: clojure.core$apply.invoke(core.clj:540) 34: swank.core$spawn_repl_thread$fn__493.doInvoke(core.clj:306) 35: clojure.lang.RestFn.invoke(RestFn.java:397) 36: clojure.lang.AFn.run(AFn.java:24) 37: java.lang.Thread.run(Thread.java:680)
我也试过(in-ns'myapp.core)但效果相同。 当我直接在repl和服务上粘贴web应用程序处理程序然后它可以工作,但不是从我的文件。
调用myapp或myapp-handler清楚地给出了“对象”所以我应该真的在正确的命名空间...
project.clj
(defproject myapp "1.0.0-SNAPSHOT" :description "FIXME: write description" :dependencies [ [org.clojure/clojure "1.2.1"] [compojure "0.6.2"] ] :dev-dependencies [ [appengine-magic "0.4.1"] [ring/ring-devel "0.3.7"] ])
core.clj就是这么简单:
(ns myapp.core (:use compojure.core) (:require [appengine-magic.core :as ae])) (defroutes myapp-handler (GET "/" req {:status 200 :headers {"Content-Type" "text/plain"} :body "Hello, world!!!"})) (ae/def-appengine-app myapp #'myapp-handler)
I got webapp (made with appengine-magic and lein) working on dev_appserver.sh but because I need more interactivity and less restarting the server I prefer to use repl. Now problem is, that after I do
(require '[appengine-magic.core :as ae])
,(use 'myapp.core)
and try to serve application(ae/serve myapp)
I get this exception:[Thrown class java.lang.NullPointerException] Backtrace: 0: java.io.File.<init>(File.java:360) 1: sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 2: sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) 3: sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) 4: java.lang.reflect.Constructor.newInstance(Constructor.java:513) 5: clojure.lang.Reflector.invokeConstructor(Reflector.java:160) 6: appengine_magic.core$start.doInvoke(core_local.clj:85) 7: clojure.lang.RestFn.invoke(RestFn.java:439) 8: appengine_magic.core$serve.doInvoke(core_local.clj:139) 9: clojure.lang.RestFn.invoke(RestFn.java:410) 10: user$eval2264.invoke(NO_SOURCE_FILE:1) 11: clojure.lang.Compiler.eval(Compiler.java:5424) 12: clojure.lang.Compiler.eval(Compiler.java:5391) 13: clojure.core$eval.invoke(core.clj:2382) 14: swank.commands.basic$eval_region.invoke(basic.clj:47) 15: swank.commands.basic$eval_region.invoke(basic.clj:37) 16: swank.commands.basic$eval807$listener_eval__808.invoke(basic.clj:71) 17: clojure.lang.Var.invoke(Var.java:365) 18: user$eval2262.invoke(NO_SOURCE_FILE) 19: clojure.lang.Compiler.eval(Compiler.java:5424) 20: clojure.lang.Compiler.eval(Compiler.java:5391) 21: clojure.core$eval.invoke(core.clj:2382) 22: swank.core$eval_in_emacs_package.invoke(core.clj:92) 23: swank.core$eval_for_emacs.invoke(core.clj:239) 24: clojure.lang.Var.invoke(Var.java:373) 25: clojure.lang.AFn.applyToHelper(AFn.java:167) 26: clojure.lang.Var.applyTo(Var.java:482) 27: clojure.core$apply.invoke(core.clj:540) 28: swank.core$eval_from_control.invoke(core.clj:99) 29: swank.core$eval_loop.invoke(core.clj:104) 30: swank.core$spawn_repl_thread$fn__493$fn__494.invoke(core.clj:309) 31: clojure.lang.AFn.applyToHelper(AFn.java:159) 32: clojure.lang.AFn.applyTo(AFn.java:151) 33: clojure.core$apply.invoke(core.clj:540) 34: swank.core$spawn_repl_thread$fn__493.doInvoke(core.clj:306) 35: clojure.lang.RestFn.invoke(RestFn.java:397) 36: clojure.lang.AFn.run(AFn.java:24) 37: java.lang.Thread.run(Thread.java:680)
I have also tried (in-ns 'myapp.core) but same effect. When I paste web app handler straight on repl and serve then it works, but not from my file.
calling myapp or myapp-handler clearly gives the "object" so I should really be on right namespace...
project.clj
(defproject myapp "1.0.0-SNAPSHOT" :description "FIXME: write description" :dependencies [ [org.clojure/clojure "1.2.1"] [compojure "0.6.2"] ] :dev-dependencies [ [appengine-magic "0.4.1"] [ring/ring-devel "0.3.7"] ])
core.clj is as just simple:
(ns myapp.core (:use compojure.core) (:require [appengine-magic.core :as ae])) (defroutes myapp-handler (GET "/" req {:status 200 :headers {"Content-Type" "text/plain"} :body "Hello, world!!!"})) (ae/def-appengine-app myapp #'myapp-handler)
原文:https://stackoverflow.com/questions/5558423
最满意答案
我不确定这个查询的性能,但是因为我努力写了它,所以无论如何我都会发布它...
;with aaa(tel) as ( select Tel1 from Destination union select Tel2 from Destination union select Tel3 from Destination ) ,bbb(tel, id) as ( select Tel1, account_id from ImportData union select Tel2, account_id from ImportData union select Tel3, account_id from ImportData ) select distinct b.id from bbb b where b.tel in ( select a.tel from aaa a intersect select b2.tel from bbb b2 )
I am not sure on the perforamance of this query, but since I made the effort of writing it I will post it anyway...
;with aaa(tel) as ( select Tel1 from Destination union select Tel2 from Destination union select Tel3 from Destination ) ,bbb(tel, id) as ( select Tel1, account_id from ImportData union select Tel2, account_id from ImportData union select Tel3, account_id from ImportData ) select distinct b.id from bbb b where b.tel in ( select a.tel from aaa a intersect select b2.tel from bbb b2 )
相关问答
更多-
我想你真的想要一个UNION : SELECT * FROM newpancard WHERE status='done' UNION SELECT * FROM oldpancard WHERE status='done' 我们使用UNION (而不是UNION ALL ),因此我们不会从newpancard和oldpancard获取重复记录 输出(来自您的样本数据): id name cardno status 1 name1 909099 done 2 name2 800 ...
-
使用子查询来获取不同的员工记录列表,然后查询销售表 Use a subquery to get list of distinct employee records and then query the sales table
-
使用join从两个以上的表中进行选择会选择重复项(Selecting from more than two tables using join selects duplicates)[2022-05-23]
select post.* from (select user_id from follower where follower_id = 3 union select 3) blah join post on blah.user_id = post.owner_user_id; select post.* from (select user_id from follower where follower_id = 3 union select 3) blah join post on blah.u ... -
尝试一下: SELECT c1.* FROM CoreTracks c1 LEFT JOIN (SELECT Title, ArtistID, AlbumID, MAX(BitRate) maxBitRate FROM CoreTracks GROUP BY Title, ArtistID, AlbumID) c2 ON c1.Title = c2.Title AND c1.ArtistID = c2.ArtistID AND c1.AlbumID ...
-
SQL查询设计帮助:在多个表和排除项中查找重复项(SQL Query Design Help: Finding duplicates in multiple tables & exclusions)[2022-04-28]
这是你需要的吗? SQL小提琴 SELECT * from bankitem where exists( SELECT Name, ItemID, ID1, ID2, ID3 from item where bankitem.Name = item.Name and bankitem.ItemID = item.ItemID and bankitem.ID1 = item.ID1 and bankitem.ID2 = item.ID2 and bankitem.ID3 = ite ... -
我不确定你到底想要什么,但无论如何,这是你的代码 SELECT * FROM table1,table2 JOIN GROUP BY id 我只是编辑你的查询 SELECT * FROM table1 JOIN table2 on table2.id = table1.id GROUP BY table1.id // here you have to add table //on which you will be group by at this moment this is table1 ...
-
SELECT t1.colname FROM ( SELECT colname , COUNT(colname) AS colCount FROM tbl1 GROUP BY colname ) t1 INNER JOIN ( SELECT colname , COUNT(colname) AS colCount ...
-
我不确定这个查询的性能,但是因为我努力写了它,所以无论如何我都会发布它... ;with aaa(tel) as ( select Tel1 from Destination union select Tel2 from Destination union select Tel3 from Destination ) ,bbb(tel, id) as ( select Tel1, account_id from ImportData union select Tel2, account_id from Im ...
-
请尝试以下查询: SELECT * FROM ( SELECT n.*, RANK() OVER (PARTITION BY n.MSISDN ORDER BY length(n.prefix) DESC) as rnk FROM ( SELECT * FROM MSISDN a LEFT JOIN RANGES b ON a.msisdn like b. prefix || ...
-
加入/合并两个表删除新的重复项[SAS中的PROC SQL](Join / Merge two tables removing new duplicates [PROC SQL in SAS])[2023-04-01]
订购数据集 proc sort data=old; by key; run; proc sort data=new; by key; run; 将它们与带有by的数据集合并,如果匹配则仅输出第一个键 data combined; set old new; by key; if first.key then output; run; Order the datasets proc sort data=old; by key; run; proc sor ...