Hi everyone,
I configured two SLM statements in MPGW policy rule in DataPower. I configured the SLMs based on request body,so I use SLM Resource Class and XPath Filter. The Xpath Filter of SLM statement is below.
**/[local-name()='Envelope']/[local-name()='Body']/[local-name()='PoliceKaydet']/[local-name()='policeBilgi']/[local-name()='MustFields'][./*[local-name()='KaynakKod'][normalize-space(.) = '3'] and ./[local-name()='TarifeKod'][normalize-space(.) = 'K50'] and ./[local-name()='AcentaNo']]*
The filter works when AcentaNo field is same in request and TarifeKod is K50 and KaynakKod is 3. The important point in statement is that AcentoNo is same in request!. But when I change another field in request that is not about AcentoNo, TarifeKod and KaynakKod, the SLM is not working.So, I change request, the SLM is not working. But if I send the same request continuous, SLM allow request up to the threshold value and then reject the rest of requests.Actually the SLM is just working for same requests. But the the fields of requests may change.
Now I want to talk about the another SLM.The Xpath Filter of SLM statement which one is working wrong is below.
**/[local-name()='Envelope']/[local-name()='Body']/[local-name()='PoliceKaydet']/[local-name()='policeBilgi']/[local-name()='MustFields'][(./*[local-name()='KaynakKod'][normalize-space(.) = '3'] or ./[local-name()='KaynakKod'][normalize-space(.) = '9']) and ./[local-name()='TarifeKod'][normalize-space(.) = 'K50']]*
Now, I want that SLM works when KaynakKod is 3 or 9 and TarifeKod is K50. This is working when I send same request. But I change another field in request (not TarifeKod or KaynakKod, another field). The SLM didn't match with this condition.
The request is below.It maybe help you.
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<SessionKey>9d612e3283334b9a86289a8d9625e564</SessionKey>
</s:Header>
<s:Body>
<PoliceKaydet>
<policeBilgi>
<MustFields>
<AcentaNo>1000</AcentaNo>
<GemiYil>0</GemiYil>
<GrupNo>0</GrupNo>
<KaynakKod>3</KaynakKod>
<BakimSaat>12:00</BakimSaat>
<BakimKod>0</BakimKod>
<TarifeKod>K50</TarifeKod>
</MustFields>
</policeBilgi>
</PoliceKaydet>
</s:Body>
</s:Envelope>
I did not understand that. Please help me. Thanks...
Note: Firmware IDG.7.5.2.0
Answer by akogluemre (1) | May 26, 2017 at 01:31 AM
Hi,
Yes My real request is not that. I sent to forum a part of request that is about my issue. The real request is below and I attached it.
[<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<SessionKey>9d612e3283334b9a86289a8d9625e564</SessionKey>
</s:Header>
<s:Body>
<PoliceKaydet>
<policeBilgi>
<a:MustFields>
<a:AcentaNo>1000</a:AcentaNo>
<a:GemiYil>0</a:GemiYil>
<a:GrupNo>0</a:GrupNo>
<a:KaynakKod>3</a:KaynakKod>
<a:BakimSaat>12:00</a:BakimSaat>
<a:BakimKod>0</a:BakimKod>
<a:TarifeKod>K50</a:TarifeKod>
</a:MustFields>
</policeBilgi>
</PoliceKaydet>
</s:Body>
</s:Envelope>][1]
[1]: /answers/storage/temp/15274-request.txt
Datapower: Is there any limitations in number of WS-Proxies supported? 3 Answers
How to Cache LTPA Token for reusing, genearated from AAA postprocessing 1 Answer
Datapower Encryption & Decryption 3 Answers
DataPower CLI command 1 Answer
DNS lookup failed while doing TCP Connection in Datapower 1 Answer