Skip to content

"returnedSessionKeys" results in empty sessionKey in cased used in ForEachChildElementPipe with IbisLocalSender. #10052

@mericakgul

Description

@mericakgul

Current Behavior

  • In case "returnedSessionKeys" attribute is used in IbisLocalSender that is in ForEachChildElementPipe, the sessionKey(s) are returned empty.
  • This is a pipe from Zaakbrug:
Image
  • And this is the sessionKey that is returned to the parent adapter (IbisLocalSender ) which is empty in LadyBug:
Image
  • The value of the sessionKey is generated and returned by the adapter that is called by IbisLocalSender (In the example case it is 'ZdsHeeftAdapter'). Below the value of the sessionKey returned by the adapter can be monitored:
Image
  • This only happens in ForEachChildElementPipe. For example if "returnedSessionKeys" is used in "SenderPipe" then it works fine.

Another problem about returnedSessionKeys that is related to the one above is that; if there are more than one returnedSessionKeys (in JavaListener or in IbisLocalSender) and if there is a space along with the comma between two sessionKeys, then the sessionKey coming after the space is ignored.

For example; this works fine:

Image

However, this doesn't work properly and "ExtraElementen" sessionKey in the example is returned empty:

Image

Expected Behavior

  • returnedSessionKeys should work in any pipe so it should also work with ForEachChildElementPipe.
  • The spaces between returnedSessionKeys should be tolerated by the framework instead of ignoring the sessionKeys that are after space.

Environment Information

FF! 9.4.0-20251129.042329: ZaakBrug 1.26.1
Running on d370bea82023 using Apache Tomcat/10.1.49
Java Version: OpenJDK Runtime Environment (21.0.9+10-LTS)
Heap size: 573.8 MiB, total JVM memory: 1.0 GiB
Free memory: 498.2 MiB, max memory: 17.6 GiB
Free disk space: 199.0 GiB, total disk space: 250.9 GiB
Up since: 2025-12-02 10:45:37, timezone: Europe/Amsterdam

Steps To Reproduce

  • Just use returnedSessionKey in any ForEachChildElementPipe for the first problem.
  • Have multiple returnedSessionKeys and put space along with comma between them in JavaListener and see the one comes after space is empty. For this you don't have to use ForEachChildElementPipe. This problem occurs in any sender that uses returnedSessionKeys.

Configuration

<ForEachChildElementPipe name="ZdsHeeftIterator"
                getInputFromSessionKey="originalMessage"
                elementXPathExpression="/*/object/heeft">
                <IbisLocalSender
                    name="CallZdsHeeftAdapter"
                    javaListener="ZdsHeeftAdapter"
                    returnedSessionKeys="NewStatuses,Error">
                    <Param name="ZgwStatussen" sessionKey="ZgwStatussen" type="DOMDOC"/>
                    <Param name="ZaakTypeUrl" xpathExpression="$ZgwZaakType/ZgwZaakType/url">
                        <Param name="ZgwZaakType" sessionKey="ZgwZaakType" type="DOMDOC"/>
                    </Param>
                    <Param name="ZaakTypeCode" xpathExpression="$ZgwZaakType/ZgwZaakType/identificatie">
                        <Param name="ZgwZaakType" sessionKey="ZgwZaakType" type="DOMDOC"/>
                    </Param>
                    <Param name="ZaakUrl" sessionKey="ZaakUrl"/>
                    <Param name="Einddatum" xpathExpression="/*/object/einddatum" sessionKey="originalMessage"/>
                    <Param name="isActualiseerZaakStatusMessage" sessionKey="isActualiseerZaakStatusMessage"/>
                </IbisLocalSender>
                <Forward name="success" path="CheckForResultaat"/>
                <Forward name="exception" path="ResultWithErrorMessage" />
            </ForEachChildElementPipe>

Input

No response

What database are you using?

No response

What browsers are you seeing the problem on?

No response

Relevant Log Output

Anything else?


The space problem in returnedSessionKeys doesn't work on 9.1.1-20250513.130355 either and later for sure.

Metadata

Metadata

Type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions