Our organization follows a change management policy where we don’t deploy anything manually to production. They now want me to comply with this and use Kintana to promote aar files from development WSStack to QA to production. The problem is, the service URL and the port for the EntireX Broker node between environments is different, and each are a product of generating the web service from Designer.
How can I externalize the web service entry point and port number so that I can possibly migrate with Kintana the aar file (and all it contains) without changing it?
The entry point will always look like this: http://[wsstack domain]/wsstack/services/[service]
Thanks for the response, Rolf. This looks like it supports what I need to happen.
In Designer, when I edit the .aar file, I go to the Operations tab where I see “Parameters”. Here’s where I am confused now. The documentation states:
It looks like I need a parameter called “services”, and then add a parameter to that called “EntireX-XML-Listener” and add an attribute called “location” to the “services” parameter. I don’t really see where I can add either attributes or other parameters to a parameter I am defining. I only can add a parameter and then assign a value.
these settings have nothing to do with the Designer. You have to apply them in your app server which runs the Web Service Stack. In the axis2.xml file you have to add the section which specifies the path to the configuration file. The configuration file is an XML file, here’s the example from the documentation:
That’s disappointing. The SOA admin team will then have to do this editing of axis2.xml which is less than optimal. I would have liked to make this change possible prior to deploying the aar file under WSStack (using Designer where the WSDL and XMM files are able to be configured). Sounds like I need to submit an enhancement request if I want to be able to configure axis2.xml in the Designer tool.
Since the purpose is to allow the aar file be promoted through the use of Kintana, what is the repercussion of this? If they set up Kintana to copy the aar file, will this promote the altered axis2.xml file or will the original axis2.xml be inside the aar file and get deployed? If the original axis2.xml file is inside the aar file, will it overwrite the altered one after deployment if both the aar file and axis2.xml are copied with Kintana? Now I think you see why I’d like the axis2.xml file to be already properly configured before I deploy the first time to WSStack.
It also won’t be acceptable from a change management perspective to have someone manually tinker with the file after each promotion. That’s the point of parameterizing in the first place.
The axis2.xml file has nothing to do with the aar file. It’s part of the web service stack inside the appserver: File axis2.xml can be found in the conf directory or folder of the Web Services Stack Web application.
Thanks for your patience and help, Rolf. Since it’s a one-time change and not something to be changed or deployed for each service, that should be ok then. Thanks for pointing me in the right direction!
Just to clarify the point a bit: the axis2.xml file is updated once to point to a configuration file, which Rolf has provided an example of.
That configuration file will most often be set once and not updated each time. Obviously, if there are specific services that will have different overrides than the typical set, there may be additional updates, but typically these will be infrequent.
The purpose of the configuration file is to override settings within the aar files. The configuration will be different in each environment (but essentially static). For example, the Broker ID might change from dev to qa to prod; these will be different values in each of the configuration files in the corresponding environments. Now you are able to copy the aar files unchanged from dev to qa to prod, simplifying the deployment process and allowing the aar file to be versioned as needed.
We finally got to the point where this is set up and deployed but it’s not working. This is a SAG-L posting but I am cross-posting since I got the initial help here and think I’m more likely to receive help here.
Such changes involve edits to axis2.xml:
The file referenced contains localized broker port settings:
To try this out I deployed a service there and the XMM reference by the archive file contained the following:
vista.tcc.etn.com:10203
RPC/SRV1/CALLNAT
When testing, it took what was provided by the XMM instead of the config file.
Does anyone know what I am doing wrong? I tried blanking out the Broker info in deploying the service but it wants something there. When I put localhost:1971, of course that doesn’t work. And when really blanking it out it has no idea where the host is.
I have used the .aar file generated through SoftwareAG designer onto Web Service Stack and deployed to a tomcat web server. Services are enabled and listed under htttps://localhost:8080/wsstack/services/listServices. But when I send a SOAP request to https SOAP 11 endpoint, am not getting any response from services.
I need help on debugging this issue and started by looking for any wsstack logs, but didnt find any. I have provided the log properties mentioned below under WEB-INF/classes/log4j.properties and I see the logs being generated related to axis2 but none on web services SOAP request.