workflows now run, but with errors, must fix that next
This commit is contained in:
parent
6fc6b00b49
commit
ccf1b3633f
6 changed files with 38 additions and 31 deletions
|
|
@ -309,21 +309,15 @@ Checks to ensure the requestor is who we think it is, and then executes a workfl
|
|||
|
||||
sub www_runWorkflow {
|
||||
my $session = shift;
|
||||
$session->errorHandler->warn("A");
|
||||
$session->http->setMimeType("text/plain");
|
||||
$session->errorHandler->warn("b");
|
||||
return "error" unless (isInSubnet($session->env->get("REMOTE_ADDR"), $session->config->get("spectreSubnets")));
|
||||
$session->errorHandler->warn("c");
|
||||
my $instanceId = $session->form->param("instanceId");
|
||||
if ($instanceId) {
|
||||
$session->errorHandler->warn("d");
|
||||
my $instance = WebGUI::Workflow::Instance->new($session, $instanceId);
|
||||
if (defined $instance) {
|
||||
$session->errorHandler->warn("e");
|
||||
return $instance->run;
|
||||
}
|
||||
}
|
||||
$session->errorHandler->warn("f");
|
||||
return "error";
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ sub execute {
|
|||
my $self = shift;
|
||||
my $placeholders = shift || [];
|
||||
my $sql = $self->{_sql};
|
||||
$self->sth->execute(@{ $placeholders }) or $self->db->session->errorHandler->fatal("Couldn't execute prepared statement: $sql Root cause: ". $self->errorMessage);
|
||||
$self->sth->execute(@{ $placeholders }) or $self->db->session->errorHandler->fatal("Couldn't execute prepared statement: $sql : With place holders: ".join(", ", @{$placeholders}).". Root cause: ". $self->errorMessage);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -242,7 +242,7 @@ sub requestCommit {
|
|||
my $instance = WebGUI::Workflow::Instance->create($self->session, {
|
||||
workflowId=>$self->get("workflowId"),
|
||||
className=>"WebGUI::VersionTag",
|
||||
method=>"new",
|
||||
methodName=>"new",
|
||||
parameters=>$self->getId
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -214,20 +214,32 @@ sub run {
|
|||
my $workflow = WebGUI::Workflow->new($self->session, $self->get("workflowId"));
|
||||
return "undefined" unless (defined $workflow);
|
||||
return "disabled" unless ($workflow->get("enabled"));
|
||||
my $activity = $workflow->getNextActivity($self->get("currentActivity"));
|
||||
return "done" unless (defined $activity);
|
||||
my $activity = $workflow->getNextActivity($self->get("currentActivityId"));
|
||||
if (defined $activity) {
|
||||
$self->set({"currentActivityId",$activity->getId});
|
||||
} else {
|
||||
$self->delete;
|
||||
return "done";
|
||||
}
|
||||
my $object = {};
|
||||
my $class = $self->get("className");
|
||||
my $method = $self->get("methodName");
|
||||
my $params = $self->get("parameters");
|
||||
if ($class && $method) {
|
||||
$object = eval($class->$method($self->session, $params));
|
||||
my $cmd = "use $class";
|
||||
eval($cmd);
|
||||
if ($@) {
|
||||
$self->session->errorHandler->warn("Error instanciating activity (".$activity->getId.") pass-in object: ".$@);
|
||||
$self->session->errorHandler->warn("Error loading activity class $class: ".$@);
|
||||
return "error";
|
||||
}
|
||||
eval{ $object = $class->$method($self->session, $params) };
|
||||
if ($@) {
|
||||
$self->session->errorHandler->warn("Error instanciating activity (".$activity->getId.") pass-in object: ".$@);
|
||||
return "error";
|
||||
}
|
||||
return $activity->execute($object, $self);
|
||||
}
|
||||
return $activity->execute($object, $self);
|
||||
return $activity->execute(undef, $self);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue