Oracle BPM Version 11.1.1.7. На вкладке «Humantask.task», «События», «Изменение обратных звонков», я ввел полное имя класса, которое реализует NotesStore и методы addNote и getNotes.Oracle BPM Human Task Комментарии Ошибки обратного вызова при активации приложения AppModule в вызываемом классе
Класс использует общедоступные методы в AppModule для записи и чтения комментариев с использованием нашей настраиваемой таблицы, и эти методы были хорошо протестированы во время разработки с использованием тестера BC и временной основной в классе обратного вызова.
Проект скомпилирован в банку и помещен в папку SCA-INF/lib проекта BPM, затем развернуты формы задач SCA и связанных с ним задач ADF.
Когда замечание сделано в из коробки человеческих комментариев задачи раздела во время экземпляра процесса, класс называется, но исключение возникает в методе getNotes на линии создается AppModule:
java.lang.ClassCastException: oracle.jbo.common.ampool.PoolMgr
в классе, AppModule создается как так:
AuditModule service = (AuditModule)Configuration.createRootApplicationModule("com.co.modules.AuditModule", "AuditModuleLocal");
Я попытался добавить файл конфигурации web.xml в проект SCA BPM с фильтром как discussed in this post (последний ответ). В этом обсуждается инициирование инициализации контекста ADF, но я все еще получаю ошибку.
Вопрос в том, как я могу использовать обратный вызов из человеческой задачи для вызова метода, который использует общедоступные методы AppModule для работы БД? Oracle's documentation очень редкий в этой области (29.11.1).
UPDATE
Оказывается, что трассировка стека показывает, что она имеет проблемы поиска имени источника данных и фактически бросает ошибку JBO. Если кто-то работает с этим, проверьте трассировку стека для других проблем.
UPDATE2
Наконец получил это писать комментарии задачи в таблицу пользовательских комментариев. Оказывается, не представляется возможным использовать подход AppModule/Model в классе обратного вызова комментариев, поскольку нет способа инициировать необходимый контекст ADF при вызове класса. Переписывая класс для доступа к БД непосредственно в коде, класс обратного вызова комментариев пишет таблицу. Но, я получаю ту же ошибку, что и this post. А именно:
Exception invoking method from XML data control. Cause:oracle.bpel.services.workflow.client.WorkflowServiceClientException: java.rmi.UnmarshalException: cannot unmarshaling return; nested exception is:
Supplemental Detail java.io.IOException: Error: Unexpected type encountered in writeExternal oracle.bpel.services.workflow.client.WorkflowServiceClientException: java.rmi.UnmarshalException: cannot unmarshaling return; nested exception is:
java.io.IOException: Error: Unexpected type encountered in writeExternal
Я подозреваю, что это фреймворк проблема Oracle, как типы, которые передаются обратно в связи с осуществлением NotesStore, которые все отсылается обратно в рамки:
public class CommentsCallback implements NotesStore, Serializable...
public List<CommentType> getNotes(Task task)
Кто-нибудь решил эту проблему? Полный StackTrace по адресу:
https://community.oracle.com/thread/3638940