xwork相关知识点
使用xworks,但是数据不存在xwork的表,那么使用table,勾选的行数据的oid会是bean,需要做下面处理
在表单嵌入table,创建文档到table中完成页面创建之后不能刷新表,后台报ContextObject为空,手动刷新页面之后表中数据可以刷新出来
定义流程def文件需要在workflowTemplateDef.conf注册,不需要xconfmanager -p
xworks里的流程表单,也是可以不用创建Bean,直接用jca的table或者属性面板都可以的
xworks流程表单报workitem_details_attributes_group_input is null错误,是因为流程模板里任务的模板格式选择了原生,模板名称选择了通用模板,应该用ootb的jsp和default
xworks流程的附件处理类
AddFileAttachmentFormProcessorDelegate
xworks流程的附件显示builder
AttachmentGroupTableBuilder
xworks流程如果流程PBO是文档,那么附件列表只能获取当前文档版本对应的附件,如果PBO升版,就看不到之前版本的附件,在AttachmentGroupTableBuilder做如下修改
public Object buildComponentData(ComponentConfig config, ComponentParams params) throws Exception {
LOGGER.debug("AttachmentGroupTableBuilder buildComponentData begin>>>>>>>>>>");
WorkItem workitem = (WorkItem)params.getContextObject();
//处理流程对象是文档的情况
Persistable pbo = WorkflowUtils.getPrimaryBusinessObject(workitem); // 获得流程PBO
if (pbo instanceof WTDocument) {
LOGGER.debug("pbo is WTDocument>>>>>>>>>>");
WTDocument doc = (WTDocument) pbo;
return DocUtil.getSecondContent(doc);
}
String attachmentGroupId = (String)params.getParameter("groupId");
return this.attachmentGroupService.getAttachments(workitem, attachmentGroupId);
}