다른 문제가 있습니다. 재생을 위해 Jongo 플러그인을 사용하여 MongoDB와 함께 Play Framework 2.5를 사용하려고합니다. 우선, Im을 제대로 구현했는지 확실하지 않습니다. 여기에 삽입하고 싶은 클래스 :재생 프레임 워크가있는 Jongo : 삽입하려고 할 때 StackOverflowError
public class User {
@Inject public PlayJongo jongo;
public MongoCollection users() {
return jongo.getCollection("users");
}
@JsonProperty("_id")
public ObjectId id;
public String firebaseID;
public String name;
public User(){}
private User(String firebaseID, String name, ApplicationLifecycle appLifecycle, Environment env, Configuration conf){
this.jongo = new PlayJongo(appLifecycle, env, conf);
this.firebaseID = firebaseID;
this.name = name;);
}
public User createUser(String firebaseID, String name, ApplicationLifecycle appLifecycle, Environment env, Configuration conf){
User user = new User(firebaseID, name, appLifecycle, env, conf);
user.insert();
return user;
}
public void insert() {
users().insert(this);
}
}
는 그리고 내 응용 프로그램 컨트롤러는 다음과 같이 수행합니다 플레이 프레임 워크에
@Inject public ApplicationLifecycle appLifecycle;
@Inject public Environment env;
@Inject public Configuration conf;
@Inject private User _User;
....
public Result login(...){
...
User user = _User.createUser(...);
...
}
....
임 새로운 정지를 내가 어떻게 분사 시스템이해야 얻을 매우 해달라고 사용하십시오. 그래서 만약 누군가가 나를 계몽하고 싶다면 그/그녀는 자유로울 수 있습니다. :) createUser 메쏘드로 새로운 사용자를 생성하면 (그리고 새로운 클래스를 삽입하려고 시도합니다) StackOverflowError는 끝없는 체인에 의해 발생합니다. 재귀 메서드 호출 : debug output