2012-09-21 42 views
0

我遇到問題。我正在構建一個服務,可以使用oauth服務來獲取一些用戶信息。我想堅持OAuthService,因爲我需要獲取數據,直到accessToken過期(這不同於每個提供商)。Play框架序列化抄寫OAuthService問題

我使用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上,如果你願意?

回答

0

我想通了最後:)

我剛剛作出了一個類,用於存儲數據。 Class 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.. 

}