Inside you XML file, you define your param names like

<xsl:param name="title"/>
        <xsl:param name="description"/>
        <xsl:param name="author"/>
        <xsl:param name="invoiceNumber"/>

and use them like this. for ex.

xsl:choose>
                                                        <xsl:when 
test="local-name()='title'">
                                                                <xsl:value-of 
select="$title"/>
                                                        </xsl:when>
                                                        <xsl:when 
test="local-name()='description'">
                                                                <xsl:value-of 
select="$description"/>
                                                        </xsl:when>
                                                        <xsl:when 
test="local-name()='author'">
                                                                <xsl:value-of 
select="$author"/>
                                                        </xsl:when>
                                                        <xsl:when 
test="local-name()='invoiceNumber'">
                                                                <xsl:value-of 
select="$invoiceNumber"/>
                                                        </xsl:when>
                                                </xsl:choose>

You can set parameters within your MessageExchange for ex.

           //set parameters to the XSLT service engine
                //which will be used by the stylesheet
                out.setProperty("systemdate",datetime );
                out.setProperty("title", "Invoice Document");

Hth,
Prem


Maxim Y. Tebenev wrote:
> 
> Hello Guys,
> 
> Does anybody knows message properties inside of xsl script?
> 
> For example I have sorce xml like:
> 
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:shop="http://Shop.HelloBook.softech.com";>
>    <soapenv:Header/>
>    <soapenv:Body>
>       <shop:BuyBook>
>          <shop:customerID>112</shop:customerID>
>          <shop:bookName>ARM</shop:bookName>
>       </shop:BuyBook>
>    </soapenv:Body>
> </soapenv:Envelope>
> 
> and want to extract customerID and bookName values from that. What's the
> right way to do that?
> I've tried following with no luck:
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> xmlns:shop="http://Shop.HelloBook.softech.com";>
>   <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
>   <xsl:template match="/">
>     <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:war="http://Warehouse.HelloBook.softech.com";>
>        <soapenv:Header/>
>        <soapenv:Body>
>           <war:OrderBook>
>             <war:customerID>
>               <xsl:value-of select="$shop:customerID"/>
>             </war:customerID>
>             <war:bookName>
>               <xsl:value-of select="$shop:bookName"/>
>             </war:bookName>
>           </war:OrderBook>
>        </soapenv:Body>
>     </soapenv:Envelope>
>   </xsl:template>
> </xsl:stylesheet>
> 
> Help me with this issue please.
> 
> Best regards, Maxim Tebenev.
> 

-- 
View this message in context: 
http://www.nabble.com/Retrieving-message-properties-from-XSL-tf2885851s12049.html#a8065316
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to