2016-08-17 6 views
1

Я использую HtmlUnit для моего проекта, когда я попытался код ниже: происходитКотлин + Intelij + HtmlUnit: Ни одна из следующих функций может быть вызвана с аргументами, передаваемыми

webClient.webConnection = FalsifyingWebConnection(webClient) { 
      fun getResponse(request: WebRequest): WebResponse { 
       if(request.getUrl().getPath().toLowerCase().equals("some url i don't need ")) { 
        return createWebResponse(request, "", "application/javascript"); 
       } 

      return super.getResponse(request); 
     } 
    } 

Ошибка при FalsifyingWebConnection (WebClient), который говорит:

enter image description here

ответ

3

Если вы ищете способ создания экземпляра объекта с помощью метода переопределения, чем вам необходимо выражение объекта:

webClient.webConnection = object : FalsifyingWebConnection(webClient) { 
    override fun getResponse(request: WebRequest): WebResponse { 
     if(request.getUrl().getPath().toLowerCase().equals("some url i don't need ")) { 
      return createWebResponse(request, "", "application/javascript"); 
     } 

     return super.getResponse(request); 
    } 
} 

https://kotlinlang.org/docs/reference/object-declarations.html