在Geronimo 2.1.4(jetty6,javaee5)下运行我的Grails 1.1-M2应用程序作为WAR时,从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 run-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>

AlbumType.groovy在src / groovy中定义为:

public enum AlbumType {
    EP,
    LP,
    SINGLE
}

我已打开Grails中的所有日志记录,但没有看到任何错误或异常。这个问题令人困惑,因为我只在Geronimo下运行我的Grails WAR时看到它。当然,我没有尝试过任何其他应用程序服务器,尽管很奇怪一切都可以正常使用'grails run-app'和'grails run-war'。

关于这个问题的任何想法?

有帮助吗?

解决方案

我强烈建议将代码保留在默认包中并将其放入一个良好的包结构中。我怀疑这是你的问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top