Folks, I just realized that because of the change in the Synapse startup, now we are having an issue with the Synapse handlers being registered via the axis2 module. Here is the issue;
We now initializes Synapse and starts it through a different call than the Module#init() method, which seems to be correct because for synapse to start we need a properly initialized axis2 environment. Even though this is now fixed, this actually doesn't fix the proper start order of the Synapse, because now the handlers to intercept the messages and bring them into the Synapse Environment is still registered in the axis2 handler chain before the Synapse environment gets initialized. Even though this doesn't causes an issue for the default setup (listeners will not be open till Synapse starts properly) we are going to have issues when you try to start Synapse on an already initialized axis2 environment. If you look at the way synapse operates, even though it seems like a module of axis2 it is really not, it just uses the axis2 handler architecture to leverage the other axis2 features while getting the message dispatched into synapse. So I propose to drop the module and programaticaly register theses handler after properly initializing the Synapse environment. WDYT? Thanks, Ruwan -- Ruwan Linton Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb WSO2 Inc.; http://wso2.org email: [email protected]; cell: +94 77 341 3097 blog: http://ruwansblog.blogspot.com
