Hi all,
I have tried to start a workflow using DFS and without error occur in my application (It seens normal in my application). Here is my code section:
Dim contextFactory As ContextFactory
Dim serviceContext As IServiceContext
Dim serviceFactory As ServiceFactory
Dim workflowService As IWorkflowService
Dim processTemplates As DataPackage
Dim k As Integer
Dim workflowID As String = ""
contextFactory = contextFactory.Instance
serviceContext = contextFactory.NewContext
' SETUP credentials
Dim repoId As RepositoryIdentity
repoId = New RepositoryIdentity()
repoId.RepositoryName = docbase
repoId.UserName = username
repoId.Password = password
serviceContext.AddIdentity(repoId)
ServiceFactory = ServiceFactory.Instance
' CREATE object service reference
workflowService = serviceFactory.GetRemoteService(Of IWorkflowService)(serviceContext, "core", _dfsEndPoint)
processTemplates = workflowService.GetProcessTemplates(docbase, Nothing, "object_name")
For Each dObj As DataObject In processTemplates.DataObjects
If dObj.Properties.Get("object_name").GetValueAsString = workflowName Then
workflowID = dObj.Identity.GetValueAsString
End If
Next
Dim objId As New ObjectId(workflowID)
Dim info As ProcessInfo = workflowService.GetProcessInfo(New ObjectIdentity(objId, docbase))
info.Supervisor = username
info.ProcessInstanceName = "APP_" & workflowName & " " & Date.Now.ToString("yyyy-MM-dd") & " " & firstImageFileName
' workflow attachment
Dim wfAttachment As New ObjectId(attachmentIDs(0))
info.AddWorkflowAttachment("My_dealing", wfAttachment)
Dim docIds As New List(Of ObjectId)
If attachmentIDs.Count > 1 Then
For k = 1 To attachmentIDs.Count - 1
docIds.Add(New ObjectId(attachmentIDs.Item(k).ToString))
Next
Dim pkgList As List(Of ProcessPackageInfo) = info.Packages
For Each pkg As ProcessPackageInfo In info.Packages
pkg.AddDocuments(docIds)
pkg.AddNote("note for " + pkg.PackageName, True)
Next
End If
Dim wf As ObjectIdentity = workflowService.StartProcess(info)
After that, when I go back to documentum and check with workflow report. It paused at step 1 with following error:
Execution Result : [DM_API_E_BADID]error: "Bad ID given: 0000000000000000" in Process Template: 'Signature Verification' - Activity: 'SV Filing'.
Workitem: '4a02266a8004c50a'
Workflow: 'APP_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.tif' - '4d02266a8001490a'
Activity: 'SV Filing' - '4c02266a8004a13a'
Process: 'Signature Verification' - '4b02266a8004a131'
DfException:: THREAD: http--0.0.0.0-9080-9; MSG: [DM_API_E_BADID]error: "Bad ID given: 0000000000000000"; ERRORCODE: 100; NEXT: null
at com.documentum.fc.common.DfException.newBadIdException(DfException.java:28)
at com.documentum.fc.client.impl.session.Session.getObjectManager(Session.java:902)
at com.documentum.fc.client.impl.session.Session.getObject(Session.java:963)
at com.documentum.fc.client.impl.session.SessionHandle.getObject(SessionHandle.java:653)
at com.hkmci.custom.bpmMoveFolder.BPMMoveFolder.getPrimaryAttachment(BPMMoveFolder.java:253)
at com.hkmci.custom.bpmMoveFolder.BPMMoveFolder.doTask(BPMMoveFolder.java:149)
at com.documentum.bpm.rtutil.WorkflowMethod.execute(WorkflowMethod.java:214)
at com.documentum.bpm.rtutil.AbstractWorkflowMethod.executeMethod(AbstractWorkflowMethod.java:27)
at com.documentum.bpm.rtutil.GenericWorkflowMethod.execute(GenericWorkflowMethod.java:129)
at com.documentum.bpm.rtutil.GenericWorkflowMethod.execute(GenericWorkflowMethod.java:357)
at com.documentum.bpm.rtutil.GenericWorkflowMethod.execute(GenericWorkflowMethod.java:70)
at com.documentum.mthdservlet.DfMethodRunner.runIt(Unknown Source)
at com.documentum.mthdservlet.AMethodRunner.runAndReturnStatus(Unknown Source)
at com.documentum.mthdservlet.DoMethod.invokeMethod(Unknown Source)
at com.documentum.mthdservlet.DoMethod.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
at java.lang.Thread.run(Thread.java:722)
Can some one kindly guide me on how to solve it? Thanks in advance.
Best Regards,
Carson.