2013-10-03 1 views
1

Play! QBox.io에서 Jest 0.0.4 및 ElasticSearch 0.90.5와 함께 Framework 버전 2.1.5.재생! 프레임 워크 및 ElasticSearch StackOverflowError

I가 다음과 같은 코드 :

try { 
    SearchConfig config = new SearchConfig(); 
    JestClient client = config.jestClient(); 
    Logger.debug("client exists"); 
    Index index = new Index.Builder(post).index("ads").type("ad").build(); 
    Logger.debug("index exists"); 

    client.execute(index); 
    Logger.debug("post client.execute()"); 
} catch (IOException e) { 
    e.printStackTrace(); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

나는 그것을 실행할 때 나에게 다음과 같은 오류를 제공합니다 : 내가 플레이하는 새로 온 사람과 ElasticSearch (그리고 농담)

[debug] application - client exists 
[debug] application - index exists 
[debug] application - index: [email protected] 
[error] application - 

! @6fnicco9i - Internal server error, for (POST) [/user/posts] -> 

play.api.Application$$anon$1: Execution exception[[RuntimeException: java.lang.StackOverflowError]] 
    at play.api.Application$class.handleError(Application.scala:287) ~[play_2.10.jar:2.1.5] 
    at play.api.DefaultApplication.handleError(Application.scala:381) [play_2.10.jar:2.1.5] 
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$play$core$server$netty$PlayDefaultUpstreamHandler$$handle$1$1.apply(PlayDefaultUpstreamHandler.scala:143) [play_2.10.jar:2.1.5] 
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$play$core$server$netty$PlayDefaultUpstreamHandler$$handle$1$1.apply(PlayDefaultUpstreamHandler.scala:139) [play_2.10.jar:2.1.5] 
    at play.api.libs.concurrent.PlayPromise$$anonfun$extend1$1.apply(Promise.scala:113) [play_2.10.jar:2.1.5] 
    at play.api.libs.concurrent.PlayPromise$$anonfun$extend1$1.apply(Promise.scala:113) [play_2.10.jar:2.1.5] 
java.lang.RuntimeException: java.lang.StackOverflowError 
    at play.libs.F$Promise$6.apply(F.java:401) ~[play_2.10.jar:2.1.5] 
    at scala.concurrent.Future$$anonfun$map$1.liftedTree2$1(Future.scala:253) ~[scala-library.jar:na] 
    at scala.concurrent.Future$$anonfun$map$1.apply(Future.scala:249) ~[scala-library.jar:na] 
    at scala.concurrent.Future$$anonfun$map$1.apply(Future.scala:249) ~[scala-library.jar:na] 
    at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29) ~[scala-library.jar:na] 
    at akka.dispatch.BatchingExecutor$Batch$$anonfun$run$1.liftedTree1$1(BatchingExecutor.scala:67) ~[akka-actor_2.10.jar:na] 
java.lang.StackOverflowError: null 
    at com.google.gson.stream.JsonWriter.writeDeferredName(JsonWriter.java:401) ~[gson-2.2.3.jar:na] 
    at com.google.gson.stream.JsonWriter.value(JsonWriter.java:495) ~[gson-2.2.3.jar:na] 
    at com.google.gson.internal.bind.TypeAdapters$7.write(TypeAdapters.java:246) ~[gson-2.2.3.jar:na] 
    at com.google.gson.internal.bind.TypeAdapters$7.write(TypeAdapters.java:231) ~[gson-2.2.3.jar:na] 
    at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68) ~[gson-2.2.3.jar:na] 
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:89) ~[gson-2.2.3.jar:na] 
[info] Compiling 1 Java source to /home/bcarlson/git/drillist/target/scala-2.10/classes... 
[error] /home/bcarlson/git/drillist/app/controllers/Application.java:120: error: <identifier> expected 
[error]     Logger.debug("index: " + index.); 
[error]            ^
[error] 1 error 
[error] (compile:compile) javac returned nonzero exit code 

을, 이 SOError 문제를 해결하는 방법을 알지 못합니다. 어떤 도움을 주셔서 감사합니다! 미리 감사드립니다!

-ben

답변

0

앱의 스택 크기를 늘리는 것이 도움이되지 않습니까?

jvm 옵션 -Xss4m을 사용하여 수행 할 수 있습니다. 여기서 4m은 os의 기본값보다 큰 값입니다.

+0

마샬링 및 언 마샬링을 사용하여 Jest를 사용하여 작동시키지 못했습니다. 결국 객체 ID를 반환하고 객체 배열을 구축했습니다. 나는 이것을 계속 조사 할 것이지만 그것을 이해할 수는 없다. –