Hi,
I need to fetch an XSLT from WSRR and have to perform the transformation for Non XML messages in Datapower XI50 Please suggest.
Thanks and Regards, Lavanya
Answer by cmsdp (306) | Jun 19, 2015 at 12:20 PM
Use the following steps to deploy your resources and try if it will work for you. I have tested these steps in the lab and it works for me. Please note that If the FFD or XSLT file needs to be modified, it may not be possible in the WSRR server. So if you change any one of the resources, you have to do it and reload the file again which will give you new bsrURI.
(1) Configure WSRR server object in DataPower domain and note the object name
(2) Load the FFD file in WSRR server
(3) Identify the bsrURI of this FFD file
(4) Modify the XSLT that will use this FFD file with the following syntax:
<dp:input-mapping href="wsrr://<wsrr-server-object>/<bsrURI of the FFD file >/" type="ffd" />
(5) Load the XSLT file to the WSRR server
(6) Identify the bsrURI of the XSLT file
(7) In the Binary Transform action, use the following URL syntx to access the XSLT remotely from the WSRR server.
wsrr://<wsrr-server-object>/<bsrURI of the XSLT file>/
Note: The last "/" is needed as part of the URI to get the remote FFD and XSLT files.
In order to test that the resources are accessible from the WSRR server, use the following syntax as part of your verification.
http://WSRR Server host:port/WSRR/version/Content/bsrURI of FFD or XSLT file
Thank you @cmsdp
The solution worked for me too.
Instead of BaseURI can we pass any other argument ?
Answer by Trey (1054) | May 11, 2015 at 05:19 PM
Lavanya, I typically see WSRR used in the context of a WSDL repository for DataPowers Web Service Proxy. But I have seen previous how-to articles like this older one: http://www.ibm.com/developerworks/websphere/techjournal/0805_peterson/0805_peterson.html but nothing absolutely clear, to me at least, on how and if you can do this with native methods.
There is also a long write up on the forum here: https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014892969 about a client doing a similar method and caching the xsl.
this is not my in wheel house but I hope this begins to give you some answers or ideas.
If not feel free to update this thread and we will see if there is anyone else out there that can help. Thank you Trey
Answer by LavanyaBoddeti (74) | Jun 19, 2015 at 08:02 AM
@nsrao, I have an XSLT which does input mapping using an FFD file.If I place the XSLT and FFD file in DP Local Filemanagement , I am able to perform the non-xml (say CSV file ) to XML format. But when I place these XSLT and FFD file in WSRR and I try to fetch them from WSRR using my ProcessingPolicy. Fetch action will fetch the FFD file and the Output of the Fetch action is assigned to dpvar_1 , which means it is stored in var://context/dpvar_1 Now I used this dpvar_1 in my XSLT (Please find the attached xsl in xml format) I assigned this dpvar_1 to xsl variable file and i passed this file variable to dp:input-mapping href="file1" type="FFD" .But then also it is failing with error message "Unable to retrieve https://ip:9444/WSRR/8.0/Content?query=//$file" If I try to retrieve the FFD from my local management and if I give href=local:///CSVFILE.FFD then it works, but this is not the correct approach. Kindly help me link text link text
Answer by LavanyaBoddeti (74) | Jun 22, 2015 at 09:12 AM
Instead of Base URI , we can use the following URL in our XSLT, wsrr://CommonWSRRServer/WSRR/8.5/Content?query=/WSRR/Document[@name=%27CSVFILE.FFD%27%20and%20@version=%271.0%27]