My application throws a NoSuchMethodError: com.google.common.base.Stopwatch.createStarted()Lcom/google/common/base/Stopwatch error NoSuchMethodError: com.google.common.base.Stopwatch.createStarted()Lcom/google/common/base/Stopwatch . I donβt know why, because 16.0.1 really contain this class, I checked. From what I researched, it looks like this is a mistake?
I also have this code for reference, although I think this is not a problem:
FirewallRule rule = new PeriodicFirewallCounterRule(60, TimeUnit.SECONDS, new IpAddressCountingPolicy()); ((PeriodicFirewallCounterRule)rule).addHandler(new RateLimitationHandler(new UniqueLimitPolicy(10))); FirewallFilter firewallFiler = new FirewallFilter(getContext(), list(rule)); firewallFiler.setNext(ma);
My application uses Restet APISpark:
<dependency> <groupId>org.restlet.gae</groupId> <artifactId>org.restlet.ext.apispark</artifactId> <version>${version.restlet}</version> </dependency>
When starting and accessing the api of the REST application, the application Error:
[INFO] Caused by: java.lang.NoSuchMethodError: com.google.common.base.Stopwatch.createStarted()Lcom/google/common/base/Stopwatch; [INFO] at org.restlet.ext.apispark.internal.firewall.rule.counter.PeriodicCounter.<init>(PeriodicCounter.java:65) [INFO] at org.restlet.ext.apispark.internal.firewall.rule.PeriodicFirewallCounterRule$1.load(PeriodicFirewallCounterRule.java:86) [INFO] at org.restlet.ext.apispark.internal.firewall.rule.PeriodicFirewallCounterRule$1.load(PeriodicFirewallCounterRule.java:84) [INFO] at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599) [INFO] at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379) [INFO] at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342) [INFO] at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257) [INFO] ... 74 more
source share