We have been continuing our fun with WLS 8.1sp2 (upgrading from WLS 7), and are trying to put processes in place to allow:
a) A new developer to take our doc, setup a dev environment in a short period
b) An admin to take our doc, and setup a new testing/production server in a short period
When I take a look at the docs, it again shows that WLS is a real pain when it comes to single install servers.
WebLogic has the notion of an Admin Server for central configuration, logging, etc. This is great if you have a bunch of servers that you need to administer, clusters, etc. However in my experience this is probably ~5% of the total installs of WLS?
We want to be able to do the following to get a new instance running:
- Install WLS on machine
- Grab configuration from repository
- Set a few environment variables
- Run start script (again from repository)
This is what we have with other servers, why isn’t that the case here?
Instead what do we have to do?
- Install WLS on machine
- Run through a config wizard to setup a domain, and add a couple of things (JDBC pool) through this tool (since we need the {3DES} password that it generates)
- Run the server in that domain once, as for some reason that changes the config.xml. Kill the server.
- Grab the config.xml from the repository and run through a bunch of steps to merge the two. At least relative directories seem to be working now in WLS 8.1. The documentation says:
Relative paths are based on the root of the Admin Server installation directory.
However, from testing, it appears to actually be from the domain directory. This allowed us to use a path of:
<Application Name=”portal” Path=”applications/portal” …. >
This seemed to work on Windows too, although for some reason after you run the server it changes the file to be: Path=”applications\portal”. Whatever.
Something scares me about having running servers change your config.xml. I understand that there should be a tool (e.g. /console) to make changes in a GUI. That is great. However just running a server with a given config shouldn’t be changing the file! It should be read only!
BEA always recommends not touching the config.xml, and having that be a blackbox. In the real world though you want to share this file, and don’t want to force every new install to involve a step which goes through /console setting things up. Just let me edit a file and CVS checkout to the machine I am setting up… then I can % ant setup-server and away we go!
Tom Malaher has been running into similar problems, as shown by his post “Third party software installation woes”