首页 \ 问答 \ appengine magic,几乎满意,但在repl上获得空指针(appengine magic, almost satisfied but getting null pointer on repl)

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
更新时间:2022-11-02 18:11

最满意答案

我不确定这个查询的性能,但是因为我努力写了它,所以无论如何我都会发布它...

;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
)

相关问答

更多

相关文章

更多

最新问答

更多
  • 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
  • 如何通过引用返回对象?(How is returning an object by reference possible?)
  • 矩阵如何存储在内存中?(How are matrices stored in memory?)
  • 每个请求的Java新会话?(Java New Session For Each Request?)
  • css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
  • 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
  • xcode语法颜色编码解释?(xcode syntax color coding explained?)
  • 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
  • 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
  • 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
  • 西安哪有PLC可控制编程的培训
  • 在Entity Framework中选择基类(Select base class in Entity Framework)
  • 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
  • 电脑二级VF有什么用
  • Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
  • 金华英语角.
  • 手机软件如何制作
  • 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
  • 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
  • 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
  • Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
  • 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
  • python的访问器方法有哪些
  • DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
  • 在Ruby中对组合进行排序(Sorting a combination in Ruby)
  • 网站开发的流程?
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。