在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>
在src / groovy中将AlbumType.groovy定义为:
public enum AlbumType {
EP,
LP,
SINGLE
}
我已经在Grails中打开了所有日志记录,没有看到任何错误或异常。这个问题令人困惑,因为我只有在Geronimo下运行Grails WAR时才看到它。当然,我没有尝试过任何其他应用服务器,尽管很好奇“grails run-app”和“grails run-war”都可以正常工作。
关于这个问题有什么想法吗?
最佳答案
我强烈建议将代码保留在默认程序包之外,并将其放入一个好的程序包结构中。我怀疑这是您的问题。
关于grails - Grails GSP在Geronimo下不会生成预期的HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1407505/