Исправление ProtocolException в getChildren()
Когда я пытаюсь вызвать getChildren()
на mediapipeline
, в котором работает моя пользовательская конечная точка модуля, я получаю это исключение:
org.kurento.client.internal.server.ProtocolException: исключение создание класса Java для mycustomfilter.MyCustomFilter
Это код, который запускает его:
List<MediaObject> mediaObjects = pipelines.get(i).getChildren();
Должен ли я использовать List<MediaObject>
для какого-либо другого типа данных?
Ответы
Ответ 1
Когда вы создаете пользовательский элемент мультимедиа для KMS, вы также можете создать клиентский API для Java и JavaScript (см. doc здесь). В вашем случае вам нужно создать клиент Java для вашего фильтра, как показано ниже:
cmake .. -DGENERATE_JAVA_CLIENT_PROJECT=TRUE
Полученные Java-классы (пакет mycustomfilter.MyCustomFilter
в вашем примере) должны быть в пути к классам проекта, который вызывает getChildren()
(внутренне он вызывает Class.forName
, см. код здесь).
Ответ 2
Не могли бы вы попробовать?
List<MediaObject> mediaObjects = new ArrayList<MediaObject>(Arrays.asList(pipelines.get(i).getChildren()));