Вызов адаптера из Java — Worklight 6.2

Ниже приведен пример кода Java из Worklight для вызова адаптера.

public static void testAdapterCall(){
      try{
      DataAccessService service = WorklightBundles.getInstance().getDataAccessService();
      String paramArray = "[5, 3,]";
      ProcedureQName procedureQname = new ProcedureQName("CalculatorAdapter", "addTwoIntegers");
      InvocationResult result = service.invokeProcedure(procedureQname, paramArray);
      }
      catch(Exception e)
      {
        e.printStackTrace();
      }

    }

Я получаю исключение Null Pointer, когда оно переходит в строку

DataAccessService service = WorklightBundles.getInstance().getDataAccessService();

Лог выглядит следующим образом:

java.lang.NullPointerException
at com.worklight.customcode.Calculator1.testAdapterCall(Calculator1.java:38)
at com.worklight.customcode.Calculator1.main(Calculator1.java:53)

Версии: Java 1.7 Worklight 6.2 Адаптер развернут, и сервер также работает локально. Я видел этот вопрос и на других сайтах, но на него нет ответа.

Любая помощь высоко ценится.


person Reej    schedule 22.06.2016    source источник
comment
Возможный дубликат Вызов адаптера рабочего освещения из автономной Java программа   -  person Idan Adar    schedule 11.12.2016


Ответы (1)


См. документацию в следующем документе PDF, начиная со страницы 13.

public void callProcedure() {
    DataAccessService service = worklightBundles.getInstance().getDataAccessService();
    String paramArray = "['param1', 'param2', 'param3']";
    ProcedureQName procedureQName = new ProcedureQName("adapterName",
"procedureName");
    InvocationResult result = service.invokeProcedure(ProcedureQName,
paramArray);
    JSONObject jsonObject = result.toJSON();
    String value = (String)jsonObject.get("key");
}

Не забудьте добавить отсутствующие включения после ввода кода в Java IDE, например Eclipse.

person Idan Adar    schedule 11.12.2016