2013-04-23 1 views
1

Я новичок в Grails и до сих пор учился.Набор инструментов Groovy/Grails Tools Suite (GGTS) ​​на страницах GSP для объектов модели

У меня есть следующий код модели:

class Book { 

    static constraints = { 

    } 

    String title 
    String author 
} 

и контроллер:

class KillController { 

    def index() { render "kill world" } 

    def view() { 
     def book = new Book(author: "Mike", title: "nuff sed") 
     [ model: book ] 
    } 
} 

И view.gsp, я следующее:

<html> 
    <body> 
     Author: ${ model.author }<br /> 
     Title : ${ model.title } 
    </body> 
</html> 

Все работает, и производится правильный вывод. Однако в редакторе GSP, когда я печатаю ${ model. }, я не получаю никаких предложений от кодовой помощи. Нажатие клавиши Ctrl + пробел после ввода точки не помогает.

Нажатие Ctrl + пробел внутри ${ } работает, хотя и правильно распознает model как объект Book.

Помогает ли код для моделей, еще не поддерживаемых в редакторе GSP? Благодаря! : D

+0

Ричард, я понятия не имею о Eclipse, но я точно знаю, что он работает в IntelliJ. Поэтому, если Eclipse не поддерживает его, возможно, IntelliJ (Ultimate, платная версия) может оказаться более полезной. –

+0

Спасибо! Я хочу придерживаться Eclipse, будучи свободным, тем временем ...: D Это либо ошибка, либо она еще не поддерживается. Я помню, что при работе с PHP в Eclipse вам иногда приходилось давать подсказки для IDE с чем-то вроде '/ * @var $ model Book * /'. Я понял, что, поскольку оба являются динамическими языками, в GGTS может быть аналогичное обходное решение. Хотя, GGTS действительно распознает тип «модели» в коде GSP, поэтому я очень надеюсь, что если это не ошибка, это будет поддерживаться когда-нибудь: D –

ответ

0

Это ошибка. Он должен работать, и это происходит во многих других ситуациях. Когда я пытаюсь это, я вижу, что исключение бросают:

org.eclipse.core.runtime.OperationCanceledException 
at org.codehaus.groovy.eclipse.codeassist.processors.GroovyProposalTypeSearchRequestor.checkCancel(GroovyProposalTypeSearchRequestor.java:356) 
at org.codehaus.groovy.eclipse.codeassist.processors.GroovyProposalTypeSearchRequestor.processAcceptedPackages(GroovyProposalTypeSearchRequestor.java:618) 
at org.codehaus.groovy.eclipse.codeassist.processors.PackageCompletionProcessor.generateProposals(PackageCompletionProcessor.java:56) 
at org.codehaus.groovy.eclipse.codeassist.requestor.GroovyCompletionProposalComputer.computeCompletionProposals(GroovyCompletionProposalComputer.java:162) 
at org.grails.ide.eclipse.editor.gsp.adapter.CodeCompletionDelegate.codeComplete(CodeCompletionDelegate.java:71) 
at org.codehaus.jdt.groovy.model.GroovyCompilationUnit.codeComplete(GroovyCompilationUnit.java:598) 
at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:359) 
at org.eclipse.jst.jsp.ui.internal.contentassist.JSPJavaCompletionProposalComputer.computeJavaCompletionProposals(JSPJavaCompletionProposalComputer.java:237) 
at org.eclipse.jst.jsp.ui.internal.contentassist.JSPJavaCompletionProposalComputer.computeCompletionProposals(JSPJavaCompletionProposalComputer.java:114) 
at org.eclipse.wst.sse.ui.internal.contentassist.CompletionProposalComputerDescriptor.computeCompletionProposals(CompletionProposalComputerDescriptor.java:284) 
at org.eclipse.wst.sse.ui.internal.contentassist.CompletionProposalCategory.computeCompletionProposals(CompletionProposalCategory.java:290) 
at org.eclipse.wst.sse.ui.contentassist.StructuredContentAssistProcessor.collectProposals(StructuredContentAssistProcessor.java:475) 
at org.eclipse.wst.sse.ui.contentassist.StructuredContentAssistProcessor.computeCompletionProposals(StructuredContentAssistProcessor.java:254) 
at org.eclipse.wst.sse.ui.internal.contentassist.CompoundContentAssistProcessor.computeCompletionProposals(CompoundContentAssistProcessor.java:127) 
at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(ContentAssistant.java:1839) 
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(CompletionProposalPopup.java:566) 
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$16(CompletionProposalPopup.java:563) 
at org.eclipse.jface.text.contentassist.CompletionProposalPopup$2.run(CompletionProposalPopup.java:498) 
... 

Я должен увидеть, что здесь происходит.


UPDATE:

поднял этот вопрос: https://issuetracker.springsource.com/browse/STS-3337

Нашли проблему и нажал исправление. Будет доступно в следующей сборке моментальных снимков.

+0

Спасибо за информацию Andrew^_ ^ –

Смежные вопросы