How to Run the IdP 5 Testbed in Eclipse with Jetty 12
- 1 How To Run the IdP 5 Testbed in Eclipse with Jetty 12
- 1.1 1) Install Jetty (download and unpack jetty-home)
- 1.2 2) Clone the java-idp-testbed, java-idp-jetty-base , and java-identity-provider projects in the same directory :
- 1.3 2b) Optionally, clone additional source code repositories :
- 1.4 3) Checkout the 12-testbed-eclipse branch of java-idp-jetty-base :
- 1.5 4) Import projects into Eclipse : File > Import > Maven > Existing Maven Projects
- 1.6 5) Assemble third party dependencies by building the IdP WAR and removing IdP JARs :
- 1.7 6) Download logging dependences (Logback and SLF4J) for Jetty :
- 1.8 7) Run the testbed in Eclipse as a Java Application :In the idp-testbed project, right-click on idp-testbed-jetty-12.launch > Run As > Java Application
- 1.9 8) Go to the testbed webapp : https://localhost:8443/index.html
- 1.10 Issues
- 1.11 Logging
Known to works with Eclipse 2024-09 or later
How To Run the IdP 5 Testbed in Eclipse with Jetty 12
1) Install Jetty (download and unpack jetty-home)
The version of Jetty should match the jetty.version property in the testbed POM java-idp-testbed/pom.xml
The Jetty directory should be set as the jetty.home system property in the Eclipse Launcher when running the testbed's Main.java.
For example : -Djetty.home=/opt/jetty-home-12.0.16
Download Jetty, verify the signature, verify the key is published by the Jetty developers, and unpack to /opt/ :
2) Clone the java-idp-testbed, java-idp-jetty-base , and java-identity-provider projects in the same directory :
git clone git@git.shibboleth.net:java-idp-testbed
git clone git@git.shibboleth.net:java-idp-jetty-base
git clone git@git.shibboleth.net:java-identity-provideror
git clone https://git.shibboleth.net/git/java-idp-testbed
git clone https://git.shibboleth.net/git/java-idp-jetty-base
git clone https://git.shibboleth.net/git/java-identity-provider2b) Optionally, clone additional source code repositories :
git clone git@git.shibboleth.net:java-shib-attribute
git clone git@git.shibboleth.net:java-shib-metadata
git clone git@git.shibboleth.net:java-shib-profile
git clone git@git.shibboleth.net:java-shib-shared
git clone git@git.shibboleth.net:java-opensamlor
git clone https://git.shibboleth.net/git/java-shib-attribute
git clone https://git.shibboleth.net/git/java-shib-metadata
git clone https://git.shibboleth.net/git/java-shib-profile
git clone https://git.shibboleth.net/git/java-shib-shared
git clone https://git.shibboleth.net/git/java-opensaml3) Checkout the 12-testbed-eclipse branch of java-idp-jetty-base :
cd java-idp-jetty-base
git checkout 12-testbed-eclipse4) Import projects into Eclipse : File > Import > Maven > Existing Maven Projects
5) Assemble third party dependencies by building the IdP WAR and removing IdP JARs :
cd java-identity-provider/idp-war
mvn clean package -DskipTests
rm target/idp-war-*/WEB-INF/lib/idp-*.jarOptionally remove additional JARs :
rm target/idp-war-*/WEB-INF/lib/shib-*.jar
rm target/idp-war-*/WEB-INF/lib/opensaml-*.jar6) Download logging dependences (Logback and SLF4J) for Jetty :
cd java-idp-jetty-base/src/main/resources/jetty-base
java -jar $jetty.home/start.jar --create-files7) Run the testbed in Eclipse as a Java Application :
In the idp-testbed project, right-click on idp-testbed-jetty-12.launch > Run As > Java Application
8) Go to the testbed webapp :
https://localhost:8443/index.html
Issues
Logging
You will probably want to change the root logging level from DEBUG to INFO in
idp-conf-impl/src/test/resources/net/shibboleth/idp/module/conf/logback.xml