gpt4 book ai didi

java - Ofbiz 错误 : Could not find simple-method

转载 作者:行者123 更新时间:2023-12-01 05:45:56 28 4
gpt4 key购买 nike

我在 ofbiz.log 中反复出现此错误:

Error running the simple-method: Could not find <simple-method name="checkProductRelatedPermission"> in XML document

这很奇怪,因为我在 ProductServices.xml 中声明了这个方法: <simple-method method-name="checkProductRelatedPermission" short-description="Check Product Related Permission">

我之前没有出现过这个错误,系统正常运行了 6 个月。 (目前产品指数在增加)

是否与ofbiz分配的内存不足有关?因为服务器在有限的内存上运行。

[更新]

这是ProductServices.xml中的服务声明

<simple-method method-name="productGenericPermission" short-description="Main permission logic">
<set field="mainAction" from-field="parameters.mainAction"/>
<if-empty field="mainAction">
<add-error>
<fail-property resource="ProductUiLabels" property="ProductMissingMainActionInPermissionService"/>
</add-error>
<check-errors/>
</if-empty>

<set field="callingMethodName" from-field="parameters.resourceDescription"/>
<set field="checkAction" from-field="parameters.mainAction"/>
<call-simple-method method-name="checkProductRelatedPermission"/>

<if-empty field="error_list">
<set field="hasPermission" type="Boolean" value="true"/>
<field-to-result field="hasPermission"/>

<else>
<property-to-field resource="ProductUiLabels" property="ProductPermissionError" field="failMessage"/>
<set field="hasPermission" type="Boolean" value="false"/>
<field-to-result field="hasPermission"/>
<field-to-result field="failMessage"/>
</else>
</if-empty>
</simple-method>

执行<call-simple-method method-name="checkProductRelatedPermission"/>抛出异常。

如果我重新启动服务器,进程的相同执行不会抛出此异常。该错误发生在用户大量输入新产品和更新产品后。我可以在日志中看到大量的 lucene 进程。

我将服务器内存从 2GB 增加到 4GB,java 内存 Xmx:1024m 增加到 Xmx:1512。目前ofbiz在监控6小时后仍在正常运行。

[更新]

java.net.URL url = new java.net.URL("file:/home/ofbiz/ofbiz/applications/product/script/org/ofbiz/product/product/ProductServices.xml");
System.out.println(org.ofbiz.minilang.SimpleMethod.getSimpleMethod(url, "checkProductRelatedPermission"));

输出是simple-method,表示找到方法。

此外,同一进程执行了数千次,并且在数千次执行后抛出错误(随机)。有时在几个小时后,有时在几天后。

最佳答案

您的 xml 中的声明带有“方法名称”。错误消息说您缺少带有“名称”的标签。

关于java - Ofbiz 错误 : Could not find simple-method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33888647/

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