Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Internal Server Error at /q/dev/ 3 #19540

Closed
ennishol opened this issue Aug 20, 2021 · 4 comments · Fixed by #19550
Closed

Internal Server Error at /q/dev/ 3 #19540

ennishol opened this issue Aug 20, 2021 · 4 comments · Fixed by #19550
Labels
area/dev-ui kind/bug Something isn't working
Milestone

Comments

@ennishol
Copy link
Contributor

Describe the bug

the application fails to load dev ui, when using some custom extension with descriptor:

---
name: "Logging GELF"
metadata:
  keywords:
  - "logging"
  - "gelf"
  - "handler"
  guide: "https://quarkus.io/guides/centralized-log-management"
  categories:
  - "core"
  status: "preview"
  built-with-quarkus-core: "2.1.3.Final"
  extension-dependencies:
  - "io.quarkus:quarkus-core"
artifact: "me:com.quarkus-graylog::jar:2.1.3"
The stacktrace below has been reversed to show the root cause first. Click Here to see the original stacktrace

io.quarkus.qute.TemplateException: Property "description" not found on the base object "java.util.LinkedHashMap" in expression {it.description} in template tags/nonActionableExtension.html on line 21
	at io.quarkus.qute.EvaluatorImpl.propertyNotFound(EvaluatorImpl.java:207)
	at io.quarkus.qute.EvaluatorImpl.resolve(EvaluatorImpl.java:168)
	at io.quarkus.qute.EvaluatorImpl.lambda$resolve$4(EvaluatorImpl.java:178)
	at io.quarkus.qute.CompletedStage.thenCompose(CompletedStage.java:228)
	at io.quarkus.qute.EvaluatorImpl.resolve(EvaluatorImpl.java:175)
	at io.quarkus.qute.EvaluatorImpl.lambda$resolve$3(EvaluatorImpl.java:129)
	at io.quarkus.qute.CompletedStage.thenCompose(CompletedStage.java:228)
	at io.quarkus.qute.EvaluatorImpl.resolve(EvaluatorImpl.java:127)
	at io.quarkus.qute.EvaluatorImpl.resolveReference(EvaluatorImpl.java:112)
	at io.quarkus.qute.EvaluatorImpl.lambda$resolveReference$2(EvaluatorImpl.java:116)
	at io.quarkus.qute.CompletedStage.thenCompose(CompletedStage.java:228)
	at io.quarkus.qute.EvaluatorImpl.resolveReference(EvaluatorImpl.java:116)
	at io.quarkus.qute.EvaluatorImpl.evaluate(EvaluatorImpl.java:80)
	at io.quarkus.qute.ResolutionContextImpl$ChildResolutionContext.evaluate(ResolutionContextImpl.java:86)
	at io.quarkus.qute.ExpressionNode.resolve(ExpressionNode.java:25)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:153)
	at io.quarkus.qute.IfSectionHelper.lambda$resolve$0(IfSectionHelper.java:49)
	at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
	at java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2235)
	at java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:143)
	at io.quarkus.qute.IfSectionHelper.resolve(IfSectionHelper.java:45)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:149)
	at io.quarkus.qute.SectionHelper$SectionResolutionContext.execute(SectionHelper.java:37)
	at io.quarkus.qute.Parser$1.resolve(Parser.java:1012)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.UserTagSectionHelper.lambda$resolve$1(UserTagSectionHelper.java:44)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883)
	at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2251)
	at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:143)
	at io.quarkus.qute.UserTagSectionHelper.resolve(UserTagSectionHelper.java:31)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:153)
	at io.quarkus.qute.SectionHelper$SectionResolutionContext.execute(SectionHelper.java:47)
	at io.quarkus.qute.LoopSectionHelper.nextElement(LoopSectionHelper.java:121)
	at io.quarkus.qute.LoopSectionHelper.lambda$resolve$0(LoopSectionHelper.java:52)
	at io.quarkus.qute.CompletedStage.thenCompose(CompletedStage.java:228)
	at io.quarkus.qute.LoopSectionHelper.resolve(LoopSectionHelper.java:40)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:153)
	at io.quarkus.qute.IfSectionHelper.lambda$resolve$0(IfSectionHelper.java:49)
	at io.quarkus.qute.CompletedStage.thenCompose(CompletedStage.java:228)
	at io.quarkus.qute.IfSectionHelper.resolve(IfSectionHelper.java:45)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:153)
	at io.quarkus.qute.InsertSectionHelper.resolve(InsertSectionHelper.java:20)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:153)
	at io.quarkus.qute.SectionHelper$SectionResolutionContext.execute(SectionHelper.java:37)
	at io.quarkus.qute.Parser$1.resolve(Parser.java:1012)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.IncludeSectionHelper.resolve(IncludeSectionHelper.java:34)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.SectionNode$SectionResolutionContextImpl.execute(SectionNode.java:153)
	at io.quarkus.qute.SectionHelper$SectionResolutionContext.execute(SectionHelper.java:37)
	at io.quarkus.qute.Parser$1.resolve(Parser.java:1012)
	at io.quarkus.qute.SectionNode.resolve(SectionNode.java:34)
	at io.quarkus.qute.TemplateImpl$TemplateInstanceImpl.renderData(TemplateImpl.java:104)
	at io.quarkus.qute.TemplateImpl$TemplateInstanceImpl.renderAsync(TemplateImpl.java:90)
	at io.quarkus.vertx.http.deployment.devmode.console.DevConsole.renderTemplate(DevConsole.java:134)
	at io.quarkus.vertx.http.deployment.devmode.console.DevConsole.sendMainPage(DevConsole.java:178)
	at io.quarkus.vertx.http.deployment.devmode.console.DevConsole.handle(DevConsole.java:97)
	at io.quarkus.vertx.http.deployment.devmode.console.DevConsole.handle(DevConsole.java:34)
	at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1127)
	at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:151)
	at io.vertx.ext.web.impl.RoutingContextWrapper.next(RoutingContextWrapper.java:201)
	at io.quarkus.vertx.http.deployment.devmode.console.FlashScopeHandler.handle(FlashScopeHandler.java:12)
	at io.quarkus.vertx.http.deployment.devmode.console.FlashScopeHandler.handle(FlashScopeHandler.java:7)
	at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1127)
	at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:151)
	at io.vertx.ext.web.impl.RoutingContextWrapper.next(RoutingContextWrapper.java:201)
	at io.vertx.ext.web.impl.RouterImpl.handleContext(RouterImpl.java:236)
	at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1127)
	at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:151)
	at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:133)
	at io.vertx.ext.web.impl.RouterImpl.handle(RouterImpl.java:55)
	at io.vertx.ext.web.impl.RouterImpl.handle(RouterImpl.java:37)
	at io.quarkus.vertx.http.deployment.devmode.console.DevConsoleProcessor$2$1.handle(DevConsoleProcessor.java:197)
	at io.quarkus.vertx.http.deployment.devmode.console.DevConsoleProcessor$2$1.handle(DevConsoleProcessor.java:194)
	at io.vertx.core.impl.EventLoopContext.emit(EventLoopContext.java:49)
	at io.vertx.core.impl.EventLoopContext.lambda$emit$1(EventLoopContext.java:56)
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:829)
Resulted in: io.quarkus.qute.TemplateException
	at io.quarkus.qute.CompletedStage.get(CompletedStage.java:44)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.MultiResultNode.process(MultiResultNode.java:20)
	at io.quarkus.qute.TemplateImpl$TemplateInstanceImpl.lambda$renderData$3(TemplateImpl.java:110)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883)
	at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2251)
	at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:143)
	... 31 more
