0

这个问题是Alfresco Community中的一个副本。

在我们公司,我们使用 Alfresco,我们在其中添加了新的 TestModel 和 ListDate 属性。 露天模型

接下来我们使用返回选项列表的 CMIS Apache Chemistry 连接器: 想法运行时

When one of these values is chosen for update, error appears. 例如,如果我们选择第一个(2001-01-05 == 5 of January 2001)

HTTP Status 409 - constraint
Constraint violation: 0418520046 Found 1 integrity violations:
Invalid property value: 
Node: workspace://SpacesStore/eaf740b4-d22a-415a-9ca7-f58a8e115dbb
Name: vzv_diff
Type: {TestModel}DiffProperties
Property: {TestModel}ListDate
Constraint: 0418520045 The value is not an allowed value: 1/5/01 12:00 AM

详细的第一个值:

java.util.GregorianCalendar[
time=978681600000,
areFieldsSet=true,
areAllFieldsSet=true,
lenient=true,
zone=sun.util.calendar.ZoneInfo[id="GMT-08:00",offset=-28800000,dstSavings=0,useDaylight=false,transitions=0,lastRule=null],
firstDayOfWeek=1,
minimalDaysInFirstWeek=1,
ERA=1,
YEAR=2001,
MONTH=0,
WEEK_OF_YEAR=1,WEEK_OF_MONTH=1,
DAY_OF_MONTH=5,DAY_OF_YEAR=5,DAY_OF_WEEK=6,DAY_OF_WEEK_IN_MONTH=1,
AM_PM=0,
HOUR=0,HOUR_OF_DAY=0,
MINUTE=0,
SECOND=0,
MILLISECOND=0,
ZONE_OFFSET=-28800000,DST_OFFSET=0]

值得注意的是,在“客户端机器”上使用 utc +3 调整时间,而在“服务器(实际安装 Alfresco 的位置)”上 - utc -8。

我们的假设是,Alfresco 预计上午 0:00 或下午 0:00,而上午 12 点是从 UTC 尺度总结的。尽管这种情况已经很奇怪,但在更新之前以任何方式调整该值的时间根本没有帮助。比方说,设置时间

calendar.add(Calendar.HOUR_OF_DAY, 12);

结果是

HTTP Status 409 - constraint
Constraint violation: 0418520818 Found 1 integrity violations:
Invalid property value: 
   Node: workspace://SpacesStore/eaf740b4-d22a-415a-9ca7-f58a8e115dbb
   Name: vzv_diff
   Type: {TestModel}DiffProperties
   Property: {TestModel}ListDate
   Constraint: 0418520817 The value is not an allowed value: 1/5/01 12:00 PM

Apache Workbench 的行为方式相同(但它没有选择):工作台 没有一个变体适合这里。

我们已经在这个问题上苦苦挣扎了好几天,但没有成功。

请帮忙。谢谢。

4

1 回答 1

1

该属性具有约束值列表。您对约束有错误的理解。如果要添加列表约束,您将无法添加未列出的值。

因此,除了您列出的值之外,您将无法添加日期值。您需要删除约束,只需要选择数据类型作为日期。

在 d:date 类型中添加约束肯定会给出错误。下面是相同的原因。

更新:

首先,它会在保存值时检查值列表,如果您将 2001-01-05 作为值传递,则在约束的情况下将允许,但由于它是字符串值,因此不允许保存在 d:date .第二件事,如果您传递 java 的日期对象,则应用约束的相等比较将失败。因此,在这种情况下,您有 2 个选项。

  1. 将 d:date 更改为 d:text
  2. 移除约束。
于 2017-05-18T10:08:30.180 回答