code: public void processXML()
                      throws InjectionException
      {
          final boolean isTraceOn = TraceComponent.isAnyTracingEnabled();
          if (isTraceOn && tc.isEntryEnabled())
              Tr.entry(tc, "processXML");
  
          for (int processorIndex = 0; processorIndex < ivProviders.size(); processorIndex++)
          {
              InjectionProcessorProvider<?, ?> provider = ivProviders.get(processorIndex);
              if (isProcessXMLNeeded(provider))
              {
                  InjectionProcessor<?, ?> processor = getProcessor(processorIndex, provider);
  
                  try
                  {
                      processor.processXML();
                  } catch (InjectionException iex)
                  {
                      FFDCFilter.processException(iex, CLASS_NAME + ".processXML",
                                                  "300", this, new Object[] { processor });
                      // Include the cause message in the logged message, and don't
                      // unnecessarily wrap the exception.                          F53641
                      Tr.error(tc, "FAILED_TO_PROCESS_XML_FROM_DD_CWNEN0009E", iex.getMessage());
                      throw iex;
                  } catch (Throwable t)
                  {
                      FFDCFilter.processException(t, CLASS_NAME + ".processXML",
                                                  "768", this, new Object[] { processor });
                      // Include the cause stack in the logged message.             F53641
                      Tr.error(tc, "FAILED_TO_PROCESS_XML_FROM_DD_CWNEN0009E", t);
                      throw new InjectionConfigurationException("Failed to process xml from Deployment Descriptor.", t);
                  }
              }
          }
  
          if (isTraceOn && tc.isEntryEnabled())
              Tr.exit(tc, "processXML");
      }
docs: Process XML for all processors as needed.