2015-01-16 7 views
1

Я работаю над плагином Nuxeo, который реализует операцию. Поэтому я использую @Operation, @OperationMethod и @Context аннотации. Цель плагина - получить ссылку LiveEdit, и проблема в том, что я не могу получить queryId, который необходим для создания URL-адреса nxedit:. Исходный код Nuxeo использует Manager.instance().getCurrentConversationId() , но я не могу получить экземпляр диспетчера в моем плагине. И, кажется, невозможно добавить экземпляр диспетчера через @Context, он возвращает только нулевое значение. Спасибо заранее.Как получить talkId в плагине nuxeo

ответ

0

Вы посмотрели Seam.InitContext и Seam.RunOperation операции?

Оба позвоните по номеру org.nuxeo.ecm.automation.seam.operations.SeamOperationFilter.handleBeforeRun(OperationContext, String) и org.nuxeo.ecm.automation.seam.operations.SeamOperationFilter.initializeSeamContext(OperationContext, String, CoreSession). Затем должен быть доступен разговор:

ConversationPropagation.instance().setConversationId(conversationId); 
Manager.instance().restoreConversation(); 
+0

Да, я сделал. Оба метода требуют параметра 'talkId' как String, и моя проблема заключается в том, что я не могу его получить. Они используют 'talkId = (String) context.get (" talkId ") ;, но похоже, что такого ключа в контексте плагина нет. – user3523475

+0

Вы можете передать null. Но если вы выполняете свою операцию в цепочке после одной из вышеперечисленных операций, то контекст шва должен быть инициализирован. –

+0

Когда я пытаюсь вызвать операцию 'Seam.InitContext', я получаю' Can not init Seam context: не найдено HttpServletRequest'. Я называю это следующим образом: \t \t 'OperationContext operationContext = new OperationContext (session); \t \t operationContext.setInput (doc); \t \t OperationChain chain = new OperationChain («цепочка»); \t \t chain.add ("Seam.InitContext"); \t \t AutomationService automationService = Framework.getService (AutomationService.class); \t \t automationService.run (operationContext, chain); ' – user3523475

 Смежные вопросы

  • Нет связанных вопросов^_^