You’ll have to wait for a later solr release with a compatible jetty. We have a plan to make jetty optional for SolrJ but it still is needed.
Jan Høydahl > 16. mai 2024 kl. 19:07 skrev Luke Kot-Zaniewski (BLOOMBERG/ 919 3RD A) > <lkotzanie...@bloomberg.net>: > > Hard to say without seeing your project but jetty seems to be using slf4j as > of some time > https://github.com/jetty/jetty.project/blob/7d264e6024efc80124592124891fb6e25b1554af/jetty-core/jetty-http2/jetty-http2-hpack/src/main/java/org/eclipse/jetty/http2/hpack/HpackEncoder.java#L43 > so I'd first check if you can just solve this by upgrading. > > This might help give some context to what happened to jetty's logging impl > https://github.com/jetty/jetty.project/pull/4643 > > Keep in mind that spring boot can be opinionated about logging depending on > which starter you use > https://docs.spring.io/spring-boot/docs/2.0.x/reference/html/howto-logging.html#howto-logging > .. If the version of Jetty you are running against is linking through an > slf4j interface (as it has been for some time apparently) then you should be > able to use a different/more modern logging implementation (i.e. Logback) and > manage all of that just by adding the right dependency. > > Luke > > From: users@solr.apache.org At: 05/16/24 12:41:05 UTC-4:00To: > users@solr.apache.org > Subject: Problems migrating solrj to run with SpringBoot 3 > > I'm in the process of upgrading a project that uses SolrJ to run with Spring > Boot 3. I've been able to keep the current version of my jars after migrating > to SpringBoot 3. SolrJ is working in some cases, but I've run into a problem > where it is missing the logging class for Jetty. I get this stack trace: > > > java.lang.ExceptionInInitializerError: Exception > java.lang.NoClassDefFoundError: org/eclipse/jetty/util/log/Log [in thread > "http-nio-8080-exec-8"] > > at > org.eclipse.jetty.http2.hpack.HpackEncoder.<clinit>(HpackEncoder.java:48) > > at > org.eclipse.jetty.http2.hpack.HpackFieldPreEncoder.getEncodedField(HpackFieldPre > Encoder.java:45) > > at > org.eclipse.jetty.http.PreEncodedHttpField.<init>(PreEncodedHttpField.java > :79) > > at > org.eclipse.jetty.http.PreEncodedHttpField.<init>(PreEncodedHttpField.java > :85) > > at > org.eclipse.jetty.http.PreEncodedHttpField.<init>(PreEncodedHttpField.java > :90) > > at org.eclipse.jetty.http.HttpFields.<clinit>(HttpFields.java:48) > > at > org.eclipse.jetty.client.transport.HttpRequest.<init>(HttpRequest.java:68) > > at > org.eclipse.jetty.client.HttpClient.newHttpRequest(HttpClient.java:449) > > at org.eclipse.jetty.client.HttpClient.newRequest(HttpClient.java:439) > > at > org.springframework.http.client.JettyClientHttpRequestFactory.createRequest(Jett > yClientHttpRequestFactory.java:135) > > I've looked high and low to find this class. I would hope that it would have > been embedded in the SolrJ jar, but apparently not. I'm using this version of > Solrj: > > > <dependency> > > <groupId>org.apache.solr</groupId> > > <artifactId>solr-solrj</artifactId> > > <version>8.11.3</version> > > </dependency> > > Along with > > <dependency> > > <groupId>org.springframework.boot</groupId> > > <artifactId>spring-boot-starter-data-solr</artifactId> > > <version>2.4.7</version> > > </dependency> > > That is part of SpringBoot. > > As far as I can tell, the only difference in the build is the version of > SpringBoot libraries. > > Any Ideas? > > Thank you so much for your help. > > Todd Stevenson > > > NOTICE: This e-mail is for the sole use of the intended recipient and may > contain confidential and privileged information. If you are not the intended > recipient, you are prohibited from reviewing, using, disclosing or > distributing > this e-mail or its contents. If you have received this e-mail in error, please > contact the sender by reply e-mail and destroy all copies of this e-mail and > its contents. > >