Hi Cocoon devs,

I wonder if the servlet service framework can be used to implement the following scenario:

There is an "abstract" block called "document-type" (think of a document type for a CMS, actually it's about Lenya). This block declares (in the sense of a convention) particular services, without actually implementing them, e.g.

  /services/schema.rng (provide Relax NG schema for validation)

Other generic blocks operate on arbitrary document types. E.g., the "editor" block could invoke a validation step before a document is saved. Now I imagine something like this in the editor block sitemap:

  <!-- {1} is the block name of the actual document type -->
  <map:match pattern="schema/{*}">
    <map:read src="servlet:{1}:/services/schema.rng"/>
  </map:match>

I guess this works if the block servlet declaration of the editor block contains connections to all actual document type blocks (extending the "document-type" block) that exist in the application. But since the CMS should be easily extensible with new document types, I think we can't require to register each document type with each generic block that operates on document types.

Does it make sense at all to implement such a scenario using the servlet service framework? If yes, is there a way to achieve this behaviour using the current implementation? Could I just register the service connections programmatically (e.g., using a standard init-method of a bean in the actual document type blocks)?

Thanks a lot in advance for any comments!

BTW, sorry for posting this to the dev list, but actually I'm afraid the current SSF doesn't support this, and I'd be interested in your opinions if this concept should be supported at all.

-- Andreas


--
Andreas Hartmann, CTO
BeCompany GmbH
http://www.becompany.ch
Tel.: +41 (0) 43 818 57 01

Reply via email to