final boolean interleaving = getBooleanIfSetOrGetDefault(dataSourceNode, INTERLIVING, false);
final boolean noTxSeparatePool = getBooleanIfSetOrGetDefault(dataSourceNode, NOTXSEPARATEPOOL, false);
final boolean padXid = getBooleanIfSetOrGetDefault(dataSourceNode, PAD_XID, false);
final boolean isSameRmOverride = getBooleanIfSetOrGetDefault(dataSourceNode, SAME_RM_OVERRIDE, false);
final boolean wrapXaDataSource = getBooleanIfSetOrGetDefault(dataSourceNode, WRAP_XA_DATASOURCE, false);
final CommonXaPool xaPool = new CommonXaPoolImpl(minPoolSize, maxPoolSize, prefill, useStrictMin, isSameRmOverride,
interleaving, padXid, wrapXaDataSource, noTxSeparatePool);
final String username = getStringIfSetOrGetDefault(dataSourceNode, USERNAME, null);
final String password = getStringIfSetOrGetDefault(dataSourceNode, PASSWORD, null);
final String securityDomain = getStringIfSetOrGetDefault(dataSourceNode, SECURITY_DOMAIN, null);