01-17-2012 07:26 PM
I have at least three different (using a similar configuration pattern) Event/Handler/Action Chain pairs working to fill out fields in newly created folders and documents extended from folders.
I cannot get a similar Event Handler/Action Chain pair working when creating a document in a workspace.
Are there any subtle differences with respect to Event Handlers/Action Chains between folders and workspaces that I should be addressing?
The symptom is the document context,created in the workspace, is not passed to the action chain when the chain is fired so I can't manipulate the field entries. The action chain is a carbon copy of the one working on folders. The chain does fire, the context is not available.
Hope this example clears up what I'm trying to do.
Action Chain Example: (Content view query):
ecm:mixinType != 'HiddenInNavigation' AND ecm:isCheckedInVersion = 0 AND ecm:currentLifeCycleState != 'delete' AND ecm:isProxy = 1 AND ecm:primaryType = 'ZCtrlDocument'
I get a single document from this query. Yes, it's in a section and published. I just want to read some of the meta data first then put that data into the document being created.
Here's the test action chain that's fired from my User Action:
FETCH -> UI SELECTION USER INTERFACE -> ADD INFO MESSAGE value: expr:@{Document["dc:title"]}
that's it!
I get the following:
Caused by: [Error: could not access: Document; in class: null]
[Near : {... Unknown ....}]
^
[Line: 1, Column: 0]
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getBeanProperty(ReflectiveAccessorOptimizer.java:595)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getCollectionProperty(ReflectiveAccessorOptimizer.java:609)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:317)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:137)
at org.mvel2.optimizers.dynamic.DynamicOptimizer.optimizeAccessor(DynamicOptimizer.java:63)
at org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:137)
at org.mvel2.compiler.ExecutableAccessor.getValue(ExecutableAccessor.java:41)
at org.mvel2.MVEL.executeExpression(MVEL.java:1001)
at org.mvel2.templates.res.CompiledTerminalExpressionNode.eval(CompiledTerminalExpressionNode.java:56)
at org.mvel2.templates.TemplateRuntime.execute(TemplateRuntime.java:235)
at org.mvel2.templates.TemplateRuntime.execute(TemplateRuntime.java:230)
at org.mvel2.templates.TemplateRuntime.execute(TemplateRuntime.java:220)
at org.mvel2.templates.TemplateRuntime.execute(TemplateRuntime.java:164)
at org.nuxeo.ecm.automation.core.scripting.MvelTemplate.eval(MvelTemplate.java:38)
at org.nuxeo.ecm.automation.core.impl.OperationTypeImpl.inject(OperationTypeImpl.java:158)
at org.nuxeo.ecm.automation.core.impl.OperationTypeImpl.newInstance(OperationTypeImpl.java:149)
at org.nuxeo.ecm.automation.core.impl.InvokableMethod.doInvoke(InvokableMethod.java:114)
at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:132)
... 112 more
01-20-2012 05:18 AM
I just copy what Alain told me to copy here 🙂
Actually, I think that your null pointer exception is for the object "Document". What you should do is, just after the Fetch Selected Documents, to run an Execution Flow > Run Document Chain. The reason is that the "Document" object is not available when the input is "Documents".
You can see a sample of this at the page 99 on the following slides
A stacktrace would help to make sure of what is null.
Hope this answer will help you.
01-19-2012 02:28 PM
Can you please be a bit more precise of your chain/Event handler configuration. You can just edit your question this will be more readable.
01-20-2012 05:18 AM
I just copy what Alain told me to copy here 🙂
Actually, I think that your null pointer exception is for the object "Document". What you should do is, just after the Fetch Selected Documents, to run an Execution Flow > Run Document Chain. The reason is that the "Document" object is not available when the input is "Documents".
You can see a sample of this at the page 99 on the following slides
A stacktrace would help to make sure of what is null.
Hope this answer will help you.
01-20-2012 02:30 PM
Duh, sorry for having to repeat the answer.
01-20-2012 05:25 PM
No problem, this is just because I'm not expert as Alain is
03-14-2012 11:22 AM
any update ?
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.