Github user bbende commented on the issue:

    https://github.com/apache/nifi/pull/3040
  
    I agree with the points made by @joewitt , although this PR did make me 
compare what we are doing for processors vs. controller services...
     
    I noticed that for processors the try/catch wraps the Class.forName AND the 
newInstance() call, and then creates a ghost component an exception is thrown, 
where as controller services only catch exceptions from Class.forName and 
anything outside of that would not create a ghost component.
    
    Technically exceptions from Class.forName would be the ones that indicate 
the class for the component is not present, and exceptions from newInstance() 
would indicate an exception thrown from the constructor.
    
    So I'm not sure which is more correct, or if anything should be changed, 
but I did notice the difference in behavior, and some of the changes in this PR 
seem to be for making the controller service behavior more similar to 
processors.


---

Reply via email to