}
public Document initProcess(ITaskDAOConnection dao,String taskID, String user, String formUrl, Document input, String participantToken)
throws AuthException, UnavailableTaskException, AccessDeniedException, AxisFault {
UserRoles credentials = _authProvider.authenticate(participantToken);
Task task = dao.fetchTaskIfExists(taskID);
checkIsAvailable(taskID, task, credentials);
if (task instanceof PIPATask) {
PIPATask pipaTask = (PIPATask) task;
Document document = sendInitMessage(pipaTask, user, formUrl, participantToken, input);
if (_logger.isDebugEnabled())