if (transactionElement != null) {
ParameterInclude transactionParameters = new ParameterIncludeImpl();
Iterator parameters = transactionElement.getChildrenWithName(new QName(TAG_PARAMETER));
processParameters(parameters, transactionParameters, null);
TransactionConfiguration txcfg = null;
OMAttribute txConfigurationClassAttribute =
transactionElement.getAttribute(new QName(TAG_TRANSACTION_CONFIGURATION_CLASS));
if (txConfigurationClassAttribute != null){
String txConfigurationClassName = txConfigurationClassAttribute.getAttributeValue();
try {
Class txConfigurationClass = Class.forName(txConfigurationClassName);
Constructor constructor = txConfigurationClass.getConstructor(new Class[]{ParameterInclude.class});
txcfg = (TransactionConfiguration) constructor.newInstance(new Object[]{transactionParameters});
} catch (Exception e) {
throw new DeploymentException("Can not found or instantiate the class " + txConfigurationClassName, e);
}
} else {
txcfg = new TransactionConfiguration(transactionParameters);
}
OMAttribute timeoutAttribute = transactionElement.getAttribute(new QName(TAG_TIMEOUT));
if(timeoutAttribute != null) {
txcfg.setTransactionTimeout(Integer.parseInt(timeoutAttribute.getAttributeValue()));
}
axisConfig.setTransactionConfig(txcfg);
}