Skip to content

Instantly share code, notes, and snippets.

@imasahiro
Created July 6, 2018 10:31
Show Gist options
  • Save imasahiro/cce8dfd200fd38108dc712c33ff9138f to your computer and use it in GitHub Desktop.
Save imasahiro/cce8dfd200fd38108dc712c33ff9138f to your computer and use it in GitHub Desktop.
// Armeria 0.67.1
// armeria-shaded
// armeria-spring-boot-starter-shaded
public class MySpringBootAppTest {
@Rule
public final MockitoRule rule = MockitoJUnit.rule();
@Mock
private MyService.Iface iface;
@Test
public void service() throws Exception {
ArmeriaSettings armeriaSettings = new ArmeriaSettings();
armeriaSettings.setGracefulShutdownTimeoutMillis(-1);
armeriaSettings.setPorts(ImmutableList.of(new Port().setProtocol(SessionProtocol.HTTP).setPort(0)));
ThriftServiceRegistrationBean bean = new MySpringBootAppConfiguration()
.myServiceRegistrationBean(iface);
Server server = new ArmeriaAutoConfiguration().armeriaServer(armeriaSettings,
Optional.empty(),
Optional.empty(),
Optional.empty(),
Optional.empty(),
Optional.of(ImmutableList.of(bean)),
Optional.empty(),
Optional.empty());
server.stop().join();
}
}
[INFO] Running MySpringBootAppTest
2018-07-05 17:39:05 [INFO ](Server.java:673) [armeria-boss-http-*:39481] [-] Serving HTTP at /0.0.0.0:39481 - http://127.0.0.1:39481/
2018-07-05 17:39:05 [INFO ](ArmeriaAutoConfiguration.java:246) [main] [-] Armeria server started at ports: {/0.0.0.0:39481=ServerPort(/0.0.0.0:39481, [http])}
2018-07-05 17:39:05 [WARN ](CompletionActions.java:44) [main] [-] Unexpected exception from a completion action:
java.util.concurrent.CompletionException: java.lang.BootstrapMethodError: call site initialization exception
at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273)
at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:824)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
....
Caused by: java.lang.BootstrapMethodError: call site initialization exception
at java.lang.invoke.CallSite.makeSite(CallSite.java:341)
at java.lang.invoke.MethodHandleNatives.linkCallSiteImpl(MethodHandleNatives.java:307)
at java.lang.invoke.MethodHandleNatives.linkCallSite(MethodHandleNatives.java:297)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
...
Caused by: java.lang.StackOverflowError: null
at jdk.internal.org.objectweb.asm.ClassWriter.newClassItem(ClassWriter.java:1139)
at jdk.internal.org.objectweb.asm.MethodWriter.visitTypeInsn(MethodWriter.java:855)
at jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn(MethodVisitor.java:429)
at java.lang.invoke.TypeConvertingMethodAdapter.cast(TypeConvertingMethodAdapter.java:191)
at java.lang.invoke.TypeConvertingMethodAdapter.convertType(TypeConvertingMethodAdapter.java:248)
at java.lang.invoke.InnerClassLambdaMetafactory$ForwardingMethodGenerator.convertArgumentTypes(InnerClassLambdaMetafactory.java:503)
at java.lang.invoke.InnerClassLambdaMetafactory$ForwardingMethodGenerator.generate(InnerClassLambdaMetafactory.java:467)
at java.lang.invoke.InnerClassLambdaMetafactory.spinInnerClass(InnerClassLambdaMetafactory.java:289)
at java.lang.invoke.InnerClassLambdaMetafactory.buildCallSite(InnerClassLambdaMetafactory.java:194)
at java.lang.invoke.LambdaMetafactory.metafactory(LambdaMetafactory.java:304)
at java.lang.invoke.CallSite.makeSite(CallSite.java:302)
at java.lang.invoke.MethodHandleNatives.linkCallSiteImpl(MethodHandleNatives.java:307)
at java.lang.invoke.MethodHandleNatives.linkCallSite(MethodHandleNatives.java:297)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
....
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:822)
at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:834)
at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2155)
at com.linecorp.armeria.server.Server.stop(Server.java:344)
at com.linecorp.armeria.server.Server.lambda$stop$6(Server.java:344)
at com.linecorp.armeria.common.util.Functions.lambda$voidFunction$1(Functions.java:192)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment