Il giorno 10/dic/2012, alle ore 19.05, Christian Schneider ha scritto: > Hi all, > > I wanted to report about my progress of trying the CXF libraries (2.7.0) > in syncope. The idea is to test if we can have the cxf libs and spring > webservices at the same time. If this works we can do the migration to > cxf in several steps. If it does not work we have to do all in one go. > > I added the cxf libraries below to syncope-core. At first I had a lot of > test failures until Jan hinted that the cxf libraries probably collide > with the libs of the soap connector. > So I removed the cxf libs from the lib directory of the soap connector. > > After this change I had all tests except for > org.apache.syncope.core.rest.TaskTestITCase.sync() working. Does anyone > know what this test does exactly. I already understood that it uses a > csv table and a user template to kind of postprocess users. As it fails > after adding the cxf deps I assume it also does a webservice call. Can > someone give me a hint where to dig?
Hi Christian, following the steps performed by the TaskTestITCase.sync() test. 1. create a user 2. read the csv synchronization task (id: 4) 3. change it adding an action aclass and a user template. In particular, the latter add a database resource and the role '8' to the synced user. Since the role 8 has a SOAP resource assigned, the synchronized/updated user will be propagated via the SOAP connector to ws-targetre-source-2. 4. execute the task 5. check for executions and updated user attributes and memberships. I think that the point three is what you should be interested in more. > So assumed I get this last test working the problem with the soap > connector still remains. The way I simply removed the libs is of course > just a test to see if it works. We still have to find a proper solution > for this. > One possibility is to update the soap connector to the current cxf > version. This will probably work until we upgrade the cxf version again. > Another possibility would be to remove the libs from the connector and > rely on people adding the libs in another way. As far as I understood > the idea of the connectors is that they simply work without additional > libs so I am not sure if this is an option. I also do not yet understand > how the classloading in the connectors works. Can someone explain this? From my PPOV we cannot remove CXF libs from the SOAP connector: we cannot consider this library as a JDBC driver for database table connector. I suggest to update the connId dependency and to open a new issue on syncope related to this upgrading problem. Best regards, F. > Best regards > > Christian > > ---- > > <dependency> > <groupId>javax.ws.rs</groupId> > <artifactId>javax.ws.rs-api</artifactId> > </dependency> > > <dependency> > <groupId>org.apache.cxf</groupId> > <artifactId>cxf-api</artifactId> > <version>${cxf.version}</version> > </dependency> > > <dependency> > <groupId>org.apache.cxf</groupId> > <artifactId>cxf-rt-frontend-jaxrs</artifactId> > </dependency> > <dependency> > <groupId>org.apache.cxf</groupId> > <artifactId>cxf-rt-rs-extension-providers</artifactId> > </dependency> > <dependency> > <groupId>org.apache.cxf</groupId> > <artifactId>cxf-rt-rs-extension-search</artifactId> > </dependency> > <dependency> > <groupId>org.apache.cxf</groupId> > <artifactId>cxf-rt-frontend-jaxws</artifactId> > </dependency> > > <dependency> > <groupId>org.codehaus.jettison</groupId> > <artifactId>jettison</artifactId> > <version>1.3.2</version> > </dependency>