Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在services.xml中为Ofbiz定义属性_Service_Ofbiz - Fatal编程技术网

在services.xml中为Ofbiz定义属性

在services.xml中为Ofbiz定义属性,service,ofbiz,Service,Ofbiz,我遇到了一个问题,即表单中的字段在需要传递到服务的名称属性中具有变量命名,但无法这样做,因为我无法在services.xml中定义它 场景是,我有一个主要表单,有一个字段的子部分,通过ajax添加到表单中。这些字段表示一组数据,它们不是必需的,这意味着某些字段可能是空的。例如,在添加的字段中,我有一个ID、金额和支票号字段。用户可以选择填写ID和金额,但不能填写支票号。主窗体中可以添加多行ID、金额和支票号 首先,我使用相同的名称命名所有这些字段,并将它们作为列表传递给服务。它非常有效,直到我发

我遇到了一个问题,即表单中的字段在需要传递到服务的名称属性中具有变量命名,但无法这样做,因为我无法在services.xml中定义它

场景是,我有一个主要表单,有一个字段的子部分,通过ajax添加到表单中。这些字段表示一组数据,它们不是必需的,这意味着某些字段可能是空的。例如,在添加的字段中,我有一个ID、金额和支票号字段。用户可以选择填写ID和金额,但不能填写支票号。主窗体中可以添加多行ID、金额和支票号

首先,我使用相同的名称命名所有这些字段,并将它们作为列表传递给服务。它非常有效,直到我发现如果我不填写checkno,checkno列表实际上将为空,而不是一个空字符串的列表。这导致我无法在服务中正确映射它们

然后我尝试使用老式的方法,即在一个隐藏字段中有一个计数器,并用一个表示计数器的后缀来命名它们。然后我发现我无法在services.xml中动态定义属性


以前有没有人遇到过这样的问题?有什么建议或帮助吗?

我用来解决这个问题的解决方法是在调用服务进行实际处理之前,添加一个事件类来过滤请求。通过这种方式,我可以以原始形式获取参数,而不依赖Ofbiz服务定义为我获取值。

您可以在服务定义ie.services.xml文件中将所有可选字段标记为可选
例如:attribute name=“check no”type=“String”mode=“IN”optional=“true”/>

好的,我发现我没有办法这样做。更改为在调用服务之前使用事件函数进行筛选。