Registering XML RPC Servers as Services in Windows

Hello,

I had reviewed the documentation on creating Windows services to start my XML RPC Servers that Miguel pointed me to from a Support Request. I read it and tried it, but it didn’t seem to do anything.

Reference: http://techcommunity.softwareag.com/ecosystem/documentation/webmethods/wmsuites/wmsuite8-2_ga/EntireX/8-2-SP1_EntireX/adminWin/rpcAsWinService.htm#startRpcServer

Here’s what I did:

  1. Found D:\SoftwareAG\EntireX\bin\RPCservice.bat and copied it to D:\SoftwareAG\EntireX\bin\RPCservice_XML.bat.
  2. Edited this RPCservice_XML.bat so it now looks like this:

@setlocal

@rem example command script for the EntireX RPC Server Windows Service
@rem Date: 2011/01/11 12:12:43
@rem Revision: 1.8

@rem Copyright (c) 2000-2011 Software AG, All Rights Reserved.
@rem Warning: This computer program is protected by copyright law and international treaties.
@rem Unauthorized reproduction or distribution of this program, or any portion of it, may result
@rem in severe civil and criminal penalties, and will be prosecuted.
@rem

@rem Starts the EntireX Micro Focus RPC Server as Windows Service
@rem call microfocusserver.bat %*

@rem Starts the EntireX C RPC Server as Windows Service
@rem call cserver.bat %*

@rem Starts the EntireX CICS ECI RPC Server as Windows Service
@rem call cicseciserver.bat %*

@rem Starts the EntireX IMS Connect RPC Server as Windows Service
@rem call imsconnectserver.bat %*

@rem Starts the EntireX .Net RPC Server as Windows Service
@rem call dotNetServer.bat %*

@rem Starts the EntireX Java RPC Server as Windows Service
@rem call jrpcserver.bat %*

@rem Starts the EntireX Java RPC Server as Windows Service
call jxmlrpcserver.bat %*

@endlocalj

Note: I had to add the jxmlrpcserver.bat line as it wasn’t already included.

  1. I copied this RPCservice_XML.bat to D:\EntireX\Services\Development\DOO\CheckAvailabity\ and renamed it as RPCservice_CheckAvailDev.bat.
  2. I copied it also to D:\EntireX\Services\Development\DOO\ProcessInvoiceResponse\ and to D:\EntireX\Services\Development\DOO\PublishSalesOrder\ and gave them the names RPCservice_ProcessInvoiceDev.bat and RPCservice_PubSalesOrderDev.bat respectively.
  3. To test these, I deregistered the XML RPC Servers that were executing that I previously started by running jxmlrpcserver.bat under my own id and started these new bat files. All three of these servers started and registered with the Broker.
  4. To register, I opened a command prompt window, changed directories to D:\SoftwareAG\EntireX\bin\ and entered the following:

rpcservice.exe -install -ext CheckAvailDev -serverlog D:\EntireX\Services\Development\DOO\CheckAvailability\serverlog.txt -trace D:\EntireX\Services\Development\DOO\CheckAvailability\servertrace.txt -script D:\EntireX\Services\Development\DOO\CheckAvailability\RPCservice_CheckAvailDev.bat

Trouble is… it just comes back with the DOS prompt, no confirmation, no error. And no new services appear when I go to services.msc.

Please advise what I am doing wrong here, as this seems to be what the doc says (other than the duplicated rpcservice.exe text which is apparently a paste & paste again of the same text).

Thanks,

Brian

Brian, is this on Windows 7 ?

If yes you may need to at least CMD to “Run as Administrator”,
registry related operations don’t like to be run as non-admin.

   Wolfgang

Hi Wolfgang,

It’s Windows Server 2008.

Hoping that’s all it is, I did a quick search on how to do this and found some command called:

runas /user:\administrator cmd

which would open a command prompt but as administrator. In my attempt, i need an administrator password, which is odd because I should be able to Run as administrator since I can do so under a Windows GUI.

Please advise if I am misguided… else looks like i will need to ask the Windows admin team to do this for me.

Regards,

Brian

Brian,

I don’t have a W2008 to play with right now, but runas really switches to a different
user rather than elevating the command, afaik.

What I was talking about is right click → Run as Administrator
which you can either do for the command / DOS prompt (CMD.exe) or put the
rpcservice.exe -install … command into a .bat and run that “as administrator”.

Cheers - Wolfgang

Hi Wolfgang,

I will try one or more of those ideas. I am not proficient as a Windows admin, so I am learning as I go.

Thanks for the suggestions! I will report back how that worked.

Regds,

Brian

Hello,

Thanks again for the suggestion, Wolfgang. I found the cmd.dll file under the Windows/System32 objects and ran that as administrator:

rpcservice.exe -install -ext (extensionname) -script D:\pathname\RPCservice_extensionname.bat

I already have logging done inside the properties files.

Now these are all running as services under Windows with properties to start automatically and restart on the 1st 2 failures.

Creating a batch file and running that as administrator didn’t work, so I am glad this did.

Thanks!

You are welcome, Brian !

have a grand weekend,

   Wolfgang