我创建了一个ActivityNode(条目)从ActivityNode删除字段,我可以用不能修改/使用SBT
setFields(List<Field> newListField)
fonction添加自定义字段。
但是
我无法修改这些字段。 (在这种情况下,我尝试修改命名LIBENTITE字段的值)
FieldList list = myEntry.getTextFields();
List<Field> updatedList = new ArrayList<Field>();
//I add each old field in the new list, but I modify the field LIBENTITE
for(Field myField : list){
if(myField.getName().equals("LIBENTITE")){
((TextField)myField).setTextSummary("New value");
}
updatedList.add(myField);
}
myEntry.setFields(updatedList);
activityService.updateActivityNode(myEntry);
此代码应更换新的一个领域的老名单,但我不能看到自定义字段LIBENTITE任何变化IBM连接中的myEntry。
所以我试图创建领域的一个新的列表,而不是修改我的领域,但增加一个新问题:
for(Field myField:list){
if(!myField.getName().equals("LIBENTITE")){
updatedList.add(myField);
}
}
Field newTextField = new TextField("New Value");
newTextField .setFieldName("LIBENTITE");
updatedList.add(newTextField);
而这个代码只是增加在myEntry的新领域。我看到的是其他自定义字段没有更改,现在我在myEntry中有两个名为LIBENTITE的自定义字段,一个带有旧值,另一个带有新值。
所以我虽然也许如果我清除旧的字段列表,然后我添加新的,它会工作。 我试过两个fonctions
myEntry.clearFieldsMap();
和
myEntry.remove("LIBENTITE");
但他们都不似乎工作,我仍然无法从myEntry使用SBT删除自定义字段。
有什么建议吗?
其中一位同事会回复 – 2015-02-10 14:14:05
嗨,我很高兴看到您的评论。我仍然没有找到解决方案。你有什么消息吗? – Chucky 2015-02-17 09:25:35
目前,这个问题没有解决办法,TextFields是只读地图。我们的问题记录在https://github.com/OpenNTF/SocialSDK/issues/1657 – 2015-02-17 12:53:35