0

According to the Smart code editing feature in https://spring.io/tools, @Value("${serv}") should trigger the properties completion popup.

enter image description here

But when I use a fresh STS (spring-tool-suite-4-4.12.1.RELEASE-e4.21.0-linux.gtk.x86_64), live hover works but no @Value completion popup when I type serv within the @Value("${}").

The Spring Boot demo project is here

enter image description here

enter image description here


[t=1637037571574] LSP4E to org.eclipse.languageserver.languages.springboot:
Content-Length: 319



[t=1637037571575] LSP4E to org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"version":50,"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"},"contentChanges":[{"range":{"start":{"line":14,"character":14},"end":{"line":14,"character":14}},"rangeLength":0,"text":"s"}]}}

[t=1637037571575] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","method":"sts/highlight","params":{"doc":{"version":50,"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"},"codeLenses":[]}}

[t=1637037571584] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java","diagnostics":[]}}

[t=1637037572415] LSP4E to org.eclipse.languageserver.languages.springboot:
Content-Length: 189



[t=1637037572415] LSP4E to org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","id":"35","method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"}}}

[t=1637037572416] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","id":"35","result":[]}

[t=1637037594024] LSP4E to org.eclipse.languageserver.languages.springboot:
Content-Length: 319



[t=1637037594024] LSP4E to org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"version":51,"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"},"contentChanges":[{"range":{"start":{"line":14,"character":15},"end":{"line":14,"character":15}},"rangeLength":0,"text":"e"}]}}

[t=1637037594025] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","method":"sts/highlight","params":{"doc":{"version":51,"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"},"codeLenses":[]}}

[t=1637037594033] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java","diagnostics":[]}}

[t=1637037594931] LSP4E to org.eclipse.languageserver.languages.springboot:
Content-Length: 189



[t=1637037594931] LSP4E to org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","id":"36","method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"}}}

[t=1637037594932] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","id":"36","result":[]}

[t=1637037596128] LSP4E to org.eclipse.languageserver.languages.springboot:
Content-Length: 319



[t=1637037596128] LSP4E to org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"textDocument":{"version":52,"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"},"contentChanges":[{"range":{"start":{"line":14,"character":16},"end":{"line":14,"character":16}},"rangeLength":0,"text":"r"}]}}

[t=1637037596129] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","method":"sts/highlight","params":{"doc":{"version":52,"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"},"codeLenses":[]}}

[t=1637037596137] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java","diagnostics":[]}}

[t=1637037596949] LSP4E to org.eclipse.languageserver.languages.springboot:
Content-Length: 189



[t=1637037596949] LSP4E to org.eclipse.languageserver.languages.springboot:
{"jsonrpc":"2.0","id":"37","method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/k/projects/spring-boot-demo/src/main/java/com/example/demo/HelloController.java"}}}

[t=1637037596950] org.eclipse.languageserver.languages.springboot to LSP4E:
{"jsonrpc":"2.0","id":"37","result":[]}
yejianfengblue
  • 2,089
  • 1
  • 14
  • 18
  • 1
    This works for me when trying a new Spring Boot project as well as yours, so it looks like we need to investigate this a little more on your side. The completion does not show up automatically while typing, you need to hit Ctrl-Space once to trigger the completion. What happens if you do that? And is there any error in the Error Log view showing up when you try this (in case it doesn't work)? – Martin Lippert Dec 02 '21 at 15:23
  • `Ctrl-Space` does trigger the completion. – yejianfengblue Dec 03 '21 at 02:25
  • So what is the exact question or feature request? – Martin Lippert Dec 04 '21 at 19:48
  • I originally expect the completion popup should show automatically when I type `se` inside `@Value("${}")`. Now that manually `Ctrl-Space` can trigger the completion already solves my problem. Thank you. – yejianfengblue Dec 04 '21 at 23:55
  • Understand and glad to hear that it solves the issue for you. If you would prefer it to behave differently, feel free to raise an enhancement request at https://github.com/spring-projects/sts4/issues – Martin Lippert Dec 06 '21 at 08:04

0 Answers0