Uploaded image for project: 'EJB Client Library (AS7+)'
  1. EJB Client Library (AS7+)
  2. EJBCLIENT-425

EJB client API does not delete ContextData that has been removed on the server side

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 4.0.44.Final
    • None

      An EJB client can send and receive ContextData via an Interceptor, see addReturnedContextDataKey(String key) method on the EJBClientInvocationContext class, see:

          /**
           * Indicates to the server that a client side interceptor is interested in the context data that is stored
           * under the given key. Any object on the context data map (i.e. {@code InvocationContext.getContextData()} that is
           * present at the end of the server invocation will be serialised and returned to the client.
           *
           * If an object is present under this key and is not serializable then the request will fail.
           *
           * @param key The context data key the client interceptor is interested in
           */
          public void addReturnedContextDataKey(String key) {
              Object returnedData = getContextData().get(RETURNED_CONTEXT_DATA_KEY);
              if(returnedData == null) {
                  getContextData().put(RETURNED_CONTEXT_DATA_KEY, returnedData = new HashSet<>());
              } else if(!(returnedData instanceof Set)) {
                  throw Logs.INVOCATION.returnedContextDataKeyOfWrongType();
              }
              Set<String> keys = (Set<String>) returnedData;
              keys.add(key);
          }
      

      If a client is sending a key/value to the server and add this key with addReturnedContextDataKey(String key), a server side removed value for that key is still present on the ContextData after the response in client side interceptors.

              rhn-support-jbaesner Joerg Baesner
              rhn-support-jbaesner Joerg Baesner
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: