On Aug 21, 2012, at 3:52 PM, Driesen Gert <[email protected]> wrote:
> Hello, > > In CXF 2.5.4, I’m successfully configuring a JAX-WS proxy to use a specific > keymanager and trustmanager. > When I do exactly the same on CXF 2.6.x (2.6.1 and 2.6.2), then the > TlsClientParameters appear to get reset when I invoke an operation on the > proxy. > > I’ve attached a file that shows the log output (at level FINE) between the > creation of the JAX-WS proxy, and the (failed) invocation of an operation on > that proxy. > I’ve “annotated” the log file to show where the creation of the proxy starts > and ends, and where I think that the TlsClientParameters are getting reset. Log didn't' make it through the apache filters… :-( > When you search for “>>> END CREATE PORT”, then the line just above shows > that I configured the HTTP conduit for TLS. > If you then search for “>>> TlsClientParameters are reconfigured for plain > HTTP ??”, the line below shows that setTlsClientParameters is invoked again. > Note that I’m NOT using spring at all. > What am I missing here ? > > On a side note (let me know if this deserves a separate thread): > Has spring(-web) always been a required dependency to use a CXFServlet ? Well, no, but it should have been. In 2.5.x, cxf-rt-transport-http had a transitive dependency on spring-web. Thus, even if you didn't depend on it, maven would bring it in automatically. With 2.6, we made sure all the spring deps are marked optional and likely provided as well. Thus, they are no longer pulled in by Maven transitively and if you are using Spring, you really need to make sure you depend on it. > I had to explicitly add it as a maven dependency to get 2.6.x working, if not > I get a NoClassDefFoundError when the default ctor of CXFServlet is invoked. > I checked the source code, and it indeed uses spring. > If it now IS a required dependency, then why is that dependency marked > “optional” in the POM for cxf-rt-transports-http ? And while I’m at it, why > is that dependency (like many others) marked “provided” ? Specifically because spring is optional. You can use the CXFNoSpringServlet or many other use cases without spring. Marking it optional allows the maven-bundle-plugin to properly mark the OSGi imports as optional as well. Basically, Spring IS optional with CXF. Dan > > Thanks! > Gert > > This e-mail and all files transmitted as attachment(s) thereto are > confidential and solely intended for the individual to whom or the > organization to which they are addressed. If you received this e-mail by > mistake, please notify Cegeka's Service Desk at [email protected] or > call +32 (0)11 240 363. We thank you in advance. Cegeka hereby confirms that > this message has been swept by Sophos for the presence of viruses. -- Daniel Kulp [email protected] - http://dankulp.com/blog Talend Community Coder - http://coders.talend.com
