There are 2 versions of IBM WebSphere Application Server, the Standard Edition and the Advanced Edition, which has everything the standard edition has, plus CORBA support and an Enterprise JavaBeans server. To see which version you have, cat /usr/WebSphere/AppServer/properties/version.properties For as0206e0/1 on 10-26-1999, it was IBM WebSphere Application Server Version 2.02, Advanced Edition for AIX, & for Windows NT & Sun Solaris As of 10-26-1999, one had to go down this path to get fixes, - http://www.software.ibm.com/webservers/appserv/download.html Which got translated to http://www-4.ibm.com/software/webservers/appserv/download.html - The "Corrective service downloads are on our Support page." link ------------- at the bottom of the screen, which went to http://www-4.ibm.com/software/webservers/appserv/support.html - The "Service upgrade to Advanced Edition, Version 2.03" link takes you to ------------------------------------------------- http://www-4.ibm.com/software/webservers/appserv/download)v2ae.html - Under the "AIX" section, the "Download" link takes you to -------- http://www6.software.ibm.com/dl/websphere/advanced-p - And there finally, is the "AIX 2.03 download US English" link ---------- which takes you to http://www6.software.ibm.com/dl/websphere/advanced-i?S_PKG=advancedaix&S_CMP=&S_TACT= - They make you fill out a bunch of crap in their form, but it finally gets you to this ftp site where you gotta authenticate as particular userid. You only see this when your browser is actually ftp-ing the file. Here's the URL I swiped when it was downloading. ftp://webusers:kusmw56k@198.17.57.81/webservers/appserv/v203/IBMWebAS_AIX_203_AE_TB.tar Interesting syntax there. 198.17.57.81 is service2.boulder.ibm.com, and you can rftp there, using webusers as the userid & kusmw56k as the password. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Interesting files to back up are /usr/lpp/internet/server_root/pub/srvrctrl.conf /usr/WebSphere/AppServer/properties/server/servlet/servletservice/service.properties /usr/WebSphere/AppServer/properties/server/servlet/servletservice/servlets.properties /usr/WebSphere/AppServer/properties/server/servlet/servletservice/endpoint.properties /usr/WebSphere/AppServer/properties/bootstrap.properties /etc/httpd.conf /etc/servlet.conf =========================================================================================== To turn on tracing, change two lines in /usr/WebSphere/AppServer/properties/bootstrap.properties Change ose.trace.enabled=false to ose.trace.enabled=true and ose.trace.to.webserver=false to ose.trace.to.webserver=true Then restart the web server. You should see log files at /usr/WebSphere/AppServer/logs/jvm_stderr.log /usr/WebSphere/AppServer/logs/jvm_stdout.log /usr/WebSphere/AppServer/logs/servlet/error_log and /usr/WebSphere/AppServer/logs/servlet/event_log ============================================================================================ Here are the different Net.Commerce processes, These 3 lines are just shorthand for the next 30 lines or so in this file. On the system, you'll see the directory names all spelled out. NC_bin_Dir=/usr/lpp/NetCommerce3/bin HTTP_Pub_Dir=/usr/lpp/internet/server_root/pub log_Dir=/arc/NetCommerce3/instance/patents/logs Userid PID PPID Program inst1 59476 1 $NC_bin_Dir/srvrctrl -i $HTTP_Pub_Dir (The daddy) inst1 41270 59476 $NC_bin_Dir/server -i $HTTP_Pub_Dir/ncommerce.conf -s ncpatents_1 inst1 51146 59476 $NC_bin_Dir/server -i $HTTP_Pub_Dir/ncommerce.conf -s ncpatents_2 inst1 49256 59476 $NC_bin_Dir/server -i $HTTP_Pub_Dir/ncommerce.conf -s ncpatents_3 inst1 52398 59476 $NC_bin_Dir/server -i $HTTP_Pub_Dir/ncommerce.conf -s ncpatents_4 inst1 56248 59476 $NC_bin_Dir/server -i $HTTP_Pub_Dir/ncommerce.conf -s ncpatents_5 inst1 34930 59476 $NC_bin_Dir/server -i $HTTP_Pub_Dir/ncommerce.conf -s ncpatents_6 inst1 67218 59476 $NC_bin_Dir/back_server -i $HTTP_Pub_Dir/ncei_servers.conf -s ncei_servers_1 The server control (srvrctrl) process's control file is $HTTP_Pub_Dir/srvrctrl.conf, and logs stuff to $log_Dir/controlyyyymmddhhmmss_.log (e.g. $log_Dir/control19991026033405_59476.log) The config file also has this line in it CONTROL_POOL_CONFIG $HTTP_Pub_Dir/ncommerce,$HTTP_Pub_Dir/ncei_servers which says to look at the $HTTP_Pub_Dir/ncommerce.conf and $HTTP_Pub_Dir/ncei_servers.conf files. The $HTTP_Pub_Dir/ncommerce.conf file has EXEC $NC_bin_Dir/server and PROCESSES 6 which says to run 6 of those server processes. It also has MS_LOGPATH $log_Dir which writes bunches of $log_Dir/ncommerceyyyymmddhhmmss_.log files (e.g. $log_Dir/ncommerce19991021033407_43672.log) There's other interesting stuff in that ncommerce.conf, too. The $HTTP_Pub_Dir/ncei_servers.conf file has EXEC $NC_bin_Dir/back_server and PROCESSES 1 which says to run 1 of these back_server processes. This is the interface to Kin's MQ Series stuff on the Image Servers. It logs to $log_Dir/ncei_serversyyyymmddhhmmss_.log (e.g. $log_Dir/ncei_servers19991026033408_67218.log) You've also got the web server processes, root 46582 5956 /usr/sbin/httpd nobody 44662 46582 /usr/sbin/httpd nobody 55622 44662 java com/ibm/servlet/engine/outofproc/OutOfProcEngine -nativelogfile /usr/WebSphere/AppServer/logs/oop_native.log -nativeloglevel 15 -linktype local -port 8081 -queuename ibmappserve -stublib /usr/WebSphere/AppServer/plugins/aix/libosestub.so -serverlib /usr/WebSphere/AppServer/plugins/aix/libasouts.so This last java process is some piece of the WebSphere Applet Server. I don't quite understand it, but Jim says there are 2 ways to run Websphere, inside the web server process, or outside. We run WebSphere outside of the httpd so if WebSphere crashes, it doesn't take down the web server. This java process is the one that does this. This java applet also appears to be the one that is listening on port 9527 (this was on port 9090 on the old version of websphere), which if you connect to, is the WebSphere Applet Server Administration proccess. It acts like a web browser and asks you to authenticate to, by default, admin:admin, but I changed the password on 10-28-1999. If you ever need to reset its admin id password, its password file is at /usr/WebSphere/AppServer/realms/data/adminRealm/keyfile. For this discussion, appreciate the distinction between a servlet, which runs on the web server machine, and an applet, which is passed to the client machine by the web server and run on the client's machine. To get a sense of how the Applet Server works or what it does, there's a servlet statistics page you can see from the port 9527 Applet Server Admin page, or you can look at the /arc/httpds/logs/httpd-log.Oct281999 file. Here are the counts for 10-28-99, determined by looking at the httpd-log file. 86 IPNModifyOrder 62 IPNErrorMissingAttribute 51 IPNManageOrders 27 IPNManageIPNfB 12 IPNLoginAdmin 6 IPNShowCCReject 6 IPNShowCCBilling 5 IPNVoidOrder 4 IPNAdminServlet 2 IPNManageUsers 1 IPNCreditOrderItems --- 262 Servlet Calls Not shown in the log file, but is counted in the Applet Server Admin page, are the calls to the "invoker", which is the servlet that calls all the other servlets, thus is called each time an servlet is called. As of 10-28-99 at least, the invoker is the only servlet that is automatically loaded at startup time. See the servlets.startup=invoker line in the servlets.properties file (see below). These servlets are only used for the AdminServer, which is what David uses all the time for Net.Commerce Admin-y things. They're not involved at all when a user orders something. Well, that's not quite true. Jim says the IPNErrorMissingAttribute servlet is run when a user orders something that isn't available. The Applet Server's main config file is at (I think) /usr/WebSphere/AppServer/properties/bootstrap.properties which doesn't appear to have anything too interesting in it, but there's also /usr/WebSphere/AppServer/properties/server/servlet/servletservice/servlets.properties which has some good stuff at least. For example, the servlets.classpath=/home/ipnuser/java line is what points the applet server to the /home/ipnuser/java directory, where it can find the IPNAdmin.jar (jar = Java Archive), which is kind of a zipped-up collection of servlets. Jim uses IBM's VisualAge for Java on a Windows machine to create this jar file and today at least, Jim keeps this file in sync on 79 & 206. This /home/ipnuser/java/IPNAdmin.jar file is where all the IPN* servlets listed above, live. To quickly test an applet server, try http://ar0079e0/servlet/snoop for example. It's educational to see how this URL works. The /usr/WebSphere/AppServer/properties/server/servlet/servletservice/servlets.properties file has this line in it servlet.snoop.code=SnoopServlet which directs the Applet Server to the SnoopServlet.class in the /usr/WebSphere/AppServer/servlets/ directory (the SnoopServlet.java source code is in that directory, too). There's also log files, event_log & error_log in the /usr/WebSphere/AppServer/logs/servlet/servletservice directory. There's also a collection of applets (not servlets) in the /usr/lpp/NetCommerce3/html/en_US/IPN/java/com/ibm/ipnfb/applets directory which are used for some of the functions available from https://www2.patents.ibm.com/servlet/com.ibm.ipnfb.servlets.IPNAdminServlet which is the Net.Commerce IPN Admin page mentioned above. ============================================================================================ To get to their online documentation using your own server, try - "The Documentation Center" = http://>/IBMWebAS/doc/index.html There's a "Getting Started" link there that, according to the readme one sees after WebSphere installs (that is, the /usr/WebSphere/AppServer/web/doc/readme.txt file), is supposed to be at http://>/web/doc/as2wksta.html but that's wrong. It's really at http://>/IBMWebAS/doc/as2wkadv.html And besides, you need this line in your /etc/httpd.conf file Pass /IBMWebAS/* /usr/WebSphere/AppServer/web/* to get that URL to work at all. I had to add it to as0206's /etc/httpd.conf file. Maybe it wasn't there 'cause Net.Commerce was installed, too??? The IBM web site is at http://www.software.ibm.com/webservers/appserv/library.html has the printable PDF version.