2

サーバーにShibboleth ID プロバイダー用のJetty 7をインストールして実行しようとしていますが、次のエラーが発生します。

[iam@web333 jetty]$ java -jar start.jar jetty.port=27335
2013-06-29 12:01:47.490:WARN:oejx.XmlConfiguration:Config error at <Call name="addConnector">|    <Arg>|      <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">|         <Arg>|           <New class="net.shibboleth.utilities.jetty7.DelegateToApplicationSslContextFactory">|             <Set name="keyStore">/home/iam/opt/shibboleth-idp/credentials/idp.jks</Set>|             <Set name="keyStorePassword">*****</Set>|           </New>|          </Arg>|        <Set name="port">27335</Set>|        <Set name="maxIdleTime">30000</Set>|      </New>|    </Arg>|  </Call> java.lang.ClassNotFoundException: net.shibboleth.utilities.jetty7.DelegateToApplicationSslContextFactory
Exception in thread "main" java.lang.ClassNotFoundException: net.shibboleth.utilities.jetty7.DelegateToApplicationSslContextFactory
        at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
        at org.eclipse.jetty.util.Loader.loadClass(Loader.java:100)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.nodeClass(XmlConfiguration.java:354)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.newObj(XmlConfiguration.java:754)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.itemValue(XmlConfiguration.java:1126)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.value(XmlConfiguration.java:1029)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.newObj(XmlConfiguration.java:777)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.itemValue(XmlConfiguration.java:1126)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.value(XmlConfiguration.java:1029)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.call(XmlConfiguration.java:722)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:388)
        at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:343)
        at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:296)
        at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1247)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1182)

https://wiki.shibboleth.net/confluence/display/SHIB2/IdPJetty7Prepareのガイドに従い、 jetty.xmlおよびjetty-ssl.xml 構成ファイルで、ポート 8080 および 8443 をポート 27335 に変更しました。

また、shib-delegatesl.xmlで、ポート 8443 を 27335 に変更しました。

<Configure id="Server" class="org.eclipse.jetty.server.Server">
  <Call name="addConnector">
    <Arg>
      <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
         <Arg>
           <New class="net.shibboleth.utilities.jetty7.DelegateToApplicationSslContextFactory">
             <Set name="keyStore">/home/iam/opt/shibboleth-idp/credentials/idp.jks</Set>
             <Set name="keyStorePassword">********</Set>
           </New>
          </Arg>
        <Set name="port">27335</Set>
        <Set name="maxIdleTime">30000</Set>
      </New>
    </Arg>
  </Call>
</Configure>

このエラーを修正するにはどうすればよいですか? Jettyが機能するかどうかをテストするにはどうすればよいですか? どうもありがとうございました。

よろしくお願いします!

4

2 に答える 2

2

クラスを含む jarnet.shibboleth.utilities.jetty7.DelegateToApplicationSslContextFactoryは、サーバーのクラスパスにある必要があります。

これを行う:

  1. shibboleth jar を${jetty.home}/lib/extディレクトリに配置します。
  2. 次のコマンドを実行して、それらがサーバーのクラスパスに存在することをテストします。

    $ java -jar start.jar --list-config

  3. 前と同じように Jetty を起動します。

于 2013-06-29T19:04:19.073 に答える
1

おそらくこれが役立つかもしれません: https://wiki.shibboleth.net/confluence/display/SHIB2/IdPJetty7Prepare

コピーするライブラリとそこに指定されている場所。

于 2014-10-17T10:47:26.713 に答える