1

This is my Java Class (for the sake of simplicity, omitting few obvious details)

package com.abc.hstools.core.services;

import com.abc.hstools.core.css.MatchListResponse;

public class ConsumptionSportsService {
    
    //constructor with arguments not shown

    public MatchListResponse getAllMatches() {
        //some code here
        return null;
    }

    public void overrideConcurrencyUsingEventId(String eventId, int concurrency) {
        //some code here
    }

}

This is my scenario Scenario: Verify Concurrency Widget data

  • def ConsumptionSportsService = Java.type('com.abc.hstools.core.services.ConsumptionSportsService');
  • def consumptionSportsService = new ConsumptionSportsService(consumptionPortalToken, 'pp');
  • def x = consumptionSportsService.getAllMatches();
  • consumptionSportsService.overrideConcurrencyUsingEventId('1234')

As per this response, I am able to access getAllMatches method (no arguments), but unable to access overrideConcurrencyUsingEventId method which has arguments, even though both methods exist in same class.

Apr 03, 2023 12:21:48 AM okhttp3.internal.platform.Platform log
INFO: --\> GET https://origin-consumption-portal-pp.mum.abc-labs.com/sports/v1/events/matches?status=all&limit=100
Apr 03, 2023 12:21:53 AM okhttp3.internal.platform.Platform log
INFO: \<-- 200 OK https://origin-consumption-portal-pp.mum.abc-labs.com/sports/v1/events/matches?status=all&limit=100 (4952ms, unknown-length body)
00:21:53.558 |  |  \[main\]  ERROR com.intuit.karate - Users/rohitdharap/IdeaProjects/hs-automation-tests/src/test/hstest/features/consumption/sports/ConcurrencyWidgetTest.feature:13

* consumptionSportsService.overrideConcurrencyUsingEventId('1234')
  js failed:

> > > > 

01: consumptionSportsService.overrideConcurrencyUsingEventId('1234')
\<\<\<\<
org.graalvm.polyglot.PolyglotException: TypeError: invokeMember (overrideConcurrencyUsingEventId) on com.abc.hstools.core.services.ConsumptionSportsService@7c8d5312 failed due to: Unknown identifier: overrideConcurrencyUsingEventId

- \<js\>.:program(Unnamed:1)

I tried to refer this java interop tutorial https://github.com/karatelabs/karate#java-interop

RD96
  • 11
  • 1
  • I pass on this question, maybe someone else can help. personally I think this is a case that requires you to follow this process: https://github.com/karatelabs/karate/wiki/How-to-Submit-an-Issue – Peter Thomas Apr 03 '23 at 01:56

0 Answers0