Resulted in: java.util.concurrent.CompletionException: io.quarkus.qute.TemplateException
	at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331)
	at java.base/java.util.concurrent.CompletableFuture.uniApplyNow(CompletableFuture.java:670)
	at java.base/java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:658)
	at java.base/java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:2094)
	at java.base/java.util.concurrent.CompletableFuture.thenApply(CompletableFuture.java:143)
	... 30 more

Expected behavior

dev ui should work

Actual behavior

dev ui doesn't work

How to Reproduce?

No response

Output of uname -a or ver

Linux qkvm20 5.11.0-27-generic #29~20.04.1-Ubuntu

Output of java -version

openjdk version "11.0.11" 2021-04-20 OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9) OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)

GraalVM version (if different from Java)

No response

Quarkus version or git rev

2.1.3.Final

Build tool (ie. output of mvnw --version or gradlew --version)

Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)

Additional information

No response

@ennishol ennishol added the kind/bug Something isn't working label Aug 20, 2021
@gastaldi
Copy link
Contributor

Do you have a <description> in your extensions' runtime/pom.xml?

@ennishol
Copy link
Contributor Author

@gastaldi No, I don't have the <description>

@ennishol
Copy link
Contributor Author

@gastaldi I added the <description> to all poms in extension and it solved the problem

@gastaldi
Copy link
Contributor

Great, now we only need to fix this use case in the codebase 👍🏻

gastaldi added a commit to gastaldi/quarkus that referenced this issue Aug 20, 2021
@quarkus-bot quarkus-bot bot added this to the 2.3 - main milestone Aug 20, 2021
@gsmet gsmet modified the milestones: 2.3 - main, 2.1.4.Final Aug 23, 2021
gsmet pushed a commit to gsmet/quarkus that referenced this issue Aug 23, 2021
gsmet pushed a commit to gsmet/quarkus that referenced this issue Aug 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/dev-ui kind/bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants