gpt4 book ai didi

tomcat - Grails 错误仅在 Tomcat 服务器上;本地不可复制 : Error executing tag : object is not an instance of declaring class

转载 作者:行者123 更新时间:2023-11-28 22:03:56 28 4
gpt4 key购买 nike

我在实时服务器上遇到了一个奇怪的错误。它仅在特定操作(搜索)时发生。我无法在本地重现它(在我使用 grails run-app 运行代码的地方),我也无法在测试服务器上重现它,它以与生产环境完全相同的方式运行 Tomcat服务器。我把生产数据库复制到本地了,还是无法重现错误。唯一的配置差异是启用了邮件和其他一些小东西,这些似乎与这里无关。

我不知道去哪里看,因为我不知道“对象不是声明类的实例”是什么意思。或者更重要的是,为什么这只会是生产服务器上的问题。这是完整的错误:

Error 500: Error processing GroovyPageView: Error executing tag <g:link>: object is not an instance of declaring class at /WEB-INF/grails-app/views/dealer/list.gsp:41
Servlet: grails
URI: /grails/dealer/list.dispatch
Exception Message: object is not an instance of declaring class
Caused by: Error processing GroovyPageView: Error executing tag <g:link>: object is not an instance of declaring class at /WEB-INF/grails-app/views/dealer/list.gsp:41
Class: gsp_quotations_dealerlist_gsp
At Line: [72]

第 41 行周围的 .gsp 代码是:

<g:each in="${dealerInstanceList}" status="i" var="dealerInstance">
<tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
<td><g:link action="show" id="${dealerInstance.id}">${fieldValue(bean:dealerInstance, field:'name')}</g:link></td>
<td><g:link action="show" id="${dealerInstance.id}">${fieldValue(bean:dealerInstance, field:'address')}</g:link></td>
<td><g:link controller="quoteSettings" action="adminEdit" id="${dealerInstance.id}">${dealerInstance?.quoteSettings?.pricingTables?.size() > 0}</g:link></td>
</tr>
</g:each>

第 41 行是最后一个 g:link 标签。

请再次注意,所有这些在本地和测试服务器上都运行良好。我完全被难住了。

最佳答案

你的 UrlMapping.groovy 是什么样子的?你修改了吗?另外,尝试使用 <g:createLink ...>标记而不是 <g:link>并使用“绝对”参数: http://grails.org/doc/1.0.x/ref/Tags/createLink.html

关于tomcat - Grails 错误仅在 Tomcat 服务器上;本地不可复制 : Error executing tag <g:link>: object is not an instance of declaring class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4386568/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com