ZK元素'模板'列表框中不允许

时间:2014-04-25 10:15:42

标签: mvvm intellij-idea zk

我使用IntelliJ开发Zk渲染页面,目前正在尝试使用MVVM将数据放入ListBox。

但是,我不断使用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>

来自Maven的我的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正在返回值,但我的listBox当前没有显示它们(但我还没有测试代码,因为将配置从@load更改为@bind)。 / p>

对语法问题的任何帮助都将不胜感激。


附录 - 另一个例子
它必须是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')">

1 个答案:

答案 0 :(得分:1)

你没有做错任何事。仅仅zul.xsd架构并没有得到ZK人员的良好维护。 ......其他一些东西也都缺失了。因此,我们必须忍受这一点。它实际上是在运行时工作。所以这只是一些开发时间的不适。

无论如何,我曾经在<zk> </zk>周围放置<template>,所以编辑会接受它。但是由于某种原因我无法记住,我停止这样做了: - / ...