2017-05-18 2 views
0

この質問は、Alfresco Communityのカーボンコピーです。CMIS:日付の選択リストには、文書を更新するのに適していない値が含まれています

私たちは新しいTestModelとListDateプロパティを追加したAlfrescoを使用しています。 これらの値のいずれかが更新のために選択されているidea runtime

は、エラーが表示されます。 alfresco model

次は、私たちは、選択肢のリストを返すCMIS Apacheの化学コネクタを使用します。例えば、我々は細部に最初の1(2001年1月の2001年1月5日== 5)

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時または午後0時を予定しており、午前12時はUTCスケールから要約されていると仮定します。 この状況はすでに変わっているにもかかわらず、更新する前にその値の時間を調整することはまったく役に立ちませんでした。

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は同じように動作に時間

calendar.add(Calendar.HOUR_OF_DAY, 12); 

結果を設定する、のは、言ってみましょう(それはしかし何の選択肢を持っていません):バリエーションのworkbench どれもがここに適していません。

私たちは、成功しなかった数日間、この問題に取り組んできました。

助けてください。おかげさまで

答えて

1

このプロパティの値には制限があります。制約について間違って理解しています。リスト制約を追加すると、リストにない値を追加することはできません。

したがって、あなたがリストした値以外の日付値を追加することはできません。 制約を削除する必要があり、日付としてデータ型を選択する必要があります。

d:date型で制約を追加すると、致命的なエラーが発生します。その下には、同じ理由があります。

更新:

そのまま最初のものは、それが値を保存すると、値のリストにあるときに、それは制約の場合に許可するよりも、値として2001年1月5日を渡す場合は、チェックしますが、それはd:dateで保存することを許可しません文字列の値。2番目の事は、javaの日付オブジェクトを渡す場合、適用された制約の等価比較よりも失敗します。あなたはこの場合2つのオプションがあります。

  1. 変更D:Dへの日付:テキスト
  2. 制約を削除します。
+0

申し訳ありませんが、私はあなたを取得できません。実際には、Choice List(CMISサーバー側から返された)の値の1つを使用しようとしましたが、エラーで失敗しました。それから私は何とか成功を収めずに目標を達成するためにそれを調整しようとしました。 – Olegdelone

+0

これは、日付の書式が異なるためです。値の制約のリストはdateに適用すべきではありません。stringとして値を格納していますので、string.ifと比較して同等の比較が失敗した場合、値を保存できません。 –

+0

Krutikは、文字列 "2001-01-05"を入力して更新要求にプッシュすると、そのような値が適用されることを意味しますか?今すぐ確認してみてください – Olegdelone

関連する問題