Forum Discussion
No matches under XML_CONTENT_BASED_ROUTING
- Dec 08, 2022
Hi akhmarov,
just wanted to get sure... 😉
Try to format your xpath-query case-sensitive... 😉
//m:GetFolder/*Cheers, Kai
You're welcome. If need further assistance with [STREAM::*] then let me know...
Cheers, Kai
Yes, seems I need some assistance with STREAM
My setup uses Layered-VS scenario (LTM_VS forwarding to APM_VS with help of simple iRule). APM_VS is used for Exchange Server publication (EWS protocol mainly). LTM_VS has datasafe and stream profiles attached. There is another iRule also which is doing simple replace string1 with string2 under HTTP_REQUEST event (this iRule is attached to LTM_VS)
Seems that after enabling stream engine with STREAM::enable under HTTP_REQEUST any Content-Length header is replaced with Transfer-Encoding: chunked. According to F5 docs this is normal behavior. Unfortunately this setup breaks EWS protocol
I compared TCPDUMP captures from working and non-working scenario. And found that Exchange server could answer to authentication requests with Transfer-Encoding: chunked but will not answer to EWS SOAP payload after successful authentication. If EWS SOAP payload came with Content-Length header everything is fine
So my question is: how can I use stream profile and unchunk resulted HTTP packet to be sent to Exchange with Content-Length header instead of Transfer-Encoding: chunked?
I tried adding this iRule to APM_VS under HTTP_REQUEST but nothing changed. TCPDUMP showed that Transfer-Encoding: chunked is still present in the packet that goes to Exchange server
if {[HTTP::header exists "Transfer-Encoding"]} {
HTTP::header remove "Transfer-Encoding"
HTTP::payload unchunk
}Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com