Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added Properties and Logging headings

...

  1. Checkout the java-idp-testbed, java-identity-provider, and java-idp-jetty-base projects as peers in the same directory and import them into Eclipse. You can optionally do the same for the rest of the stack (java-opensaml, etc.) if you wish.
  2. Switch to the '9.3' branch of java-idp-jetty-base.
  3. Install Jetty (download and unpack jetty-distribution)

    • The version of Jetty should match the jetty.version property in the testbed POM (java-idp-testbed/pom.xml)
    • The Jetty installation directory should be set as the jetty.home system property in the Eclipse Launcher for the testbed's Main.java, see below
  4. Add testbed.xml to idp-jetty-base/src/main/resources/jetty-base/webapps/ :

    Code Block
    languagexml
    titleidp-jetty-base webapps/testbed.xml
    collapsetrue
    <?xml version="1.0"?>
    <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
    <Configure class="org.eclipse.jetty.webapp.WebAppContext">
      <Set name="war">../../../../../java-idp-testbed/src/main/webapp/</Set>
      <Set name="contextPath">/</Set>
      <Set name="extractWAR">false</Set>
      <Set name="copyWebDir">false</Set>
      <Set name="copyWebInf">true</Set>
    </Configure>
  5. Adjust paths in idp-jetty-base/src/main/resources/jetty-base/start.d/idp.ini :

    Code Block
    languagetext
    titleidp-jetty-base start.d/idp.ini
    collapsetrue
    jetty.war.path = ../../../../../java-identity-provider/idp-war/src/main/webapp
    jetty.backchannel.keystore.path=../../../../../java-identity-provider/idp-conf/src/test/resources/credentials/idp-backchannel.p12
    jetty.browser.keystore.path=../../../../../java-identity-provider/idp-conf/src/test/resources/credentials/idp-userfacing.p12
  6. Configure the Eclipse Launcher for the testbed's Main.java :

    • Program arguments : --lib=${workspace_loc:idp-conf/src/test/resources} --lib=${workspace_loc:idp-conf/src/main/resources}
    • VM arguments : -Djetty.home=<path to jetty-distribution> -Didp.home=classpath: -Didp.webflows=classpath*:/flows -Djava.io.tmpdir=tmp
    • working directory : ${workspace_loc:idp-jetty-base/src/main/resources/jetty-base}
  7. Run Main.java from java-idp-testbed as a Java Application (there's an Eclipse launcher file included, but it may need customization).
  8. Access https://localhost:8443/index.html with a browser on the same machine.

Properties

Note that the Jetty WebAppProvider configured in idp-jetty-base's jetty-deploy.xml reads properties from idp-jetty-base's start.d/idp.ini, hence properties used in a deployment descriptor XML file are not overridable via command line arguments or via other start.d/*.ini files.

Logging

Jetty will log to ${workspace_loc:idp-jetty-base}/src/main/resources/jetty-base/logs

...