Error when Activating Authentication Realms in jetty.xml
I get the following error when I uncomment the Authentication Realms section of the jetty.xml
jvm 5 | CRIT [er (eepsite)] uter.startup.LoadClientAppsJob: Error starting up the client class net.i2p.jetty.JettyStart jvm 5 | java.lang.reflect.InvocationTargetException jvm 5 | at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) jvm 5 | at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) jvm 5 | at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) jvm 5 | at java.lang.reflect.Constructor.newInstance(Unknown Source) jvm 5 | at net.i2p.router.startup.LoadClientAppsJob$RunApp.run(LoadClientAppsJob.java:308) jvm 5 | at java.lang.Thread.run(Unknown Source) jvm 5 | at net.i2p.util.I2PThread.run(I2PThread.java:103) jvm 5 | Caused by: org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration$1: class org.eclipse.jetty.security.HashLoginService.setUserRealms(class [Lorg.eclipse.jetty.security.LoginService;) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.set(XmlConfiguration.java:606) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:413) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.newObj(XmlConfiguration.java:826) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.itemValue(XmlConfiguration.java:1260) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.value(XmlConfiguration.java:1165) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.access$500(XmlConfiguration.java:276) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration$AttrOrElementNode.getList(XmlConfiguration.java:1393) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration$AttrOrElementNode.getList(XmlConfiguration.java:1368) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.call(XmlConfiguration.java:731) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:419) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:360) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:261) jvm 5 | at net.i2p.jetty.JettyStart.parseArgs(JettyStart.java:152) jvm 5 | at net.i2p.jetty.JettyStart.<init>(JettyStart.java:82) jvm 5 | ... 7 more jvm 5 | Suppressed: java.lang.NoSuchMethodException: org.eclipse.jetty.security.HashLoginService.setUserRealms([Lorg.eclipse.jetty.security.LoginService;) jvm 5 | at java.lang.Class.getMethod(Unknown Source) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.set(XmlConfiguration.java:491) jvm 5 | ... 20 more jvm 5 | Suppressed: java.lang.NoSuchFieldException: TYPE jvm 5 | at java.lang.Class.getField(Unknown Source) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.set(XmlConfiguration.java:504) jvm 5 | ... 20 more jvm 5 | Suppressed: java.lang.NoSuchFieldException: UserRealms jvm 5 | at java.lang.Class.getField(Unknown Source) jvm 5 | at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.set(XmlConfiguration.java:519) jvm 5 | ... 20 more jvm 5 | CRIT [er (eepsite)] uter.startup.LoadClientAppsJob: Error starting up the client class net.i2p.jetty.JettyStart
I was able to successfully start the Jetty server by adding my own code (below), but the Authentication Functionality was not activated.
<Call name="addBean"> <Arg> <New class="org.eclipse.jetty.security.HashLoginService"> <Set name="name">Test Realm</Set> <Set name="config">C:\ProgramData\i2p\eepsite\etc/realm.properties</Set> <Set name="refreshInterval">0</Set> </New> </Arg> </Call>
I2P Version and Running Environment:
I2P version: 2.1.0-0 API version: 0.9.57 Java version: Oracle Corporation 1.8.0_361 (Java(TM) SE Runtime Environment 1.8.0_361-b09) Wrapper version: 3.5.25 Server version: 9.3.30.v20211001 Servlet version: Jasper JSP 2.3 Engine (3.1) JSTL version: standard-taglib 1.2.0 Platform: Windows 10 amd64 10.0 JBigI status: Locally optimized library jbigi-windows-coreisbr_64.dll loaded from file GMP version: 6.0.0 JBigI version: 3 JCpuId version: 3