2016-06-21 5 views
0

Json.toJson()을 사용하여 JSON 문자열로 데이터를 반환 할 수 있도록 몇 가지 Java DO 클래스에 대한 암시 적 쓰기를 작성하고 있습니다.암시 적 쓰기 정의

내가 가지고있는 ImplicitsWrites 객체를 만들고 컨트롤러 클래스에 가져 왔습니다.

그러나, complilation 동안 내가 얻을 : value getUserId is not a member of com.domain.UserDO Note: implicit value <myDOClass> is not applicable here because it comes after the application point and it lacks an explicit result type

그냥 메모, GETUSERID()는 DO에서 유효한 방법이다.

implicit val userDOWrite = new Writes[UserDO] { 
    def writes(userDO: UserDO) = Json.obj(
     "userId" -> userDO.getUserId(), 
     "rowType" -> userDO.getName() 
    ) 
    } 

그냥 참고 :

예 쓰기이있다. 어쩌면이 문제를 파악하는 데 도움이 될 것입니다. DO에는 @Data 주석 (롬복)이 있으므로 get/set 메서드가 생성됩니다.

나는 암묵적인 잘못 정의하고 있습니까? 그렇다면 적절한 방법은 무엇입니까?

+0

'extends AnyRef'는 아무 것도하지 않습니다. 가장 중요한 문제는'value getUserId는 com.domain.UserDO'의 멤버가 아닙니다. 스칼라 콘솔에서'import com.domain.UserDO; 새로운 UserDO (..). getUserId' – cchantep

+0

그냥 메모. 어쩌면이 문제를 파악하는 데 도움이 될 것입니다. DO에는 @Data 주석 (롬복)이 있으므로 get/set 메서드가 생성됩니다. –

+0

Scala 콘솔에서 확인할 수 있습니다 (예 : SBT의'console') – cchantep

답변

0

파일이 이미 컴파일되어 있지 않으면 Scala에서 lombok getter/setters를 인식하지 못합니다. Java와 Scala가 혼합 된 프로젝트의 경우, lombok은 현재 제대로 지원되지 않습니다.