docs: void resolveInjectionBindings()
                      throws InjectionException
      {
          final boolean isTraceOn = TraceComponent.isAnyTracingEnabled();
          if (isTraceOn && tc.isEntryEnabled())
              Tr.entry(tc, "resolveInjectionBindings: " + this);
  
          Collection<InjectionBinding<A>> allInjectionBindings = ivAllAnnotationsCollection.values();
          for (InjectionBinding<A> injectionBinding : allInjectionBindings)
          {
              if (injectionBinding.ivResolveAttempted) // F87539
              {
                  if (isTraceOn && tc.isDebugEnabled())
                      Tr.debug(tc, "skipping already resolved " + injectionBinding.toSimpleString());
                  continue;
              }
  
              if (isTraceOn && tc.isDebugEnabled())
                  Tr.debug(tc, "resolving " + injectionBinding.toSimpleString());
  
              injectionBinding.resolveJndiName(); // F743-29417
              resolve(injectionBinding);
              injectionBinding.ivResolveAttempted = true; // F87539
  
              InjectionScope scope = injectionBinding.getInjectionScope();
              if (scope != InjectionScope.COMP &&
                  ivContext.ivSaveNonCompInjectionBindings) // F743-33811.2
              {
                  if (isTraceOn && tc.isDebugEnabled())
                      Tr.debug(tc, "saving " + scope + " injection binding " + injectionBinding.toSimpleString());
  
                  Map<Class<?>, Map<String, InjectionBinding<?>>> savedInjectionBindings;
                  if (scope == InjectionScope.MODULE)
                  {
                      savedInjectionBindings = ivContext.ivSavedModuleInjectionBindings;
                  }
                  else if (scope == InjectionScope.APP)
                  {
                      savedInjectionBindings = ivContext.ivSavedAppInjectionBindings;
                  }
                  else
                  {
                      savedInjectionBindings = ivContext.ivSavedGlobalInjectionBindings;
                  }
  
                  Map<String, InjectionBinding<A>> injectionBindingsMap = getSavedInjectionBindings(savedInjectionBindings, true);
                  String jndiName = injectionBinding.getJndiName();
                  InjectionBinding<A> savedBinding = injectionBindingsMap.get(jndiName);
                  if (savedBinding == null)
                  {
                      injectionBindingsMap.put(jndiName, injectionBinding);
                  }
                  else
                  {
                      savedBinding.mergeSaved(injectionBinding);
                  }
              }
          }
  
          // F743-21481
          // Add all of the InjectionBindings that this processor instance knows
          // about (these InjectionBinding instances are now resolved) so they can
          // later be used to determine the injection targets for a class.
          ivContext.ivProcessedInjectionBindings.addAll(allInjectionBindings); // F743-33811.1
  
          if (ivSimpleInjectionBindings != null) // F50309.5 PM88594
          {
              Collection<InjectionBinding<A>> injectionBindings = ivSimpleInjectionBindings.values();
              for (InjectionBinding<A> injectionBinding : injectionBindings)
              {
                  if (isTraceOn && tc.isDebugEnabled())
                      Tr.debug(tc, "resolving " + injectionBinding.toSimpleString());
  
                  resolve(injectionBinding);
              }
  
              ivContext.ivProcessedInjectionBindings.addAll(injectionBindings);
          }
  
          if (!ivMissingBindings.isEmpty()) {
              Iterator<String> missingBindingIter = ivMissingBindings.iterator();
              String resRefName;
              String displayName = ivNameSpaceConfig.getDisplayName();
              while (missingBindingIter.hasNext()) {
                  resRefName = missingBindingIter.next();
                  Tr.error(tc, "UNABLE_TO_RESOLVE_THE_RESOURCE_REFERENCE_CWNEN0044E", resRefName, displayName);
              }
              throw new InjectionException("CWNEN0044E: A resource reference binding could not be found for the following resource references " + ivMissingBindings.toString()
                                           + ", defined for the " + displayName + " component.");
          }
  
          if (isTraceOn && tc.isEntryEnabled())
              Tr.exit(tc, "resolveInjectionBindings");
      }