<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    types of deployment errors and their handling
</h3>
<span style="margin-bottom: 10px;">
    created by <a href="http://community.jboss.org/people/alex.loubyansky%40jboss.com">Alexey Loubyansky</a> in <i>JBoss AS7 Development</i> - <a href="http://community.jboss.org/message/558137#558137">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>I'd like to understand the idea behind the current design, atm it's confusing to me. I want to clarify whether there is a central point for service startup/lifecycle error handling or different kinds of errors at different phases are supposed to go through different error handling code.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><br/>There is ServiceListener which has event callbacks including serviceFailed for startup errors. There are implementations of ServiceListener (like ServerStartupListener) that collect all the failures and then later they can be queried for the errors to handle/log them, etc.<br/>ServiceListeners are available only inside BatchBuilder, BatchServiceBuilder, ServiceBuilder, ServiceController, so listeners can be invoked from only instances of those classes.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Question 1. There could be errors related to a service creation/initialization/start that happen before a service (service builder, controller, etc) is even created (as a Java object). E.g. the logic that is performed in ServiceActivator.activate(ctx) and errors like the deployment root doesn't exist, etc. So, should these errors be reported to ServiceListener? Currently, they are not and this logic executed outside of service builders and controllers, so they can't be reported to service listeners.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Question 2. There is BatchBuilder.install() method which may throw ServiceRegistryException. This method installs services going through the dependencies, etc. If errors happen, those errors are immediately propagated up and are re-thrown from install() w/o notifying the registered listeners. I guess, the listeners are actually supposed to be notified in this case?</p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="http://community.jboss.org/message/558137#558137">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in JBoss AS7 Development at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2225">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>