Missing ConfiguredBeanLocator in bus created by org.apache.cxf.bus.CXFBusFactory
--------------------------------------------------------------------------------
Key: CXF-2927
URL: https://issues.apache.org/jira/browse/CXF-2927
Project: CXF
Issue Type: Bug
Components: Bus
Reporter: Alessio Soldano
Fix For: 2.3
On the current trunk (2.3-SNAPSHOT) a ConfiguredBeanLocator instance is only
installed when the Spring based Bus factory is used. Unfortunately not all the
retrieval of that bus extensions are followed by a check for the extension
being actually available, hence it's possible to get NPE.
I've reproduced this issue when manually enabling WS-Policy engine after
building the Bus with the CXFBusFactory as well as using the wsdl2java tooling
(without spring available).
In the latter, for instance, the BindingFactoryManagerImpl throws NPE when
finding the BindingFactory for a wsdl segement like this:
<binding name="Hello2Binding" type="tns:Hello2">
<wsp:Policy>
<wsam:Addressing wsp:Optional="true">
<wsp:Policy/>
</wsam:Addressing>
</wsp:Policy>
As a temporary workaround I've succesfully verified adding a dummy locator to
the bus solves the problem. That would implement ConfiguredBeanLocator
returning null/empty collections.
However, I'm worndering what we want to do here, we can either go and protect
every access to this locator or install a default one that does nothing in the
CXFBusFactory.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.