Как вызвать класс-специфический метод JSON RPC 4

Я работаю с JSON-RPC v2, используя com.github.briandilley.jsonrpc4j. Я просматриваю документ, предоставленный поставщиком, который дал код Python.

params = {'query':'name = \'ABC \''}
list = server.call(session, 'class.A', 'search', params)

Я должен сделать то же самое в Java, используя эту библиотеку, поэтому я написал что-то вроде этого

List<String> list =  a.rpcCall("class.A.search",new Object[]{"query":"name = \'ABC \'"},List.class);
private <T> T rpcCall(String methodName, Object[] object,Class<T> classtype) {
T classList = null;

    try {
        classList=   client.invoke(methodName, object,classtype);
    } catch (Throwable e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return classList;

}

но я получил исключение, как это

com.googlecode.jsonrpc4j.JsonRpcClientException: Method not implemented: class.A.search
    at com.googlecode.jsonrpc4j.DefaultExceptionResolver.createJsonRpcClientException(DefaultExceptionResolver.java:53)
    at com.googlecode.jsonrpc4j.DefaultExceptionResolver.resolveException(DefaultExceptionResolver.java:28)
    at com.googlecode.jsonrpc4j.JsonRpcClient.handleErrorResponse(JsonRpcClient.java:270)
    at com.googlecode.jsonrpc4j.JsonRpcClient.readResponse(JsonRpcClient.java:196)
    at com.googlecode.jsonrpc4j.JsonRpcClient.readResponse(JsonRpcClient.java:529)
    at com.googlecode.jsonrpc4j.JsonRpcHttpClient.invoke(JsonRpcHttpClient.java:148)
    at com.googlecode.jsonrpc4j.JsonRpcHttpClient.invoke(JsonRpcHttpClient.java:118)
    at com.googlecode.jsonrpc4j.JsonRpcHttpClient.invoke(JsonRpcHttpClient.java:176)
    at Autheticate.rpcCall(Autheticate.java:58)
    at Autheticate.main(Autheticate.java:47)

Пожалуйста, дайте мне знать, как вызвать метод класса в RPC и как передать идентификатор сессии?

0 ответов

Другие вопросы по тегам