title: Why are final classes unproxyable with CDI?
body: <p>Section 5.4.1 of the <a href="http://docs.jboss.org/cdi/spec/1.0/html/injectionelresolution.html" rel="nofollow">CDI spec</a> states that otherwise valid beans are unproxyable (and thus cannot be injected) if declared <code>final</code>. The spec gives no rationale and I can not think of a reason for this decision.</p>
  
  <p>I am trying to stick by design rules saying that classes not explicitly designed for inheritance should forbid it. So the CDI spec seems to enforce bad design (and makes CheckStyle cry). </p>
  
  <p>Why is it so and what can be done about it?</p>
  
  <p>Thank you.</p>