Hi,
good catch! Go ahead and send the PRs, I'll reopen that WELD issue and link them to
it.
Also, please add a test for this (basically just enhance the one I had in
https://github.com/weld/core/pull/1962/files).
Matej
----- Original Message -----
From: "Benjamin Confino" <BENJAMIC(a)uk.ibm.com>
To: weld-dev(a)lists.jboss.org
Cc: "Takayuki T Ishii" <EBB0F3L(a)jp.ibm.com>
Sent: Thursday, February 20, 2020 10:20:25 PM
Subject: [weld-dev] Follow up to WELD-2611
Hello
I heard back from my excellent L2 support colleague who has tested the weld
fix and he says that it works perfect when you append something like
"?cid=100000" to the url but not if you append "?cid=" I debugged
into the
code and I believe that what is happening is that:
AbstractConversationContext .initilize treats a null or an isEmpty() cid as
as a trigger to enter the else block and call
associateRequestWithNewConversation()
However LazyHttpConversationContextImpl .checkContextInitialized() only calls
fireInitEvent() for a null cid or in the catch block for a
ConversationNotActiveException.
The two methods have differing understandings of what's triggers a new
conversation, so the "?cid=" case falls through the gap. I think this can be
fixed by adding an "|| cid.isEmpty()" to LazyHttpConversationContextImpl
.checkContextInitialized() above the non-catch block call to
fireInitEvent(), if you agree I can spin up a couple of pull requests.
Regards
Benjamin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
_______________________________________________
weld-dev mailing list
weld-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/weld-dev