如何将批处理文件中的数据传递给jythonfi

2024-05-23 18:53:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将数据从批处理文件传递到jython文件,并在创建webspehere队列连接工厂时使用。我对Jythn脚本语言还不熟悉。请帮我解决这个问题。你知道吗

批处理文件:

@rem create a JMS connection factories call %PROFILE_PATH%\bin\wsadmin -lang jython -f checkconn.jy %NODE_NAME% %SERVER_NAME% %QUEUE_MANAGERNAME% %QUEUE_HOSTNAME% %QUEUE_PORTNUMBER%

因此,我将以下值从批处理文件传递到jython文件:

以下选项将传递到脚本环境,并作为存储在argv变量中的参数提供:

"[MyServer7Node, MyServer7, QM_BFDC49, 127.0.0.1, 1416]"

我的Jython代码:

import sys

nodeName =sys.argv[0]
serverName =sys.argv[1]
queueManagername =sys.argv[2]
queueHostname =sys.argv[3]
queuePort=sys.argv[4]

def createconnectionFactories(nodeName,serverName,queueManagername,queueHostname,queuePort):
      print "Creating connection factories"
      ds = AdminConfig.getid("/Node:"+nodeName+"/Server:"+serverName+"/" )
      print queuePort
      AdminTask.createWMQConnectionFactory(ds,["-name ConnectionFactory -jndiName 'jms/ConnectionFactory' -type CF  -qmgrName '+queueManagername+' -wmqTransportType BINDINGS_THEN_CLIENT -qmgrHostname '+queueHostname+' -qmgrPortNumber '+queuePort+' -qmgrSvrconnChannel SYSTEM.AUTO.SVRCONN"])
      AdminTask.createWMQConnectionFactory(ds,["-name IntegrationConnectionFactory -jndiName 'jms/IntegrationConnectionFactory' -type CF  -qmgrName '+queueManagername+' -wmqTransportType BINDINGS_THEN_CLIENT -qmgrHostname '+queueHostname+' -qmgrPortNumber '+queuePort+' -qmgrSvrconnChannel SYSTEM.AUTO.SVRCONN"])
      AdminConfig.save()

 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Main program
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
createconnectionFactories(nodeName,serverName,queueManagername,queueHostname,queuePort)

尝试运行脚本时,无法插入queueManagername、queueHostname和queuePort的值。你知道吗

有人能告诉我如何在jython脚本中传递用户输入值吗?你知道吗

因为“+queueManagername+”、“+queueHostname+”、“+queuePort+”现在可以在这种情况下工作。你知道吗


Tags: 文件脚本queuesysdsjythonconnectionargv
1条回答
网友
1楼 · 发布于 2024-05-23 18:53:08
import sys

nodeName =sys.argv[0]
serverName =sys.argv[1]

def createconnectionFactories(nodeName,serverName):
      print "Creating connection factories"
      ds = AdminConfig.getid("/Node:"+nodeName+"/Server:"+serverName+"/" )
      AdminTask.createWMQConnectionFactory(ds,["-name ConnectionFactory -jndiName 'jms/ConnectionFactory' -type CF  -qmgrName QM_BFDC49 -wmqTransportType BINDINGS_THEN_CLIENT -qmgrHostname 127.0.1.1 -qmgrPortNumber 1416 -qmgrSvrconnChannel SYSTEM.AUTO.SVRCONN"])
      AdminTask.createWMQConnectionFactory(ds,["-name IntegrationConnectionFactory -jndiName 'jms/IntegrationConnectionFactory' -type CF  -qmgrName QM_BFDC49 -wmqTransportType BINDINGS_THEN_CLIENT -qmgrHostname 127.0.1.1 -qmgrPortNumber 1416 -qmgrSvrconnChannel SYSTEM.AUTO.SVRCONN"])
      AdminConfig.save()

 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Main program
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
createconnectionFactories(nodeName,serverName)

相关问题 更多 >