代码之家  ›  专栏  ›  技术社区  ›  shek

Grails GSP在Geronimo下不生成预期的HTML

  •  1
  • shek  · 技术社区  · 16 年前

    在Geronimo 2.1.4(jetty6,javaee5)下以WAR形式运行我的Grails 1.1-M2应用程序时,从GSP生成的HTML不包括我的动态内容。

    具体来说,这个GSP片段:

    <tr class="prop">
        <td valign="top" class="name">
            <label for="type">
                <g:message code="album.type.label" default="Type" />
            </label>
        </td>
        <td valign="top" class="value ${hasErrors(bean:albumInstance,field:'type','errors')}">
            <g:select  from="${AlbumType?.values()}" value="${albumInstance?.type}" name="type" ></g:select>
        </td>
    </tr> 
    

    …在Geronimo下运行时生成此HTML:

    <tr class="prop">
        <td valign="top" class="name">
            <label for="type">
                Type
            </label>
        </td>
        <td valign="top" class="value ">
            <select name="type" id="type" ></select>
        </td>
    </tr>
    

    …但是,当以“grails-run-app”或“grails-ran-war”运行时,会生成正确的HTML:

    <tr class="prop">
        <td valign="top" class="name">
            <label for="type">
                Type
            </label>
        </td>
        <td valign="top" class="value ">
            <select name="type" id="type" >
                <option value="EP" >EP</option>
                <option value="LP" >LP</option>
                <option value="SINGLE" >SINGLE</option>
            </select>
        </td>
    </tr>
    

    public enum AlbumType {
        EP,
        LP,
        SINGLE
    }
    

    我已经打开了Grails中的所有日志记录,没有看到任何错误或异常。这个问题令人困惑,因为我只在Geronimo下运行Grails WAR时才看到它。当然,我还没有尝试过任何其他应用服务器,尽管很奇怪的是,“grails run app”和“grails run-war”都能正常工作。

    1 回复  |  直到 16 年前
        1
  •  2
  •   Rhysyngsun    16 年前

    我强烈建议将代码从默认包中删除,并将其放入一个好的包结构中。我怀疑这是你的问题。

    推荐文章