01-05-2012 10:34 AM
Caused by: java.sql.SQLException: Transaction (Process ID 65) was deadlocked on {lock} resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
01-05-2012 01:18 PM
01-05-2012 06:38 PM
What kind of transaction handling are you using?I dont know. I didn't change anything by activiti.
Is there something complex happening in the service tasks?actually not. I just call funtionality of our software. it archives document in CRM-siebel. this is my class:
public class SiebelTask extends C4ServiceTask{
private static final Logger LOG = LoggerFactory.make();
private Expression partnerSystem;
public void execute(ActivityExecution execution) throws Exception {
PvmTransition transition = null;
Map<String, Object> variables = new HashMap<String, Object>();
String partnerSystemStr = (String) partnerSystem.getValue(execution);
if (execution.hasVariables()) {
try {
LOG.info("Starting siebel task. ThreadID: "
+ Thread.currentThread().getId());
variables = execution.getVariables();
byte[] startupByte = (byte[]) variables.get("startup");
String startupXml = new String(startupByte);
Startup startup = new JaxbStartup(startupXml);
ConnectorBusinessData data = loadDataXml(variables.get("data"));
SiebelStartup siebelStartup = new SiebelStartup(startup);
SiebelRunner sr = new SiebelRunner(siebelStartup,
partnerSystemStr);
Properties props = new Properties();
CallbackProperties callbackProperties = new CallbackProperties();
callbackProperties.setProperties(props);
sr.execute(new BusinessServiceInvoker(data, callbackProperties
.getProperties()));
transition = execution.getActivity().findOutgoingTransition(
"siebel-no-exception");
LOG.info("Siebel task was succesfully completed. ThreadID: "
+ Thread.currentThread().getId());
} catch (Exception e) {
LOG.severe("ThreadID: " + Thread.currentThread().getId()
+ "\nEs gibt ein Problem bei siebel task: "
+ e.getMessage());
transition = execution.getActivity().findOutgoingTransition(
"siebel-exception");
}
execution.take(transition);
} else {
LOG.severe("Es gibt folgendes Problem: Die Processvariablen konnten nicht gesetzt werden.");
}
}
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.