【问题标题】:Spring Security, Refresh Token & NotSerializableExceptionSpring Security、刷新令牌和 NotSerializableException
【发布时间】:2016-09-04 15:53:47
【问题描述】:

我有以下实体:

@Entity
@Table(name = "ct_users")
@JsonIgnoreProperties("password", "enabled", "driver", "reviews")
open class User(

    @Id
    @Column(name = "id")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    val id: Int = 0,

    @Column
    val phone: String = "",

    @Column
    val password: String = "",

    @Column
    val enabled: Boolean = false,

    @OneToOne(fetch = FetchType.LAZY, mappedBy="profile")
    var driver: Driver? = null,

    @ManyToMany(fetch = FetchType.LAZY)
    @JoinTable(
        name = "ct_reviews_rel",
        joinColumns = arrayOf(JoinColumn(name = "user_id")),
        inverseJoinColumns = arrayOf(JoinColumn(name = "review_id"))
    )
    @JsonManagedReference
    var reviews: List<Review>? = null

) : Serializable

及相关驱动表:

@Entity
@Table(name = "ct_drivers")
@JsonIgnoreProperties("password", "profile")
class Driver(

    @Id
    @Column(name = "id")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    var id: Int = 0,

    @Column(name = "first_name")
    var firstName: String = "",

    @Column(name = "last_name")
    var lastName: String = "",

    @Column(name = "rating")
    var rating: Double = 5.0,

    @Column(name = "reviews")
    var reviewsCount: Int = 0,

    @Column(name = "invited_by")
    var invitedBy: Int? = 0,

    @Column(name = "position_prev", columnDefinition = "geometry(Point,4326)")
    var positionPrev: Point = Helpers.geometry(0.0, 0.0),

    @Column(columnDefinition = "geometry(Point,4326)")
    var position: Point = Helpers.geometry(0.0, 0.0),

    @OneToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "user_id")
    var profile: User? = null,

    @Transient
    var distance: Int = 0

) : Serializable

当我尝试刷新令牌 (/oauth/token?grant_type=refresh_token&client_id=abc&client_secret=abcd&refresh_token=...) 时,我收到以下错误消息:

{
  "error": "server_error",
  "error_description": "java.io.NotSerializableException: org.geolatte.geom.jts.PointSequenceCoordinateSequenceFactory"
}

我该如何解决?这个问题的原因是什么?

Helpers.geometry 函数:

    fun geometry(lat: Double, lng: Double): Point {
        return GeometryFactory(PrecisionModel(), 4326).createPoint(Coordinate(lat, lng))
    }

【问题讨论】:

    标签: spring hibernate spring-security spring-oauth2


    【解决方案1】:

    我的错。问题出在我的 UserDetailsS​​ervice 中,

    【讨论】:

      猜你喜欢
      • 2017-11-14
      • 2020-12-05
      • 2019-01-18
      • 2018-08-05
      • 1970-01-01
      • 2020-07-04
      • 2020-04-19
      • 2017-11-09
      • 1970-01-01
      相关资源
      最近更新 更多