Skip to content

Live Boot Hint Decorators not working when app ObjectMapper configured with NON_DEFAULT inclusion #80

Closed
@philsttr

Description

@philsttr

I'm using a brand new STS4 4.0.0.RELEASE installation with Java 11 support

I have a new app using Spring Boot 2.1.0.M4 with spring boot actuator with JMX endpoints enabled.

When I start the spring boot app from eclipse (either run or debug), the app starts, but the Live Boot Hint Decorators do not work.

I enabled STS Language Server Debug Console for Spring Boot and saw the below exceptions in the debug console log when I start my app.

[Timer-0] INFO org.springframework.ide.vscode.commons.boot.app.cli.SpringBootApp - Creating JMX connector: service:jmx:rmi://127.0.0.1/stub/rO0ABXNyAC5qYXZheC5tYW5hZ2VtZW50LnJlbW90ZS5ybWkuUk1JU2VydmVySW1wbF9TdHViAAAAAAAAAAICAAB4cgAaamF2YS5ybWkuc2VydmVyLlJlbW90ZVN0dWLp/tzJi+FlGgIAAHhyABxqYXZhLnJtaS5zZXJ2ZXIuUmVtb3RlT2JqZWN002G0kQxhMx4DAAB4cHc0AAtVbmljYXN0UmVmMgAACWxvY2FsaG9zdAAAw9vPae4gPiprxZw1v24AAAFmE49ZWYACAHg=
[Timer-0] INFO org.springframework.ide.vscode.commons.boot.app.cli.SpringBootApp - Created JMX connector: javax.management.remote.rmi.RMIConnector: jmxServiceURL=service:jmx:rmi://127.0.0.1/stub/rO0ABXNyAC5qYXZheC5tYW5hZ2VtZW50LnJlbW90ZS5ybWkuUk1JU2VydmVySW1wbF9TdHViAAAAAAAAAAICAAB4cgAaamF2YS5ybWkuc2VydmVyLlJlbW90ZVN0dWLp/tzJi+FlGgIAAHhyABxqYXZhLnJtaS5zZXJ2ZXIuUmVtb3RlT2JqZWN002G0kQxhMx4DAAB4cHc0AAtVbmljYXN0UmVmMgAACWxvY2FsaG9zdAAAw9vPae4gPiprxZw1v24AAAFmE49ZWYACAHg=
[Timer-0] ERROR org.springframework.ide.vscode.commons.util.Log - Error
org.json.JSONException: A JSONArray text must start with '[' at 1 [character 2 line 1]
	at org.json.JSONTokener.syntaxError(JSONTokener.java:451)
	at org.json.JSONArray.<init>(JSONArray.java:108)
	at org.json.JSONArray.<init>(JSONArray.java:147)
	at org.springframework.ide.vscode.commons.boot.app.cli.livebean.LiveBeansModel$Boot15Parser.parse(LiveBeansModel.java:77)
	at org.springframework.ide.vscode.commons.boot.app.cli.livebean.LiveBeansModel.parse(LiveBeansModel.java:171)
	at org.springframework.ide.vscode.commons.boot.app.cli.AbstractSpringBootApp.lambda$getBeans$2(AbstractSpringBootApp.java:225)
	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4793)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4790)
	at org.springframework.ide.vscode.commons.boot.app.cli.AbstractSpringBootApp.getBeans(AbstractSpringBootApp.java:217)
	at org.springframework.ide.vscode.commons.boot.app.cli.LocalSpringBootApp$$EnhancerByCGLIB$$13ddc649.CGLIB$getBeans$17(<generated>)
	at org.springframework.ide.vscode.commons.boot.app.cli.LocalSpringBootApp$$EnhancerByCGLIB$$13ddc649$$FastClassByCGLIB$$f5a823d1.invoke(<generated>)
	at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$1.lambda$null$0(MemoizingProxy.java:73)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$Result.<init>(MemoizingProxy.java:40)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$1.lambda$intercept$1(MemoizingProxy.java:71)
	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4793)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4790)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$1.intercept(MemoizingProxy.java:71)
	at org.springframework.ide.vscode.commons.boot.app.cli.LocalSpringBootApp$$EnhancerByCGLIB$$13ddc649.getBeans(<generated>)
	at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$MemoizingProxyHandler.lambda$null$0(MemoizingProxy.java:114)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$Result.<init>(MemoizingProxy.java:40)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$MemoizingProxyHandler.lambda$intercept$1(MemoizingProxy.java:112)
	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4793)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4790)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$MemoizingProxyHandler.intercept(MemoizingProxy.java:112)
	at org.springframework.ide.vscode.commons.boot.app.cli.SpringBootApp$$EnhancerByCGLIB$$c609b70c.getBeans(<generated>)
	at org.springframework.ide.vscode.boot.java.livehover.LiveHoverUtils.findRelevantBeans(LiveHoverUtils.java:165)
	at org.springframework.ide.vscode.boot.java.livehover.LiveHoverUtils.hasRelevantBeans(LiveHoverUtils.java:161)
	at org.springframework.ide.vscode.boot.java.livehover.AbstractInjectedIntoHoverProvider.lambda$getLiveHintCodeLenses$0(AbstractInjectedIntoHoverProvider.java:67)
	at java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
	at java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
	at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
	at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:498)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
	at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:449)
	at org.springframework.ide.vscode.boot.java.livehover.AbstractInjectedIntoHoverProvider.getLiveHintCodeLenses(AbstractInjectedIntoHoverProvider.java:67)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider.extractLiveHintsForAnnotation(BootJavaHoverProvider.java:202)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider$1.visit(BootJavaHoverProvider.java:146)
	at org.eclipse.jdt.core.dom.MarkerAnnotation.accept0(MarkerAnnotation.java:124)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2797)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2868)
	at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:439)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2797)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2868)
	at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:255)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2797)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider.lambda$getLiveHoverHints$0(BootJavaHoverProvider.java:108)
	at org.springframework.ide.vscode.boot.java.utils.CompilationUnitCache.withCompilationUnit(CompilationUnitCache.java:120)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider.getLiveHoverHints(BootJavaHoverProvider.java:104)
	at org.springframework.ide.vscode.boot.java.utils.SpringLiveHoverWatchdog.update(SpringLiveHoverWatchdog.java:190)
	at org.springframework.ide.vscode.boot.java.utils.SpringLiveHoverWatchdog.update(SpringLiveHoverWatchdog.java:172)
	at org.springframework.ide.vscode.boot.java.utils.SpringLiveHoverWatchdog$2.run(SpringLiveHoverWatchdog.java:119)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)
