Getting a sequencer to engage?
ajs6f Jan 19, 2013 9:37 PMFirstly, congratulations on a lovely piece of software! I've enjoyed my first time working with it for the last few days.
I've run into a perplexing problem as I first try to engage the Sequencing Framework. I'm using 3.0.1.Final in a simple web-app with RESTEasy. I'm trying to introduce a sequencer that can disassemble some complex XML with particular semantics and build portions of the repository with the same semantics. And my problem is that for the life of me, I can't seem to get the sequencer to engage. I'm not worried about the action of the sequencer, because I can't get that far! {grin}
I'm working with a Maven-built application that I'm tinkering with by means of 'mvn jetty:run'. For reference, the source code is available here:
https://github.com/futures/ff-modeshape-prototype/tree/FOXML
and the sequencer is here:
I've written a sequencer that declares no default mediatypes. It has an 'execute' method that logs its execution, but that never happens. I inserted every possible form of path expression I could develop, and my current example looks like this:
"sequencing" : {
"removeDerivedContentWithOriginal" : true,
"threadPool" : "modeshape-workers",
"sequencers" : {
"FOXML Sequencer" : {
"description" : "FOXML Files loaded under 'fedora:/foxml' and extracted into 'fedora:/'",
"classname" : "org.fcrepo.ffmodeshapeprototype.foxml.FOXMLSequencer",
"pathExpressions" : ["fedora:/foxml/(*)/jcr:content[@jcr:data] => fedora:/$1"]
}
}
By inserting logging statements and exercising my JAXRS resources, I'm quite sure that I'm storing the XML in "fedora:/foxml/{somenode}/jcr:content@jcr:data", as expected. But the dang sequencer never executes. By logging statements and examination of the the configuration as parsed and used, I'm sure that the sequencer is being initialized.
Am I missing something very obvious about the path expressions? I've tried every combination I can find of square bracket placement, adding or removing workspaces, and everything else.
Thanks for any help-- ModeShape has been very fun to work with, and I'm really excited about using the sequencer functionality, which seems like an excellent extension to JCR semantics.