Ok so I've been debugging through the ModeShape code a bit today and discovered the problem. The Sequencer is failing to run because the original content being added is missing a mime type. I'll tackle that tomorrow and report back my success or failure.
UPDATE: that was it - solution was simply to add the right jcr:mimeType property to the jcr:content node
As you may know, the code that calls the sequencer is in the SequencingRunner.run() method. If the sequencer has accepted MIME types (which the XSD sequencer does), then this code looks for the "jcr:mimeType" property and, if not there, tries to get the MIME type from the Binary value (which will use a MIME type detector to determine it from the name and/or content) on line 133. Perhaps you could debug this part of the code to see why that's not returning an acceptable MIME type.
P.S. Sorry for the delay. Several of us are currently on vacation, but I'll be back at work on Friday.
1 of 1 people found this helpful
Hey no problem (re: the delay). I figured it out eventually.
As for why it's not returning an acceptable mime type. The problem is that we weren't setting it explicitely *and* our node name doesn't have an extension. So the mime type detecting didn't really have much to work with. Ultimately it gets into detectFallbackMimeType and returns "text/plain" as the content type (which is not unreasonable). The solution is obviously to set the jcr:mimeType explicitely, which is what I'm doing now.