Hi,
I have the problem with automated generation of ContentBooleanField. The code
that works perfectly for SmallText:
----------------8<-------------------------8<-----------------------------
ContentSmallTextField
threadDescriptionField=ContentSmallTextField.createSmallText(
siteID,
newPage.getID(),
threadDataHolderC.getID(), //container Id
threadDescriptionFieldDefinition.getID(),
newPageField.getPage(jData.params()).getAclID(),
0,
newThreadDescription,
jData.params());
StateModificationContext smc6=new StateModificationContext(
new ContentFieldKey(threadDescriptionField.getID()),
languageCodes,
true);
threadDescriptionField.activate(languageCodes,
0,
jData.params(),
smc6);
----------------8<-------------------------8<-----------------------------
doesn't work for Boolean:
----------------8<-------------------------8<-----------------------------
ContentBooleanField
threadUseValidationField=ContentBooleanField.createBoolean(
siteID,
newPage.getID(),
threadDataHolderC.getID(), //container Id
threadUseValidationFieldDefinition.getID(),
newPageField.getPage(jData.params()).getAclID(),
0,
false,
jData.params());
StateModificationContext smc7=new StateModificationContext(
new ContentFieldKey(threadUseValidationField.getID()),
languageCodes,
true);
threadUseValidationField.activate(languageCodes,
0,
jData.params(),
smc7);
----------------8<-------------------------8<-----------------------------
In fact, Jahia complains about :
----------------8<-------------------------8<-----------------------------
org.jahia.exceptions.JahiaException:
Entry [ENTRY:workFlowState=2, versionID=0, languageCode=shared] not found for
field 59831 using request : [SELECT value_jahia_fields_data FROM
jahia_fields_data WHERE id_jahia_fields_data=59831 AND workflow_state>1 AND
version_id=0 AND language_code='shared'], Entry [ENTRY:workFlowState=2,
versionID=0, languageCode=shared] not found for field 59831
----------------8<-------------------------8<-----------------------------
So, I have checked, and in the dbthe field language_code is "fr". My
languageCodes are defined as:
----------------8<-------------------------8<-----------------------------
HashSet languageCodes=new HashSet();
languageCodes.add("en");
languageCodes.add("fr");
languageCodes.add("shared");
----------------8<-------------------------8<-----------------------------
I have compared the code for methods ContentSmallTextField.createSmallText()
and ContentBooleanField.createBoolean() and they are identical (ok,
equivalent..)..
Any help?
Regards,
Predrag Viceic