我需要将命令(查询,启动,停止)发送到远程OpenEdge AppServer。这将在OpenEdge 11.3上运行。
据我所知,这些是选项:
OpenEdge管理。这是一个可通过HTTP(S)访问的Web应用程序。所需要的只是一个Web浏览器。不幸的是,它是为交互使用而设计的-试图以编程方式控制它会很疯狂。asbman
命令行实用程序。这是一个批处理文件,可调用Java命令行应用程序,并允许管理本地和远程AppServer。尽管这几乎完全满足了我的需求,但它却付出了沉重的代价:似乎使用它的唯一方法是安装OE,而OE并非完全轻巧,但容量超过500 MB。这包括运行AppServer所需的一切,而我仅需要能够将命令发送到已运行的远程服务器。
我应该注意,尽管可以解决此问题,但它只能以交互方式输入密码(重定向STDIN很简单)。
如果我可以提取该Java应用程序(com.progress.ubroker.tools.UBCmdClient
,progress.jar
),那很好。但是,它将调用至少一个本机库(jutil.dll
),并且它们使用自定义启动器(jvmStart.exe
)。
尝试通过标准Java启动器(java.exe
)启动它会导致加载本机库(Expecting an absolute path of the library: null\bin\jutil.dll
)时出错。我也正在提取jvmStart.exe
,但是似乎有很多依赖项。
我找不到与此有关的任何文档。asbman
最终最终通过协议与AdminServer以及可能与AppServer进行通信。Progress显然将其称为“ Chimera”。不幸的是,我似乎在任何地方都找不到文档。
我有什么想念的吗?是否有人知道一种方法,该方法最好但不一定要记录在案(此时,只要可行,就可以与特定的OE版本关联就可以了),以远程方式以编程方式将查询和命令发送到AppServer而不安装整个服务器套房?我简直不敢相信,没有人认为这可能是一件有用的事情。
最佳答案
我对你有个坏消息。
没有独立的asbman,也没有记录您所寻找的内容。
我希望您将不得不硬着头皮安装OE。通过反复试验或仔细监视实际使用的文件,您可能会减少安装中的大量毛刺。就我个人而言,我从来没有发现值得付出很多努力的事情。磁盘便宜。
但是,如果您确实找到了我感兴趣的解决方案,那么仍然会如此。