cxf learning