1

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 内のすべてのロギングを有効にしましたが、エラーや例外は見られません。この問題は、Grails WAR を Geronimo で実行しているときにしか見られないため、混乱を招きます。確かに、「grails run-app」と「grails run-war」ですべてが正常に動作するのは興味深いことですが、他のアプリ サーバーは試していません。

問題に関するアイデアはありますか?

4

1 に答える 1

2

コードを既定のパッケージから除外し、適切なパッケージ構造に入れることを強くお勧めします。これはあなたの問題だと思います。

于 2009-09-11T01:33:10.523 に答える