I think the main question is if it (block-b) is protected software which cannot be distributed to your client. If that is no issue, you could for instance try out if you can replace the value of the @src from
servlet:block-b:/document
to
${document-pattern}
and inject this as a property into the sitemap using
cocoon-spring-configurator. The property then would get a different value
depending on the environment profile which is loaded at initialization of the
spring context.
If my proposal is a suitable approach.... feel free to ask for more information
if you get stuck.
Kind regards,
Robby Pelssers
-----Oorspronkelijk bericht-----
Van: Fawzib Rojas [mailto:[email protected]]
Verzonden: wo 3-11-2010 13:29
Aan: [email protected]
Onderwerp: Re: Cocoon 2.2 block+sitemap question
I have a webapp (war) that we use at our company it has a few blocks
(let say block-a to block-d), I want to install that war at our clients
but they should not have block-b. The simplest option would be just
remove that block and serve a simple document if its not found. The
other option is have 2 projects one for us one for clients which seems
extra work since the only difference is:
a) block-b not included
b) change a matcher in block-a sitemap from this:
<map:pipeline>
<map:match pattern="document">
<map:generate src="servlet:block-b:/document" />
<map:serialize type="xml" />
</map:match>
</map:pipeline>
to this:
<map:pipeline>
<map:match pattern="document">
<map:generate type="file" src="block-a-resources/document.xml" />
<map:serialize type="xml"/>
</map:match>
</map:pipeline>
On 11/2/2010 11:17 AM, Robby Pelssers
begin_of_the_skype_highlighting end_of_the_skype_highlighting wrote:
> I have a more urgent question to you...
>
> why would you want to sometimes not include block-b??? I think your design
> should be reconsidered drastically because this makes no sense to me... so
> i'll await your reponse for a good reason ;-)
>
> Robby
>
>
> -----Oorspronkelijk bericht-----
> Van: Fawzib Rojas [mailto:[email protected]]
> Verzonden: di 2-11-2010 14:43
> Aan: [email protected]
> Onderwerp: Cocoon 2.2 block+sitemap question
>
> I have 2 blocks (block-a and block-b) and I want to serve an xml from
> block-b in block-a so i did the following:
>
> block-a/block-servlet-service.xml:
> <servlet:context mount-path="/block-a"
> context-path="blockcontext:/block-a/">
> <servlet:connections>
> <entry key="block-b" value-ref="com.my-company.block-b.service"/>
> </servlet:connections>
> </servlet:context>
>
> block-a/sitemap.xml:
> <map:pipeline>
> <map:match pattern="document">
> <map:generate src="servlet:block-b:/document" />
> <map:serialize type="xml" />
> </map:match>
> </map:pipeline>
>
> That way i can read the my document using /block-a/document. In certain
> instances block-b wont be included in the war so I want the
> /block-a/document to go to a default document in block-a so I thought of
> adding an error handler, something like this:
>
> <map:pipeline>
> <map:match pattern="document">
> <map:generate src="servlet:block-b:/document" />
> <map:serialize type="xml" />
> </map:match>
> <map:handle-errors>
> <map:select type="exception">
> <map:when test="error">
> <map:generate type="file" src="block-a-resources/document.xml" />
> <map:serialize type="xml"/>
> </map:when>
> </map:select>
> </map:handle-errors>
> </map:pipeline>
>
> Since the connection in the block-a/block-servlet-service.xml cannot be
> made the war is not loaded so this method wont work. Is there another
> way to do this?
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
<<winmail.dat>>
--------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
