2014-04-25 1 views
0

저는 IntelliJ를 사용하여 Zk 렌더링 페이지를 개발하고 현재 MVVM을 사용하여 ListBox에 데이터를 저장하려고합니다. 목록 상자에서 ZK 요소 'template'을 사용할 수 없습니다.

그러나 나는 태그 여기 허용되지 IntelliJ에 요소 템플릿에서 메시지를 강조 내 템플릿을 점점 계속.

내가 아래 코드에서 잘못하고있는 것이 있습니까? 다음과 같이 메이븐에서

<?page title="Main" contentType="text/html;charset=UTF-8"?> 
<zk xmlns="http://www.zkoss.org/2005/zul" 
      xmlns:h="http://www.w3.org/1999/xhtml" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:schemaLocation="http://www.zkoss.org/2005/zul 
            http://www.zkoss.org/2005/zul/zul.xsd"> 

... 

      <center> 
       <listbox model="@bind(cvm.contractsList)"> 
        <listhead> 
         <listheader label="Contract #" hflex="1" /> 
         <listheader label="Contract Name" hflex="1" /> 
        </listhead> 
        <!-- below tags are red --> 
        <template name="model" var="contract"> 
         <listitem> 
          <listcell label="@bind(contract.contractNumber)" /> 
          <listcell label="@bind(contract.contractName)" /> 
         </listitem> 
        </template> 

내 ZK 종속성은 다음과 같습니다

과 관련이있을 수 있습니다 무엇에
... 

<properties> 
    <zk.version>6.5.2</zk.version> 
</properties> 

... 

<dependencies> 

    <dependency> 
     <groupId>org.zkoss.zk</groupId> 
     <artifactId>zkplus</artifactId> 
     <version>${zk.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.zkoss.zk</groupId> 
     <artifactId>zhtml</artifactId> 
     <version>${zk.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.zkoss.zk</groupId> 
     <artifactId>zkbind</artifactId> 
     <version>${zk.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.zkoss.zk</groupId> 
     <artifactId>zul</artifactId> 
     <version>${zk.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>commons-logging</groupId> 
     <artifactId>commons-logging</artifactId> 
     <version>1.1.1</version> 
    </dependency> 

    <dependency> 
     <groupId>commons-io</groupId> 
     <artifactId>commons-io</artifactId> 
     <version>1.3.1</version> 
    </dependency> 

    <dependency> 
     <groupId>commons-lang</groupId> 
     <artifactId>commons-lang</artifactId> 
     <version>2.4</version> 
    </dependency> 

- 내 VM 값을 반환하지만, 내 목록 상자에서 현재를 표시하지 않습니다 (하지만 난 아직 테스트하지 않았습니다 config를 @load에서 @bind으로 변경 한 이후의 코드).

구문 문제에 대한 도움을 주시면 감사하겠습니다.


부록 - 또 다른 예는 :
이 IntelliJ에 내 스키마 구성에 뭔가 있어야합니다. 나는 항상 내 zul 파일의 맨 위에 네임 스페이스가 있어야하지만, 많은 예제가 이것을 추가하지 않는다는 것을 알았다. 왜 그런지 모르겠습니다.

유효한 구문을 무효화하는 또 다른 예가 있습니다. 오늘 validationMessages 태그에 문제가있어 IntelliJ에서 오류로 표시됩니다. 그 샘플 코드 :

<window id="contractsReport" border="none" width="100%"  
     apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') 
     @init('com.t2.anomalies.vm.AnomaliesReportsVm')" 
     validationMessages="@id('vmsgs')"> 
+0

'@ load'에서'@ bind'로 바뀌지 않습니다 (bind는 load + save), 이것을 실행할 때 로컬 서버, 오류가 발생 했습니까? – chillworld

+0

@chillworld 그래, 무슨 뜻인지 알 겠어. NotifyChange 주석을 수정하여 작동 시켰습니다. 필자가 생각하는 구문 강조 오류는 IntelliJ + 작업 영역 + Zk 조합과 관련이 있어야합니다 ... 오늘 피어에게 설명 했으므로 작동하지만 잘못된 점은 IDE에서 거짓 긍정과 같기 때문입니다 – Crowie

+0

버그 IDE? 네임 스페이스를 가져 와서 별난 것입니다. – chillworld

답변

1

아무런 잘못하지 않았습니다. zul.xsd 스키마는 ZK 사람들이 잘 관리하지 못합니다. ... 다른 것들도 빠져 있습니다. 그래서 우리는 단지 그것으로 살아야 할 것입니다. 그것은 실제로 런타임에 일하고 있습니다. 따라서 개발 시간에 약간의 불편 함이 있습니다.

어쨌든 나는 <zk> </zk><template>에 붙이기 때문에 편집자가 받아 들일 것입니다. 그러나 나는 기억이 안 나기 때문에 그 일을 그만 두었습니다 : -/