播放框架序列化抄写OAuthService问题

时间:2012-09-21 15:57:55

标签: java serialization playframework scribe

我有问题。我正在构建一个可以使用oauth服务的服务来获取一些用户信息。我想在用户上保留OAuthService,因为我需要获取数据,直到accessToken到期(这与每个提供者不同)..

我使用play2-morphia-plugin表示数据持久性,Scribe表示OAuth ..

这是我的用户类:

package models;

import leodagdag.play2morphia.Model;
import com.google.code.morphia.annotations.Entity;
import com.google.code.morphia.annotations.Id;
import org.bson.types.ObjectId;
import org.scribe.oauth.OAuthService;


@Entity
public class User extends Model{
    @Id
    private ObjectId id;
    private List<OAuthService> services;

    //Getters and setters...
}

我可以保存对象。没问题,但是当我尝试加载它时,我收到一个错误,因为它没有默认的空构造函数。

如果您愿意,我可以将代码放在github上吗?

1 个答案:

答案 0 :(得分:0)

我终于明白了:)

我刚刚创建了一个用于存储数据的类。类org.scribe.oauth.OAuthService不包含任何数据,因此没有理由进行序列化。

public class ServiceConnection {

    private Date accessFrom;
    private Class<? extends Api> apiClass;
    private SignatureType signatureType;
    private String apiKey;
    private String secretKey;
    private String callback;
    @Serialized
    private Token requestToken;
    @Serialized
    private Token accessToken;

    // Getter and setters..

}