[Timer-0] ERROR org.springframework.ide.vscode.commons.util.Log - Error
org.json.JSONException: JSONObject["aliases"] not found.
	at org.json.JSONObject.get(JSONObject.java:471)
	at org.json.JSONObject.getJSONArray(JSONObject.java:618)
	at org.springframework.ide.vscode.commons.boot.app.cli.livebean.LiveBeansModel$Boot20Parser.parseBean(LiveBeansModel.java:145)
	at org.springframework.ide.vscode.commons.boot.app.cli.livebean.LiveBeansModel$Boot20Parser.parse(LiveBeansModel.java:131)
	at org.springframework.ide.vscode.commons.boot.app.cli.livebean.LiveBeansModel.parse(LiveBeansModel.java:171)
	at org.springframework.ide.vscode.commons.boot.app.cli.AbstractSpringBootApp.lambda$getBeans$2(AbstractSpringBootApp.java:225)
	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4793)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4790)
	at org.springframework.ide.vscode.commons.boot.app.cli.AbstractSpringBootApp.getBeans(AbstractSpringBootApp.java:217)
	at org.springframework.ide.vscode.commons.boot.app.cli.LocalSpringBootApp$$EnhancerByCGLIB$$13ddc649.CGLIB$getBeans$17(<generated>)
	at org.springframework.ide.vscode.commons.boot.app.cli.LocalSpringBootApp$$EnhancerByCGLIB$$13ddc649$$FastClassByCGLIB$$f5a823d1.invoke(<generated>)
	at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$1.lambda$null$0(MemoizingProxy.java:73)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$Result.<init>(MemoizingProxy.java:40)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$1.lambda$intercept$1(MemoizingProxy.java:71)
	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4793)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4790)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$1.intercept(MemoizingProxy.java:71)
	at org.springframework.ide.vscode.commons.boot.app.cli.LocalSpringBootApp$$EnhancerByCGLIB$$13ddc649.getBeans(<generated>)
	at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$MemoizingProxyHandler.lambda$null$0(MemoizingProxy.java:114)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$Result.<init>(MemoizingProxy.java:40)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$MemoizingProxyHandler.lambda$intercept$1(MemoizingProxy.java:112)
	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4793)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4790)
	at org.springframework.ide.vscode.commons.util.MemoizingProxy$MemoizingProxyHandler.intercept(MemoizingProxy.java:112)
	at org.springframework.ide.vscode.commons.boot.app.cli.SpringBootApp$$EnhancerByCGLIB$$c609b70c.getBeans(<generated>)
	at org.springframework.ide.vscode.boot.java.livehover.LiveHoverUtils.findRelevantBeans(LiveHoverUtils.java:165)
	at org.springframework.ide.vscode.boot.java.livehover.LiveHoverUtils.hasRelevantBeans(LiveHoverUtils.java:161)
	at org.springframework.ide.vscode.boot.java.livehover.AbstractInjectedIntoHoverProvider.lambda$getLiveHintCodeLenses$0(AbstractInjectedIntoHoverProvider.java:67)
	at java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
	at java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
	at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
	at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:498)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
	at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:449)
	at org.springframework.ide.vscode.boot.java.livehover.AbstractInjectedIntoHoverProvider.getLiveHintCodeLenses(AbstractInjectedIntoHoverProvider.java:67)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider.extractLiveHintsForAnnotation(BootJavaHoverProvider.java:202)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider$1.visit(BootJavaHoverProvider.java:146)
	at org.eclipse.jdt.core.dom.MarkerAnnotation.accept0(MarkerAnnotation.java:124)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2797)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2868)
	at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:439)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2797)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2868)
	at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:255)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:2797)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider.lambda$getLiveHoverHints$0(BootJavaHoverProvider.java:108)
	at org.springframework.ide.vscode.boot.java.utils.CompilationUnitCache.withCompilationUnit(CompilationUnitCache.java:120)
	at org.springframework.ide.vscode.boot.java.handlers.BootJavaHoverProvider.getLiveHoverHints(BootJavaHoverProvider.java:104)
	at org.springframework.ide.vscode.boot.java.utils.SpringLiveHoverWatchdog.update(SpringLiveHoverWatchdog.java:190)
	at org.springframework.ide.vscode.boot.java.utils.SpringLiveHoverWatchdog.update(SpringLiveHoverWatchdog.java:172)
	at org.springframework.ide.vscode.boot.java.utils.SpringLiveHoverWatchdog$2.run(SpringLiveHoverWatchdog.java:119)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions