Hi! Today I've upgrade IDEA kotlin plugin to 1.2.4...
# spring
g
Hi! Today I've upgrade IDEA kotlin plugin to 1.2.40 and found strange behavior. I have api defined as following
Copy code
@GetMapping("/history")
    fun decisionPointHistory(@RequestParam(name = "name") name: String,
                             pageable: Pageable,
                             @RequestParam(name = "from", required = false) fromRevision: Int? = null,
                             @RequestParam(name = "to", required = false) toRevision: Int? = null): Page<HistoryDTO>
. and it was fine till now. I see
Copy code
Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'deciderController' method 
public static org.springframework.data.domain.Page com.ps.smartgateway.controllers.config.DeciderController.decisionPointHistory$default(com.ps.smartgateway.controllers.config.DeciderController,java.lang.String,org.springframework.data.domain.Pageable,java.lang.Integer,java.lang.Integer,int,java.lang.Object)
to {[/config/decider/history],methods=[GET]}: There is already 'deciderController' bean method
public org.springframework.data.domain.Page<com.ps.smartgateway.dto.HistoryDTO> com.ps.smartgateway.controllers.config.DeciderController.decisionPointHistory(java.lang.String,org.springframework.data.domain.Pageable,java.lang.Integer,java.lang.Integer) mapped.
in crash logs. When I decompile from kotlin to java I found that
decisionPointHistory$default
was annotated with
// $FF: bridge method
before and now it's only
// $FF: synthetic method
. That is only difference I see there. Does anyone here knows anything about it?