2013-04-23 5 views
1

저는 Grails의 초보자입니다.모델 객체를위한 GSP 페이지의 Groovy/Grails Tools Suite (GGTS) ​​코드 지원

나는 다음과 같은 모델에 대한 코드가 있습니다

class KillController { 

    def index() { render "kill world" } 

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

그리고 view.gsp에 대한

, 나는 다음과 같은 한 :

class Book { 

    static constraints = { 

    } 

    String title 
    String author 
} 

와 컨트롤러

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

모든 것이 작동하는지, 올바른 출력이 생성됩니다. 그러나 GSP 편집기에서 ${ model. }을 입력하면 코드 지원에서 제안을 얻지 못합니다. 도트를 입력 한 후 ctrl + space를 누르면 도움이되지 않습니다.

${ } 내부의 Ctrl + 스페이스 바를 누르면 modelBook 개체로 올바르게 인식합니다.

아직 GSP 편집기에서 지원되지 않는 모델의 경우 코드 지원이 필요합니까? 감사! : D

+0

리차드, Eclipse에 대해서는 잘 모르지만 IntelliJ에서 작동하는지 확실히 알고 있습니다. Eclipse가 지원하지 않는다면 IntelliJ (Ultimate, paid, version)가 더 많은 도움을 줄지도 모릅니다. –

+0

감사합니다. 나는 이클립스에 자유롭기를 바란다. D : 버그이거나 아직 지원되지 않는다. 이클립스에서 PHP로 작업 할 때 때때로 '/ * @var $ model Book * /'과 같은 힌트를 IDE에 제공해야한다는 것을 기억합니다. 둘 다 동적 언어이기 때문에 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^_ ^ –