geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rick McGuire <rick...@gmail.com>
Subject Re: Puzzling problem with ConnectorModuleBuilder.
Date Thu, 07 Oct 2010 13:10:43 GMT
  Managed to answer my own question finally.  The connector deployer 
plan is instantiating two ConnectorModuleBuilder instances, but I had 
only added the ModuleBuilderExtension references to the 
ClientConnectorBuilder instance.  I completely missed the fact the 
deployer plan had two different instances specified.

Rick


On 10/7/2010 8:42 AM, Rick McGuire wrote:
>  I'm working on implementing bean validation support for the 
> connectors in Geronimo 3.0.  This has involved changes to both the 
> connector component and Geronimo.  I've attached a couple of patches 
> patches to the Jira for this enhancement showing my progress so far:
>
> https://issues.apache.org/jira/browse/GERONIMO-5230
>
> Basically, each of the javabean types that require validation have had 
> their corresponding wrapper classes enhanced to support injection of a 
> ValidatorFactory instance and optionally validate the wrappered 
> objects before the first use.
>
> A big part of this was changes to the ConnectorModuleBuilder to add a 
> reference to the ValidatorFactoryGBean for the module in question.  In 
> order for this to work, a ValidatorFactoryGBean instance needs to be 
> added to the module by the BValModuleBuilderExtension.  Currently, the 
> ConnectorModuleBuilder did not support builder extensions, but my 
> patch has added this support.
>
> Everything is building cleanly, but when I start the server, the 
> ManagedConnectorFactory GBean cannot be initialized because it can't 
> find the reference to the ValidatorFactory instance.  Looking at the 
> serialized config for the system-database car, the required 
> ValidatorFactory GBean does appear to be missing.
>
> Debugging this further in the build for the system-database plugin, 
> I'm seeing something that I can't explain.  I'm seeing the following 
> events occurring during this build:
>
> 1)  The BValModuleBuilderExtension is created (expected).
> 2)  The ConnectorModuleBuilder is created, but NO 
> ModuleBuilderExtensions are passed in to the constructor (not expected).
> 3)  A second ConnectorModuleBuilder instance is created.  This 
> instance is passed a collection containing the single 
> BValModuleBuilderExtension instance (this was what was expected, 
> except for the fact this a second instance).
> 4)  The first ConnectorModuleBuilder instance is called to process the 
> module.  Since this instance does not have a reference to the 
> BValModuleBuilderExtension, the ValidatorFactoryGBean instance is not 
> getting added to the configuration.
>
> So, I'm now at a point where I'm stuck.  So far, I've not been able to 
> figure out why there are two instances of the ConnectorModuleBuilder 
> getting created and why the first instance is not picking up the 
> BValModuleBuilderExtension.  I'm guessing I'm missing something simple 
> here, but I'm a bit stumped on how to debug this further.  Can anybody 
> offer an assistance here?
>
> Rick
>
>


Mime
View raw message