Try using this. It is working fine for me....
########################
global AdminConfig
set widCell [
string trim [$props getProperty cell.name]]
set widNode [string trim [$props getProperty node.name]]
set widServer [string trim [$props getProperty server.name]]
set cell [$AdminConfig getid "/Cell:$widCell/"]
set node [$AdminConfig getid /Cell:$widCell/Node:$widNode/]
set server [$AdminConfig getid /Cell:$widCell/Node:$widNode/Server:$widServer/]
set mls [$AdminConfig list MessageListenerService $server]
set listenerConfigNos [string trim [$props getProperty listener.config.nos]]
for {set i 1} {$i <= $listenerConfigNos} {incr i} {
set listenerName [string trim [$props getProperty listener.$i.name]]
set initialState [string trim [$props getProperty listener.$i.initialState]]
set description [string trim [$props getProperty listener.$i.description]]
set connectionFactoryJNDIName [string trim [$props getProperty listener.$i.connectionFactoryJNDIName]]
set destinationJNDIName [string trim [$props getProperty listener.$i.destinationJNDIName]]
set maxMessages [string trim [$props getProperty listener.$i.maxMessages]]
set maxRetries [string trim [$props getProperty listener.$i.maxRetries]]
set maxSessions [string trim [$props getProperty listener.$i.maxSessions]]
$AdminConfig create ListenerPort $mls [list [list connectionFactoryJNDIName $connectionFactoryJNDIName] \
[list destinationJNDIName $destinationJNDIName] \
[list maxMessages $maxMessages] \
[list maxRetries $maxRetries] \
[list maxSessions $maxSessions] \
[list name $listenerName] \
[list description $description] \
[list stateManagement [list [list initialState $initialState]]]]
$AdminConfig save
}
########################
Paresh