I have page A, that contains 9 iframes and loads 9 instances of another page, page B. After a CF restart, usually 3 to 5 of those B pages fails to load, giving Builder.DSLDependencyNotFoundException-error messages. Rest of the B pages load just fine. 99% of the time I don't have any problems loading any of our web applications pages (including B pages if they are loaded "normally" and not through page A), but there is some occurrences of DSLDependencyNotFoundException's happening, although they are very difficult to reproduce. Therefore I'm lucky that I have page A now, as loading all of the B pages successfully through A page fails every time after a CF restart.
I noticed, that in wirebox manual's example, the inject string contained prefix "id:". I did a test and added the prefix to all page B handler's cfproperties service inject strings and then repeated the test. After adding the ids, all 9 out of 9 page B instances loaded without any problems (I tested this several times).
Here is the example code that failed:
<cfproperty name="xxx_service" inject="xxxService@xxx_manager" scope="instance">
...and this worked:
<cfproperty name="xxx_service" inject="id:xxxService@xxx_manager" scope="instance">
My question is, why does the one without id's work 99% of the time, but fails some times (under a heavy load perhaps?). Is it a suggested policy to add the id:-prefix? Could this be a misconfiguration of my CB/Wirebox?
I would be happy to hear any suggestions, comments or questions anyone may have related to this. I can provide more specific information if needed.
-Antti