| Building Apache CXF Fediz |
| ========================= |
| |
| Initial Setup |
| ------------- |
| |
| 1) Install J2SE 8 SDK, which can be downloaded from |
| http://www.oracle.com/technetwork/java/javase/downloads/index.html |
| |
| 2) Make sure that your JAVA_HOME environment variable is set to the newly installed |
| JDK location, and that your PATH includes %JAVA_HOME%\bin (Windows) or |
| $JAVA_HOME$/bin (*nix). |
| |
| 3) Install Maven 3.0.x or newer, which can be downloaded from |
| http://maven.apache.org/download.html. Make sure that your PATH includes |
| the MVN_HOME/bin directory. |
| |
| |
| Building |
| -------- |
| |
| 1) Change to the top level directory of Apache CXF Fediz source distribution. |
| 2) Run |
| $> mvn clean install |
| This will compile Apache CXF Fediz and run all of the tests in the Apache CXF Fediz source |
| distribution. Alternatively, you can run |
| $> mvn -Pfastinstall. |
| This will compile Apache CXF Fediz without running the tests and takes less |
| time to build. |
| Depending on the load of remote Maven repositories, you may have |
| to run "mvn" multiple times until the required dependencies are |
| all located in your local Maven repository. It usually takes some time for |
| Maven to download required dependencies in the first build. |
| |
| |
| Source Directory structure |
| -------------------------- |
| |
| + plugins contains the sources of the Federation plugin |
| + core the core module contains the majority of functionality which is Servlet container agnostic |
| + tomcat the Tomcat module is the bridge of the core to the |
| Tomcat 8/9 specific security engine (container managed) |
| + jetty9 the Jetty 9 module is the bridge of the core to the |
| Jetty 9 specific security engine (container managed) |
| + cxf the CXF module is the bridge of the core to the |
| CXF specific security engine (application managed) |
| + spring the Spring module is the brige of the core to the |
| Spring Security 4 specific security engine (application managed) |
| + spring3 the Spring3 module is the bridge of the core to the |
| Spring Security 3 specific security engine (application managed) |
| + websphere the IBM Websphere module is the bridge of the core to the |
| IBM Websphere specific security engine (container managed) |
| |
| + services contains the sources of the Identity Provider |
| + sts the STS module contains the configured CXF STS which supports the Federation use cases |
| + idp the IDP module is the bridge of the STS to a WS-Trust/SOAP unaware browser |
| |
| + examples |
| + simpleWebapp this example shows how to protect a simple web application using |
| the Fediz plugin which is configured on the container level |
| + springPreAuthWebapp this example shows how to protect a simple web application using |
| the Fediz plugin which is configured at the container level |
| and creates the spring security context to use spring security features |
| for authorization like annotations, spring security configuration, etc. |
| + springWebapp this example shows how to protect a simple web application using |
| the Fediz plugin which is configured within the application in |
| the Spring Security 3 configuration |
| + spring2Webapp this example shows how to protect a simple web application using |
| the Fediz plugin which is configured within the application in |
| the Spring Security 2 configuration |
| + wsclientWebapp this example shows how a protected web application calls a web service protected by the STS |
| + webapp contains the web application |
| + webservice contains the web services implementation |
| |