On several days in the Spring of 2005 (April19, May24, June03, June06), Terry and Lars got together on IRC to work through setting up Eclipse projects for the ERA and ERAWeb projects.
Locating the appropriate jar files
The code as delivered did not contain all the JAR files necessary to build the project. There were two problems: The Eclipse projects were set up to use a central repository for common JAR files. This common directory was not part of the distribution. A temporary solution was to collect all the appropriate jars into the ERAWeb/er/WEB-INF/lib directory.
It would be wise to settle on a fixed location in our environment for all to use.
A tarball of the missing jars can be found attached to the bottom of this page.
CVS
The changes made by Terry and Lars have been checked into the local OSU CVS repository. The first working version has been tagged 'osu_working_001'. I anticipate further changes before we declare it completely working...
April 19 Meeting - transcript
(15:53) lohnk: I've imported the two projects in Eclipse (I'll leave IntelliJ for another time) and I have some classpath questions
(15:53) tdurkin: ok. what's up?
(15:55) lohnk: I'm attempting to locate some jars, some I can find other are elusive. How dependent on exact versions is the code. For example you've got what appears to be a Beta version of the commons-lang jar. I can find the release version.
(15:55) tdurkin: did I not bundle the jars in the zip file? let me check on that...
(15:57) lohnk: the class path has them in a relative directory beginning with UIS_java_lib - I do not have that directory
(15:57) tdurkin: ahhh - yeah, sorry
(15:57) tdurkin: the JARs are actually all in the WEB-INF/lib.
(15:58) tdurkin: can you update the buildpath to point to those?
(15:58) lohnk: probably - as soon as I learn how - just a minute
(15:59) tdurkin: it's easy - you can to go into Project Properties (either by right clicking on the project or from the Project menu) and select build path. It should be fairly easy. alternatively, you can change the .classpath file.
(16:01) lohnk: I am working first with the project for the ERA tree. The ERA tree does not have a WEB-INF directory, ERAWeb does.
(16:01) tdurkin: d'oh. my bad. ummm....
(16:04) tdurkin: that's in there for a couple of reasons - since we have the two projects, we didn't want to include the JARs in two places. Plus, there's a central CVS project full of just JARs and stuff that we use here. That's where that points to. If you wanted, you could set up an environment variable called that through eclipse (also easy) and I could tell you how to do that.
(16:05) lohnk: hmm, so I should also set up a centralized jar location for these files?
(16:06) tdurkin: you can do that if you want, or you can just point into the ERAWeb project for them. whatever seems prudent. They are all the same versions required, and all the required ones for ERA are in ERAWeb
(16:10) lohnk: the list of jars available in ERAWeb/.../WEB-INF is not complete - there are a few missing
(16:10) lohnk: like mail.jar, ojbc14.jar, jbossall-client.jar
(16:11) tdurkin: those would normally be read from the appserver lib - that's why they're missing. I can zip and send those three.
(16:11) lohnk: ok
(16:11) tdurkin: actually, I'll just do DCC if you don't mind (they're small - should be ok)
(16:12) lohnk: okay, I hope my client will comply...
(16:12) tdurkin: if not I can do the slashtmp thing again.
(16:15) tdurkin: incoming
(16:16) lohnk: hmm, I accepted, but I can't see where it actually put the file - did it show as successful from your end?
(16:16) tdurkin: nope. still says trying to establish a transfew.
(16:16) tdurkin: transfer.
(16:17) tdurkin: I'll cancel and put it on slashtmp
(16:17) lohnk: I just found a window hidden behind others waiting for me to hit OK
(16:17) tdurkin: d'oh! I already cancelled.
(16:17) tdurkin: (Link: https://www.slashtmp.iu.edu/public/download.php?FILE=tdurkin/148860xhn6S
)https://www.slashtmp.iu.edu/public/download.php?FILE=tdurkin/148860xhn6S
(16:18) lohnk: got it
'
(16:19) tdurkin: can you do me a favor? I'd like to have a list kept of any issues (no matter how minor) you run into while getting this thing going. It will only make it easier in the future... I'd like to learn from what I did incorrectly when delivering to you.
(16:19) lohnk: I will log them on our wiki
(16:19) tdurkin: awesome.
(16:20) *** lohnk has signed off IRC (Remote closed the connection).
(16:20) *** lohnk has joined #eradev.
(16:21) lohnk: that was annoying - my client crashed, I was counting on being able to review our conversation and now its gone
(16:23) lohnk: are you still there or are thing completely haywire now?
(16:23) tdurkin: still here.
(16:23) lohnk: ah, good
the transcription changes source at this point
(14:24:12) lohnk: the log on wiki will also contain things that are problems from my end based on my ignorance or misconceptions of how Java projects work...
(14:24:47) tdurkin: ok. I think that those will also be very valuable
(14:25:29) tdurkin: ok - I sent the transcript that you lost.
(14:25:52) tdurkin: one thing to note is that the slashtmp stuff expires after a month, so those won't always be valid URLs
(14:26:21) lohnk: what do you think: how should I set up these jars: central repository and edit the .classpath; central repository and make the change though Eclipse; use ERAWeb's WEB-INF directory for ERA and set up a redirection variable?
(14:27:08) tdurkin: I'd leave them all in WEB-INF/lib and set up a variable in Eclipse to point to them - but that's just me.
(14:27:32) lohnk: should these new jars that you've sent be put there also?
(14:28:00) tdurkin: yes. if they're not in the appserver lib (where ours are) then you'd want them in the project.
(14:28:27) tdurkin: oh, I should send you my build.properties file that I use for ANT building. are you ready for that or should I hold-off?
(14:28:46) lohnk: hold off for the moment.
(14:30:11) tdurkin: sounds good.
(14:30:17) lohnk: Bear with me, when you use the term "appserver lib" you are referring to a library of jars associated with TomCat? I see references to JBoss, which I didn't know was involved...
(14:30:40) tdurkin: JBoss shouldn't be necessary.
(14:31:03) tdurkin: There is a directory in Tomcat that contains JARs that can be shared across applications
(14:31:32) tdurkin: it's possible (and likely) that I didn't get rid of every single reference to JBoss, but our goal is to get you going on Tomcat.
(14:32:39) lohnk: I see that I have a TomCat plugin installed in Eclipse. Can I look at Tomcat's jar lib through Eclipse? Or where would I find it?
(14:33:28) tdurkin: should be in TOMCAT_HOME/common/lib
(14:34:22) lohnk: thank you, I feel like I'm asking primary school questions - my ignorance of Java conventions is embarrassing.
(14:34:42) tdurkin: no worries.
(14:35:38) tdurkin: I'm here to help out when/how I can.
(14:36:03) lohnk: okay, how do I get the ERA Eclipse project to point ERAWeb's jar library?
(14:37:18) tdurkin: probably the easist way would be to go to Project Properties via the Project menu
(14:37:38) tdurkin: select Java Build Path from the left pane
(14:37:42) lohnk: ok, I'm there
(14:38:17) tdurkin: choose the Libraries tab, remove all the existing ones, and then select Add External Jars
(14:38:46) tdurkin: you should be able to navigate to the ERAWeb/er/WEB-INF/lib and select all of the ones in there.
(14:38:59) tdurkin: that's what we'll do for now - not a great long term solution, but it will work.
(14:39:20) lohnk: clarification - remove the libraries that have UIS_java_lib as a prefix on the path
(14:39:37) tdurkin: yes
(14:42:36) lohnk: ok, I've gone that and after a bit of chewing, eclispe spits back 21 errors - most of which still complain about "Unbound classpath vairiable: 'UIS_java_lib...
(14:42:43) lohnk: a/gone/done/
(14:42:51) lohnk: s/a/s/
(14:43:09) tdurkin: hmmmm.....
(14:45:32) lohnk: Looking from the Java perspective, I can see all those jars that I just added (from avalon... to workflow...)
(14:46:18) lohnk: reopening the classpath file, I can see that it has changed to reflect the path that I set.
(14:46:19) tdurkin: check the project properties for ERAWeb - it could be that eclipse is looking for the JARs in the same place as ERA was
(14:48:48) lohnk: I've poked around a bit and gotten thoroughly confused as to what I am seeing...
(14:49:03) lohnk: we'll take this step by step...
(14:49:10) tdurkin: sounds like a good plan
(14:49:28) lohnk: from the Java perspective in eclipse/ package explorer window...
(14:50:03) lohnk: I have two selections, ERA and ERAWeb. I've highlighted ERAWeb, right clicked and chosen "properties"
(14:50:13) tdurkin: yes.
(14:52:00) lohnk: the "Libraries" tab is selected and I see a list of jars there. This is the same list that I added to the ERA project. They all have paths that make sense - the jars are in ERAWeb/er/WEB-INF/lib
(14:52:21) tdurkin: that sounds correct
(14:53:00) lohnk: whoa, I didn't scroll all the way - there is also a list of others with the UIS_java_lib prefix - these do not have the cute jar icon, these have a blue dot instead
(14:53:27) lohnk: should these be "removed"?
(14:54:32) tdurkin: yes, get rid of those.
(14:56:21) lohnk: when Eclipse gives these errors, it is not as if I invoked any sort of compliation. I assume it does something like that automatically?
(14:57:52) lohnk: I've removed the jars and got a new list of errors, but since these are listed under the ERAWeb project, I assume that the errors are associated with that project. If I now highlight ERA, the "Problems" window does not change - does this mean that both projects have exactly the same problems list?
(14:58:19) tdurkin: yes, it build automatically - that feature can be turned off . I dont' think that those errors are because of compilation problems, though. I think it'sjust getting confused because it's looking for JARs that don't exist/
(14:58:54) tdurkin: You can configure the problems pane to just show one project at a time - I don'trecall waht the default is, but it's probably everything.
(14:59:04) tdurkin: what types of errors are you currently seeing?
(14:59:14) lohnk: okay, I'm down to one problem then, javax.mail.Address cannot be resolved...
(14:59:53) tdurkin: that should be in the mail.jar that I sent as part of the zip file
(15:00:43) lohnk: okay, I haven't touched that yet
(15:00:59) tdurkin: yes, that should clear that problem.
(15:01:13) lohnk: nor do I see that jar in the tomcat library
(15:03:24) lohnk: cp ~/temp/027/*jar ~/project/erasrc/ERAWeb/er/WEB-INF/lib
(15:03:29) lohnk: ugh, wrong window
(15:03:36) tdurkin: ok - did you extract the JARs I sent in that zip anywhere yet? If not, go ahead and do that.
(15:03:43) tdurkin: I'm guessing you just did!
(15:04:03) tdurkin: you'll have to add them to both projects from the Project Properties window for each one.
(15:04:09) lohnk: yeah, and now copying them to the ERAWeb/er/WEB-INF/lib
(15:04:16) tdurkin: cool
(15:04:22) tdurkin: that should do it.
(15:06:11) lohnk: should I skip the JBoss associated library?
(15:07:48) tdurkin: that's required by the workflow library, so you won't need to do anything with it, but Eclipse may (or may not) complain if it's missing.
(15:08:36) lohnk: I tried without it - got a bunch of errors and then tried with it - didn't change the errors
(15:08:51) tdurkin: hmmm. what type of errors are you seeing now?
(15:08:53) lohnk: wanna hear about the new set of errors?
(15:09:01) tdurkin: yes
(15:09:43) lohnk: unbound classpath ... com.genuitec.eclipse.j2eedt.core.J2EE_CONTAINER...
(15:10:10) tdurkin: ok - those are because we use MyEclipse for our web development.
(15:10:34) tdurkin: it's an eclipse plugin that makes all sorts of Web stuff easier.
(15:11:00) tdurkin: lemme think on that one for a minute.
(15:11:51) lohnk: I've heard of it - well more than that, I played with last December on a one month free trial - that's when the consensus was to abandon Eclipse for IntelliJ
(15:12:33) lohnk: fortunately, I am not bound by that
(15:16:43) tdurkin: I just talked to Lora - MyEclipse is our "standard" tool for web development in Eclipse and has been chosen by Kuali (let me know if you haven't heard of that before) to be the standard tool for web development on there. So, I think the best thing would be to get you guys licenses for MyEclipse. I know that there is an IU 50 seat license, but I'm not sure how many open seats there are on that and I'm certainly not able to make the jud
(15:18:00) lohnk: I don't think that I'll have a problem convincing Jason to spring for a MyEclipse license...
(15:19:04) tdurkin: you may want to hold off for a short while. I think that this type of question should be raised sooner rather than later and I'm sure that we'll run into other questions of this type as we move along...
(15:20:00) lohnk: I am somewhat confused about the scope of MyEclipse, I thought it was an add-on to Eclipse that gave different editors and processes. The ERA code actually depends on MyEclipse?
(15:20:40) tdurkin: not the ERA code specifically, but it sounds like there are project settings that are expecting it. The code will definately compile/run w/o it.
(15:21:56) lohnk: can you give me an example of what sort of project setting would be dependent on it? Something perhaps in testing?
(15:22:45) tdurkin: it's all internal to eclipse. There are some libraries and stuff that are set up based on things that come installed w/ MyEclipse.
(15:23:20) lohnk: ok, I leave it there. I think this would be a good time for me to retire to document what we've done on the wiki.
(15:23:38) tdurkin: sounds like a good plan. I hope it was productive for you.
(15:24:04) lohnk: it's also our first sunny warm afternoon after five weeks of constant rain - I should go outside
(15:24:16) lohnk: thank you very much for your time, this has been very educational for me.
(15:24:33) tdurkin: no problem at all. I'm just sorry that I hadn't anticipated some of these issues earlier.
(15:24:44) lohnk: we'll know for the future
(15:25:12) tdurkin: I'm going to be helping out another team most of the next few days, so I'm not sure what my availability will be, but I'll try to get on here for at least short time during those days.
(15:25:39) lohnk: I always have backup projects if I get stuck on something
(15:25:48) lohnk: later...
(15:25:51) tdurkin: cool - later
May 24 IRC Meeting
(14:08:53) lohnk: seems we've had that problem before...
(14:09:15) tdurkin: weird. let's not try that again 
(14:09:52) lohnk: okay, I've got the file it is ~/build.properties
(14:10:19) lohnk: when you say "home directory" do you mean literally the home directory or the root of the project?
(14:10:32) tdurkin: your users home directory.
(14:10:38) lohnk: it's there
(14:10:53) tdurkin: I think the only properties that you'll need are the appserver ones.
(14:11:46) lohnk: well, it looks as if I'll need to figure out where my appserver lives
(14:11:52) lohnk: stand by
(14:12:09) tdurkin: np
(14:14:25) lohnk: ~/localtools/jakarta-tomcat-5.0.30 seems to be the right thing
(14:14:33) tdurkin: cool
(14:14:35) lohnk: onward
(14:14:57) tdurkin: ok - once the build.properties is updates, we'll try to compile again.
(14:16:25) lohnk: seems that it wants the app server path to be under the ERAWeb directory: BUILD FAILED: /glacier/home/lohnk/project/erasrc/ERAWeb/build.xml:86: /glacier/home/lohnk/project/erasrc/ERAWeb/~/localtools/jakarta-tomcat-5.0.30/common/lib not found.
(14:16:42) tdurkin: hmmm
(14:17:38) tdurkin: it shouldn't require that.
(14:18:13) lohnk: it just didn't like the ~ format - an absolute literal path resolved the problem
(14:18:43) tdurkin: cool
(14:18:48) lohnk: now we've got all sorts of fun new problems!
(14:18:54) tdurkin: yes!
(14:19:32) lohnk: first of perhaps a hundred lines of complaints: [javac] /glacier/home/lohnk/project/erasrc/ERA/src/edu/iu/uis/fps/er/logic/routing/Email.java:54: package javax.mail does not exist
(14:19:47) tdurkin: ok
(14:21:28) tdurkin: do you have mail.jar and activation.jar in the WEB-INF/lib?
(14:22:12) lohnk: nope
(14:22:26) lohnk: cd jars
(14:22:26) lohnk: ls
(14:22:31) lohnk: wrong window
(14:22:35) tdurkin: ok. np
(14:23:26) lohnk: I have those two jar files in the unpacked directory that you sent me last time. Should I copy them to WEB-INF/lib?
(14:23:47) tdurkin: either there or into the tomcat lib directory.
(14:24:10) lohnk: is either option more "correct" than the other?
(14:24:45) tdurkin: not for now - if we were running this on a large server w/ multiple apps, it would be better to have one instance of those, but for now we're fine.
(14:25:08) lohnk: I am putting them in the WEB-INF directory
(14:25:13) tdurkin: ok
(14:27:45) lohnk: files copies - compile restarted: BUILD SUCCESSFUL
(14:27:45) lohnk: Total time: 2 seconds
(14:28:04) tdurkin: shouldn't be that quick
(14:28:36) lohnk: I'll see they'll get me a slower CPU...
(14:28:43) tdurkin: lol
(14:30:33) tdurkin: in WEB-INF/classes, do you have packages for edu/iu/uis/fps/er/data and edu..../er/logic?
(14:31:18) lohnk: I've got it all
(14:31:47) tdurkin: ok, then it was ok. well, if in the future you need to compile everything, that's how you'll do it 
(14:32:02) lohnk: ok
(14:32:28) tdurkin: sending another file now.
(14:32:56) lohnk: It's going to take me a while to get used to the concept of setting everything up twice - once for the environment to look for errors and once for the actual build of the project
(14:33:28) tdurkin: it's not that bad once it's all up and running.
(14:34:01) lohnk: I just don't have the Java mind set yet
(14:34:34) tdurkin: 
(14:34:35) lohnk: emailed the file yet?
(14:34:56) tdurkin: no, I'm checking it to make sure there's nothing screwy w/ it (other than more files you'll need)
(14:36:42) tdurkin: I'm trying to package up all the rest of the files you may need...
(14:37:12) lohnk: I will patiently await your efforts
(14:37:15) tdurkin: thx
(14:37:16) tdurkin: 
(14:41:21) tdurkin: sent
(14:43:07) lohnk: where does er-dev.xml go?
(14:43:48) tdurkin: TOMCAT_HOME/conf/Catalina/localhost/
(14:45:55) lohnk: got that one. IU has protected me from the other file that you sent: "Because a virus or malicious scripts can be easily distributed in attachments, many are being removed before delivery to protect our users. Please reference the following IU KB document for a list of blocked attachments"
(14:46:12) lohnk: "If you believe this attachment was legitimate please have the sender resend the attachment with a file extension that is not blocked."
(14:46:34) tdurkin: ok. I'll resend w/ an extension of .txt - you'll have to rename it to .zip
(14:49:09) tdurkin: get it?
(14:49:42) lohnk: got it and unzipped it
(14:49:47) lohnk: where do they all go?
(14:50:00) tdurkin: cool. into /opt
No such command.
(14:51:42) lohnk: in /opt ? as in just off the root and needing to be super user to write into a protected directory?
(14:52:48) tdurkin: that's how they have us set it up here 
(14:52:59) tdurkin: we can probably work around it somehow if you don't want to do it that way.
(14:53:32) lohnk: uh oh
(14:53:43) lohnk: so what are these files?
(14:54:04) tdurkin: Mainly configuration stuff.
(14:54:28) tdurkin: log4j and database config. I removed several of them that are IU specific
(14:55:04) lohnk: do you have these on a windows or linux machine?
(14:55:08) tdurkin: windows
(14:55:46) tdurkin: they actually do go into the linux tst/prd machines, too - but there's an ANT script that handles it. we (developers) don't have access to the directories
(14:56:22) lohnk: yeah, 'opt' is a directory for installation of third party software under Linux - I'm not sure that is the proper place for these files - hang on a minute while I talk to a sys admin
(14:56:23) tdurkin: but most of our developers develop on Windows and we keep them in c:\opt\
(14:56:31) tdurkin: ok
(15:00:42) lohnk: inconclusive - we're going to have to try a local directory for these files right now
(15:00:51) tdurkin: ok
(15:00:59) lohnk: cd ..
(15:01:02) lohnk: uh
(15:01:06) tdurkin: we'll have to modify a few things, but I don't think it'll be a problem
(15:02:01) lohnk: okay, I've got 4 directories from the zip: er, j2ee, opt and sa_forms
(15:02:38) lohnk: I'm choosing a directory ~/localtools/opt
(15:02:47) tdurkin: ok.
(15:02:48) lohnk: should all those directories go there?
(15:03:12) tdurkin: yes - it should create three directory structures - j2ee, logs, and sa_forms
(15:04:13) lohnk: 3 ? the zip unzipped into 4: er, j2ee, opt and sa_forms
(15:04:23) tdurkin: what's in er?
(15:04:40) lohnk: ha, empty
(15:04:49) lohnk: we'll ignore it
(15:04:57) tdurkin: funny - you should have:
(15:06:09) tdurkin: "/opt/j2ee/dev/edu/iu/uis/settings/er/"
(15:06:23) tdurkin: "/opt/logs/dev/er/"
(15:06:50) tdurkin: "/opt/sa_forms/java/dev/edu/iu/uis/security/er/"
(15:07:14) tdurkin: (sorry for the red - something weird happened)
(15:08:22) lohnk: yeah that stuff is there - along with some other baggage apparently
(15:08:37) lohnk: cd ..
(15:08:41) lohnk: ugh
(15:08:44) tdurkin: ok. that's really weird. how much stuff did it create?
(15:11:02) lohnk: there is the opt tree that you described, then there is another tree called 'j2ee' with a deep tree under it and "sa_forms" with its own deep tree
(15:11:44) tdurkin: ok. that's ok. within j2ee and sa_forms/java there should be directories called "dev" are they there?
(15:11:51) lohnk: yep
(15:12:29) tdurkin: cool. then that's what we needed. now, we'll need to edit the er-dev.xml that went into TOMCAT_HOME/conf/Catalina/localhost/
(15:12:36) lohnk: they seem to be repeats of the stuff already under opt
(15:12:41) tdurkin: weird.
(15:13:03) tdurkin: are there files directly within opt?
(15:13:40) lohnk: only directories
(15:13:52) tdurkin: ok. should be ok.
(15:14:02) lohnk: editing er-dev.xml ....
No such command.
(15:14:24) tdurkin: you'll need to change the third line to point to the other directory
(15:14:38) tdurkin: (the one you made rather than /opt)
(15:15:03) lohnk: any more than just line 3?
(15:15:05) tdurkin: and edit line 6 to point to your version of ERAWeb
(15:15:29) lohnk: ah yes, there is a "c:" in there
(15:15:40) tdurkin: yep
(15:16:50) lohnk: okay, I think I've got it
(15:16:56) tdurkin: cool.
(15:19:10) lohnk: next step?
(15:19:22) tdurkin: now we run into the technical issues... problems regarding authoriztion into your version of ERA...
(15:19:44) tdurkin: we'll probably want to configure some sort of basic authentication via tomcat.
(15:20:20) tdurkin: I haven't done that in a long time and it will be different than how it is here, but what you have there has references to our versio of CAS and it just won't work from there.
(15:21:25) lohnk: okay, how do we proceed? We've scheduled only two hours for this for you today - while I still have significant work day ahead of me, do you?
(15:21:43) lohnk: we can continue today, at your option
(15:25:02) tdurkin: I think we'll need to configure HTTP Basic Authentication and cut out the CAS stuff - just for now.
(15:25:07) lohnk: ok
(15:25:32) tdurkin: but, that will take a while to accomplish, and it's quittin' time here. are you available tomorrow?
(15:25:49) lohnk: yes, anytime
(15:27:21) tdurkin: I'm supposed to be on loan tomorrow to another team, but I'll come back here for the last part of the day. how's 3:30-5:30 (EST), 1:30-3:30 PDT?
(15:27:35) lohnk: yes, that wil be fine
(15:27:43) tdurkin: ok. It's on my calendar
(15:28:23) lohnk: okay, will continue tomorrow. Thank you for your time today...
(15:28:42) tdurkin: not a problem. have a good evening!
(15:28:49) lohnk: bye
May 24 Meeting
(13:31:08) tdurkin: hey guys
(13:31:29) lohnk: howdy
(13:31:34) tdurkin: ready to go?
(13:31:44) lohnk: give me a couple minutes...
(13:31:52) tdurkin: np - lmk when ready
(13:34:35) lohnk: ok, I'm ready, I was in the midst of running some more database analysis stuff and I wanted to see the result...
(13:34:46) tdurkin: cool
(13:35:16) lohnk: so today's task has to do with authentication
(13:35:48) tdurkin: yes - but that hopefully won't take long. We'll just swap out the CAS authentication for HTTP Basic Auth - just to get things going for you. Sound good?
(13:35:54) lohnk: fine
(13:36:14) tdurkin: Also, speaking of databases, we'll need the URL to the oracle instance that Jason set up from the ER database extracts.
(13:36:37) tdurkin: for example, the URL to the database we use for development is: jdbc:oracle:thin:@es01.uits.indiana.edu:1521:GEN1REG
(13:37:08) lohnk: is "1521" a port number?
(13:37:18) tdurkin: yes - it's the default port for oracle
(13:37:31) lohnk: and "GEN1REG" is what?
(13:37:41) tdurkin: the database name.
(13:38:06) tdurkin: ER and FIS_ER should be schemas within the database that Jason set up
(13:40:02) lohnk: I am somewhat confused at "database name". RDBMS like Sybase, MS SQL Server, PostgreSQL, INGRES, etc have the concept of databases within a server. I though that Oracle bucked the trend and didn't have a parallel concept.
(13:40:34) lohnk: I seem my table spaces ER and FIS_ER which you're calling schemas?
(13:40:54) tdurkin: yes, a schema can have multiple table spaces
(13:42:50) lohnk: sorry for the delay, I was looking some stuff up
(13:43:00) tdurkin: np
(13:43:54) lohnk: I see we have both a schema and a tablespace called "ER" -
(13:44:21) tdurkin: there's a tablespace belonging to the ER schema called ER01
(13:44:27) lohnk: they're not referring to the same thing - one is within the other, right
(13:44:29) lohnk: ?
(13:44:45) tdurkin: yes - the er01 tablespace is within the the er schema
(13:45:04) lohnk: hmm, I do not see a tablespace called ER01
(13:45:12) lohnk: only one called ER
(13:45:23) tdurkin: ok, I'm not too worried about that just yet.
(13:45:42) tdurkin: what's the connection string that you are using to run your database analysis?
(13:46:13) lohnk: er/password@ora1.osuosl.org
(13:46:50) lohnk: there is no database "name"
(13:47:13) tdurkin: ora1.osuosl.org is the host?
(13:47:19) lohnk: yep
(13:47:36) tdurkin: ok.
(13:48:01) tdurkin: I'm no DBA - I'm just going off of how everything is set up here - it may very well be that we don't need to have a name for it.
(13:48:44) tdurkin: ok. moving on to the authentication.
(13:49:08) tdurkin: open web.xml within the ERAWeb/er/WEB-INF folder in eclipse.
(13:49:14) lohnk: sure: I guess my database URI would be: jdbc:oracle:thin:@ora1.osuosl.org
(13:49:29) tdurkin: yeah. that's what we'll try when it's time.
(13:49:45) lohnk: opened
(13:50:56) tdurkin: ok - comment out the entire contents of the <filter> and <filter-mapping> elements - starting at probably line 32 and ending at line 51
(13:53:01) lohnk: it appears to have opened in MyEclipse's odd XML editing window - I don't have lines just expandable entities. How do I open this in a "normal" editor?
(13:53:34) tdurkin: is there a tab for "Source" at the bottom of the editor?
(13:53:43) lohnk: ah, didn't see that
(13:53:49) tdurkin: cool
(13:54:20) lohnk: now, I've got to remember how get line numbers
(13:54:25) lohnk: hint hint
(13:55:00) tdurkin: it's in a different place for all of the editors - XML should be along the following:
(13:55:25) tdurkin: window -> preferences -> My Eclipse ->Editors -> Common Editor Preferences
(13:55:38) tdurkin: and there should be a check box for "show line numbers"
(13:55:54) lohnk: got it
(13:56:06) tdurkin: sweet
(13:57:37) lohnk: okay, a "filter" and a "filter-mapping" sections have been commented out
(13:58:30) tdurkin: cool. there should be a large section commented out near the bottom - starting w/ <security-constraint> and ending w/ <security-role>
(13:58:36) tdurkin: un-comment those.
(13:59:02) lohnk: done
(13:59:37) tdurkin: un-comment the <resource-ref> section and copy/paste it above <security-constraint>
(14:00:30) lohnk: done
(14:00:54) tdurkin: cool.
(14:01:04) tdurkin: next, we need to edit the file tomcat-users.xml
(14:01:23) tdurkin: it can be found along the following path: TOMCAT_HOME/conf
(14:03:50) lohnk: okay, I've got it open in an editor
(14:04:24) tdurkin: add the following two lines in the respective sections:
(14:04:26) tdurkin: <role rolename="everyone"/>
(14:04:26) tdurkin: <user username="tdurkin" password="tdurkin" roles="everyone"/>
(14:05:09) lohnk: done
(14:06:06) tdurkin: ok - a couple of more file edits, and I think we'll be close to trying to start up Tomcat and connecting!
(14:06:32) lohnk: carry on
(14:06:34) tdurkin: first, since we're there, edit the file TOMCAT_HOME/conf/Catalina/localhost/er-dev.xml
(14:07:00) lohnk: opened
(14:07:42) tdurkin: line 3 - change the path to the ERDB ENTITY to where we put it yesterday.
(14:08:01) tdurkin: or did we do that yesterday?
(14:08:22) lohnk: I've got a valid local path there, so it looks like we've done that
(14:08:36) tdurkin: cool. I couldn't remember.
(14:09:02) tdurkin: we will have to edit /opt/sa_forms/java/dev/edu/iu/uis/security/er/ERDB.xml
(14:09:22) tdurkin: (where the ERDB Entity points)
(14:09:36) lohnk: opened
(14:10:00) tdurkin: ok - we'll change the URL and the password to the ones that you have set up there.
(14:11:47) lohnk: uuuu::q!
(14:12:01) lohnk: yeah, you know what that was
(14:12:14) tdurkin: I recognize the q!
(14:13:09) lohnk: I need a window manager that follows my gaze instead of the mouse
(14:13:28) tdurkin: if you invented that, you'd be a rich man...
(14:13:40) lohnk: on the Oracle URI, should I just drop the port number and databse name?
(14:13:57) lohnk: might as well try it
(14:14:00) tdurkin: You'll probably still need the port number - but that's just a guess
(14:14:20) lohnk: okay, we're done with that file
(14:15:05) tdurkin: cool. I think we have to make a couple of other small changes to web.xml - sorry for jumping around all over the place. There isn't a method to this madness yet...
(14:16:34) lohnk: proceed with your madness
(14:17:01) lohnk: I've already picked out my white jacket with the really long arms
(14:18:52) tdurkin: at the top, there are two <context-param> elements with <param-value>s of PathToSettings and PathToSecurity. the <param-value> should be updated to where you unzipped the opt.zip file yewsterday
(14:19:26) tdurkin: There are days when the white jacket w/ really long arms sounds like the preferable way to go 
(14:21:45) lohnk: done
(14:22:35) tdurkin: cool - now, we'll tell MyEclipse where to find Tomcat. Window -> Preferences -> MyEclipse -> Application Servers -> Tomcat 5
(14:22:56) tdurkin: make sure that it's enabled and set the Tomcat home directory.
(14:23:15) lohnk: before we continue: I see that there is a LOG4J_FILENAME entry in web.xml - it is not a pathname that I have - does it need setting
(14:24:00) tdurkin: it should exist along PathToSettings + LOG4J_FILENAME
(14:24:15) lohnk: I won't worry about it then
(14:24:42) tdurkin: we can verify that it's there in a little bit.
(14:24:48) lohnk: I've drilled down to Tomcat 5
(14:25:14) tdurkin: ok - it's enabled and the three paths are set?
(14:25:19) lohnk: nope
(14:25:27) tdurkin: ok - go ahead and do that
(14:25:40) tdurkin: setting the first path should default the other two
(14:26:25) lohnk: ok
(14:26:40) tdurkin: go ahead and Save those settings
(14:26:50) lohnk: done
(14:27:43) tdurkin: There should be a button w/ an icon of a face profile and a running guy and a down arrow next to it.
(14:28:05) tdurkin: (that was a great description, by the way)
(14:28:38) lohnk: yeah, it's there
(14:28:42) tdurkin: anyway, from the down arrow, you should be able to start/stop Tomcat
(14:29:15) tdurkin: let's try to fire it up.
(14:30:03) lohnk: tons of info messages...
(14:30:29) lohnk: SEVERE: Error starting static Resources
(14:30:29) lohnk: java.lang.IllegalArgumentException: Document base /glacier/home/lohnk/projects/erasrc/ERAWeb/er does not exist or is not a readable directory
(14:31:14) lohnk: there's a typo in that line - should be "project" not "projects"
(14:31:36) lohnk: where is that line from?
(14:32:07) tdurkin: that's in the er-dev.xml from TOMCAT_HOME/conf/Cataling/localhost
(14:34:19) lohnk: tomcat: stopped; er-dev.xml: edited; tomcat: restarted
(14:34:38) tdurkin: cool - how far'd it get?
(14:34:49) lohnk: log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester).
(14:34:49) lohnk: log4j:WARN Please initialize the log4j system properly.
(14:34:49) lohnk: log4j:ERROR setFile(null,true) call failed.
(14:34:49) lohnk: java.io.FileNotFoundException: /opt/logs/dev/er/rolling.log (No such file or directory)
(14:34:49) lohnk: at java.io.FileOutputStream.openAppend(Native Method)
(14:35:50) tdurkin: ok - it's finding the log4j.properties file (answers our earlier question). let's edit that bad boy and point it to the right place.
(14:36:14) tdurkin: it can be found along PathToSettings + LOG4J_PROPERTIES
(14:36:25) lohnk: just a moment - on the phone
(14:36:31) tdurkin: k - bio break on my end.
(14:41:07) tdurkin: back
(14:43:05) lohnk: okay, I'm back too
(14:43:31) tdurkin: we'll need to change the log4j.properties to point to the correct path
(14:44:04) lohnk: yeah, trying to figure out what you meant by "PathToSettings + LOG4J_PROPERTIES"
(14:44:28) lohnk: I'm lookingin web.xml
(14:44:39) tdurkin: you're in the right place, then
(14:44:58) tdurkin: those are two <context-param>s
(14:45:38) lohnk: I see LOG4J_FILENAME with /edu/iu/uis/settings/er/log4j.properties
(14:46:03) tdurkin: yes - PathToSettings is just above that.
(14:46:06) lohnk: it should to to where?
(14:46:16) lohnk: ignore that
(14:46:33) lohnk: unignore that
(14:47:11) tdurkin: lol - PathToSettings should point to the location where you unzipped opt.zip yesterday.
(14:47:27) lohnk: yes, it already does
(14:48:32) lohnk: hold it, not exactly, it points to /glacier/home/lohnk/localtools/opt/j2ee/dev, is that too deep?
(14:48:45) tdurkin: no - that's fine - navigate to there
(14:49:04) tdurkin: then there should be some deeper folders - edu/iu/uis/settings/er
(14:49:09) lohnk: I'm there
(14:49:12) tdurkin: and there should be a log4j.properties file
(14:49:36) lohnk: yes
(14:49:55) tdurkin: ok - open that in an editor
(14:50:12) lohnk: PrivoxyWindowOpen(14:50:32) tdurkin: find the following line:
(14:50:33) tdurkin: log4j.appender.RollerFile.File=/opt/logs/dev/er/rolling.log
No such command.
(14:50:55) lohnk: yep
(14:51:07) tdurkin: and edit it to point to /glacier/home/lohnk/localtools/opt/logs/dev/er/rolling.log
(14:51:30) tdurkin: save; close; stop/start Tomcat
(14:53:06) lohnk: looks like we're successful
(14:53:18) tdurkin: coooool
(14:54:13) tdurkin: is that your machine or a remote server
(14:54:14) tdurkin: ?
(14:54:27) lohnk: own machine
(14:54:44) tdurkin: cool - http://localhost:8080/er-dev/
(14:55:13) lohnk: login popup
(14:55:30) tdurkin: username/password - tdurkin/tdurkin
(14:56:28) lohnk: a very nicely formatted error saying: " ATTENTION: The system has a fatal error. Please make note of the steps leading up to the error and email the System Administrator with this information."
(14:56:40) tdurkin: sweet - is there a stack trace?
(14:56:50) tdurkin: should be in the Eclipse console
(14:57:21) lohnk: 2005-05-24 14:55:36,614 [http-8080-Processor25] ERROR edu.iu.uis.fps.er.DatabaseUtilities :: error in getJdbcHelper
(14:57:21) lohnk: javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
(14:58:45) tdurkin: ok - that's easy. <ctrl>+<shift>+T opens the "type explorer" in Eclipse.
(14:58:55) tdurkin: Type in DatabaseUtilities
(14:59:03) tdurkin: there should only be one hit.
(14:59:03) tdurkin: open it
(14:59:58) tdurkin: (window -> perferences ->java -> editor, check "show line numbers")
(15:00:26) lohnk: <ctrl>+<shift>+T does nothing
(15:01:04) tdurkin: ok - weird - are you in the Java Perspective?
(15:01:14) lohnk: ah, it does nothing in the resource perspective, but it works in the Java Perspective
(15:01:18) tdurkin: sweet
(15:01:35) tdurkin: line 84 of DatabaseUtilities.java - change "java:jdbc/" - to "java:comp/env/jdbc/"
(15:01:46) lohnk: yep. one hit. opened
(15:02:48) tdurkin: save; run the "compile" Ant task - Tomcat may/may not reload the app. If the console starts moving on its after a few seconds, then it's restarting the app. if it doesn't you'll have to stop/start Tomcat.
(15:06:27) lohnk: tomcat: stopped; DatabaseUtilities.java: edited; tomcat: restarted; web page reloaded...
(15:06:47) tdurkin: did you run the "compile" ant target?
(15:07:38) lohnk: why, of course I did (he said as he tried to make look like he actually did).
(15:08:32) tdurkin: lol - no problem - there are too many steps
(15:10:10) lohnk: 2005-05-24 15:09:34,616 [http-8080-Processor25] ERROR edu.iu.uis.fps.er.DatabaseUtilities :: error in getJdbcHelper
(15:10:10) lohnk: javax.naming.NameNotFoundException: Name dev is not bound in this Context
(15:10:10) lohnk: at org.apache.naming.NamingContext.lookup(NamingContext.java:768 )
(15:10:52) tdurkin: hmmm
(15:11:41) tdurkin: are there any exceptions when Tomcat starts?
(15:12:07) lohnk: nope
(15:13:20) tdurkin: ok - grasping at straws here - in TOMCAT_HOME/common/lib - do you have ojdbc14.jar?
(15:14:36) lohnk: you've got straws! there is not ojdbc14.jar in that directory
(15:15:31) lohnk: I got it other places, should I put a copy there?
(15:15:35) tdurkin: yes
(15:15:59) lohnk: done. restart tomcat?
(15:16:28) lohnk: did it anyway
(15:17:17) tdurkin: yeah
(15:17:21) lohnk: exactly the same problem – give the straws back
(15:17:26) tdurkin: d'oh!
(15:19:11) tdurkin: ok - just want to verify something else - er-dev.xml, line 7 & 8, both have name="jdbc/dev/er/ERDB"?
(15:20:29) lohnk: yes, that is correct
(15:21:07) tdurkin: ok - web.xml - is there a <resource-ref> element?
(15:21:39) lohnk: <resource-ref>
(15:21:39) lohnk: <description>ERA Oracle Datasource</description>
(15:21:39) lohnk: <res-ref-name>jdbc/dev/er/ERDB</res-ref-name>
(15:21:39) lohnk: <res-type>javax.sql.DataSource</res-type>
(15:21:39) lohnk: <res-auth>Container</res-auth>
(15:21:39) lohnk: </resource-ref>
(15:21:50) tdurkin: shoot
(15:22:00) lohnk: shot
(15:23:33) tdurkin: and that DatabaseUtilities file - the full line is:
(15:23:33) tdurkin: (DataSource)new InitialContext().lookup("java:comp/env/jdbc/"+ DatabaseUtilities.getEnvironment() +"/er/ERDB");
(15:23:33) tdurkin: ?
(15:24:55) lohnk: not quite - I'm missing a '/'
(15:25:36) tdurkin: ok - lets add it, save, compile, stop/start tomcat
(15:26:14) lohnk: new problem:
(15:26:25) lohnk: 2005-05-24 15:25:55,963 [http-8080-Processor25] ERROR edu.iu.uis.fps.er.web.utilities.ERAAuthorization :: Error getting setting up authorization bean
(15:26:25) lohnk: java.lang.NullPointerException
(15:26:25) lohnk: at edu.iu.uis.fps.er.web.utilities.ERAAuthorization.isUserAuthorized(ERAAuthorization.java:293)
(15:28:48) tdurkin: ok - line 240 - what's it say?
(15:29:09) tdurkin: sorry - in that class (you can click on the stack trace and it will take you to that line in the code)
(15:30:17) lohnk: currentUser = FilterCAS.getRemoteUser(request);
(15:30:33) tdurkin: ok - change to:
(15:30:33) tdurkin: currentUser = request.getRemoteUser();
(15:32:40) tdurkin: sorry - stop/start Tomcat
(15:32:43) lohnk: stopped; edited; started; reloaded
(15:33:00) tdurkin: did we get any farther or still have the same problem?
(15:33:02) lohnk: then an odd problem
(15:34:25) tdurkin: stacktrace?
(15:34:32) lohnk: the console does not report an exception - but Eclipse requested to revert to the debug perspective - it's now highlighting the line we just changed with a red X at the beginning of the line and "getRemoteUser" has a wavy red line under it
(15:35:24) tdurkin: hmmm - it should give you some context to the red wavy if you hover over it
(15:36:11) lohnk: whoops, I see a problem - I didn't remove the parameter, "request" when I changed FilterCAS to request
(15:36:44) tdurkin: that would to it 
(15:38:07) lohnk: now we return to my Oracle URI – 2005-05-24 15:37:23,971 [http-8080-Processor25] ERROR edu.iu.uis.fps.er.web.utilities.ERAAuthorization :: Error getting setting up authorization bean
(15:38:07) lohnk: com.is.jrf.DatabaseException: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Io exception: Invalid connection string format, a valid format is: "host:port:sid" ): SELECT ER_USER_V.PERSON_UNVL_ID, ER_USER_V.PERSON_USER_ID, ER_USER_V.PRSN_1ST_NM, ER_USER_V.PRSN_LST_NM, ER_USER_V.EMP_FSCL_CMP_CD, ER_USER_V.EMP_PRM_DEPT_CD, ER_USER_V.EMP_STAT_CD, ER_USER_V.EMP_TYPE_CD, ER_USER_V.PERSON_SSN_ID, ER_USER_V.PRSN_EMAIL, ER_USER_V.PRSN_CMP_ADDR, ER_USER_V.PRSN_LOC_PHN, ER_USER_V.PRSN_BASE_SLRY, ER_USER_V.PRSN_UNIV_ID, ER_USER_V.ACAD_APPT_TYP_CD, ER_USER_V.ER_PRJDR_ID FROM ER_USER_V WHERE ER_USER_V.PERSON_USER_ID = 'TDURKIN' AND ER_USER_V.EMP_STAT_CD != 'T':
(15:38:07) lohnk: Cannot create PoolableConnectionFactory (Io exception: Invalid connection string format, a valid format is: "host:port:sid" )
(15:38:07) lohnk: at com.is.jrf.AbstractDomain.executeSQLQuery(Unknown Source)
(15:38:31) lohnk: I need an "sid" what ever that is
(15:39:10) tdurkin: hmmm - I don't know what thay would be for your database...
(15:39:29) tdurkin: that's where I had GEN1REG on my connectoin string.
(15:39:54) lohnk: well, perhaps this is a good place to end the day, it's 20 to six your time... I'll research this and we can continue another time?
(15:40:39) tdurkin: sounds good - How about Thursday 3:30-5:30. does that work for you?
(15:40:55) tdurkin: (sorry 1:30-3:30 your time)
(15:41:17) lohnk: that works since the video conference is canceled... I'll see you then
(15:41:22) lohnk: rather type you then
(15:41:38) tdurkin: sounds good. I'll put it down.
June 3rd
13:30:33) tdurkin: hello
(13:30:36) lohnk: Howdy
(13:30:44) tdurkin: how's it goin' out there?
(13:31:19) lohnk: I a lecture at Portland STate University last night - I didn't get home til 1AM
(13:31:36) lohnk: I'm a little underslept
(13:31:48) tdurkin: that's late - I can't stay up that late these days...
(13:31:53) lohnk: How are things back East?
(13:32:08) tdurkin: winding down a busy week - looking forward to the weekend...
(13:32:32) lohnk: yeah, me, too – this is the weekend of the big OSL party at my farm
(13:32:47) tdurkin: cool - sounds like a good time.
(13:33:33) lohnk: I'm having difficulty getting Eclipse to start - "workspace already in use", yet there are no other instances of Eclipse running. Have any ideas?
(13:34:29) tdurkin: yeah - sometimes when Eclipse doesn't close "cleanly" it leaves some stuff behind. Look in your projects directory in the ".metadata" folder
(13:34:38) lohnk: I see it
(13:34:54) tdurkin: if there's a file called ".lock" delete it and try to launch Eclipse
(13:35:47) lohnk: much better, thanks
(13:35:52) tdurkin: np
(13:36:25) tdurkin: so - you got the project running? That's awesome - hopefulle we can just do some trouble shooting for now and see where that takes us 
(13:36:31) lohnk: okay, here's the situation, I've fixed the Oracle URL and I can get access to the system
(13:36:47) tdurkin: cool
(13:36:58) lohnk: stand by while I rerun this to see the current NullPointer exception
(13:37:17) tdurkin: ok
(13:38:05) lohnk: hmm, seems there was a left over Tomcat running, too -
(13:38:18) tdurkin: ahhh - that can cause issues.
(13:39:47) lohnk: okay, that's settled, but it won't give a login screen
(13:40:06) lohnk: java.lang.NullPointerException
(13:40:06) lohnk: at edu.iu.uis.fps.er.web.utilities.ERAAuthorization.isUserGroupMember(ERAAuthorization.java:819)
(13:40:06) lohnk: at edu.iu.uis.fps.er.web.utilities.ERAAuthorization.setupAuthorizationBean(ERAAuthorization.java:252)
(13:42:27) tdurkin: ok - that method is checking an ADS group which is used to determine whether someone is a developer - for now, just modify that method to always either return Boolean.TRUE or Boolean.FALSE
(13:46:04) lohnk: something odd going on here - recompiling is failing
(13:46:33) tdurkin: hmmm - what is failing?
(13:46:48) lohnk: it seems to have lost track of directories and jars files
(13:47:19) lohnk: BUILD FAILED: /glacier/home/lohnk/project/erasrc/ERAWeb/build.xml:86: /glacier/home/lohnk/project/erasrc/ERAWeb/er/WEB-INF/lib not found.
(13:47:48) tdurkin: is that directory there still?
(13:48:20) tdurkin: if not, uh oh... Eclipse sometimes does some weird cleanup things. I can see it getting rid of WEB-INF stuff...
(13:48:46) lohnk: nope, it is gone
(13:49:09) tdurkin: ok. probably don't have a backup of those jars, do you?
(13:49:19) lohnk: stand by
(13:49:25) tdurkin: ok
(13:53:37) lohnk: ok, the jars are restored
(13:54:04) tdurkin: sweet - you'll probably have to run the "Compile" ANT task to get the back-end stuff compiled into the project, as well.
(13:55:15) lohnk: okay, ant "compile" task successful, though it took only 1 second, which is suspious
(13:55:44) tdurkin: yeah - we'll see if the project will run now....hopefully it's all good....
(13:56:40) lohnk: ugh, tons of exceptions starting Tomcat -
(13:56:58) tdurkin: hmmm - what's one of them?
(13:57:01) lohnk: ERROR [main] (StandardManager.java:434) - IOException while loading persisted sessions: java.io.InvalidClassException: edu.iu.uis.fps.er.web.ERAUserPermission; local class incompatible: stream classdesc serialVersionUID = 8388343041970769239, local class serialVersionUID = -3945472601454934143
(13:57:01) lohnk: java.io.InvalidClassException: edu.iu.uis.fps.er.web.ERAUserPermission; local class incompatible: stream classdesc serialVersionUID = 8388343041970769239, local class serialVersionUID = -3945472601454934143
(13:57:01) lohnk: at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:463)
June 6
13:03:16) tdurkin: hey
(13:03:17) tdurkin: sorry I'm late
(13:03:28) lohnk: howdy
(13:03:46) tdurkin: how was the party at the farm?
(13:04:05) lohnk: it went very well - the weather cooperated perfectly
(13:04:20) lohnk: the storm didn't hit until the next day
(13:04:25) tdurkin: cool
(13:04:35) tdurkin: how's ERA treating you today?
(13:04:51) lohnk: thank you for the abbreviation dictionary
(13:04:58) lohnk: I've already put it to use
(13:06:06) lohnk: I have a couple eclispe questions...
(13:06:15) tdurkin: cool. It was educational for me to figure all of those out. Many of the fields - especially from tables in the FIS_ER schema - are not too relevent to us. The FIS_ER tables are copied in their entirety from our Financial System and used for reference data.
(13:06:26) tdurkin: ok - I'll do my best to answer the eclipse issues.
(13:07:05) lohnk: in my Java perspective, the hiearchy and problems panes are detached and free floating. How do I manage to reattach them?
(13:08:45) tdurkin: you should be able to click on the title part of the panes and drag them to where you want them. The icon changes when they'll reattach to another part of the screen.
(13:09:23) lohnk: no such luck - that's what I thought it should do, but the mouse icon never seems to change
(13:10:19) tdurkin: you may be able to fix it with "Window -> Reset Perspective", but that would also blow away any layout changes you've made to the perspective.
(13:10:45) lohnk: hooray, that did it
(13:10:49) tdurkin: sweet
(13:10:52) lohnk: thanks
(13:10:55) tdurkin: np
(13:11:01) lohnk: okay, where did we leave off last time?
(13:11:04) tdurkin: small victories....
(13:11:40) tdurkin: we fixed the JSP problem with the main budget page and re-routed the logs from the Tomcat log files to the console.
(13:11:56) lohnk: okay, I'm restarting Tomcat
(13:12:01) tdurkin: cool
(13:12:38) lohnk: I'm getting some exceptions - text follows:
(13:13:03) lohnk: StandardContext[/er-dev]Servlet /er-dev threw load() exception
(13:13:03) lohnk: javax.servlet.ServletException: Error instantiating servlet class edu.iu.uis.fps.er.web.global.GB_FileAttachmentsServlet
(13:13:03) lohnk: at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1010)
(13:13:03) lohnk: at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:876)
(13:13:54) tdurkin: Did Eclipse blow away your jars again? That might cause that.
(13:14:37) lohnk: jars seem intact
(13:15:03) tdurkin: ok. are there any other errors in the stack trace?
(13:15:34) lohnk: just after the exception is this:
(13:15:47) lohnk: ----- Root Cause -----
(13:15:47) lohnk: java.lang.ExceptionInInitializerError
(13:15:47) lohnk: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
(13:15:47) lohnk: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
(13:15:47) lohnk: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
(13:16:11) tdurkin: hmm
(13:16:25) lohnk: followed by about sixty lines of context and then 55 nullpointer exceptions
(13:16:36) tdurkin: sweet. that's pretty awesome.
(13:16:40) tdurkin: (j/k)
(13:17:04) tdurkin: what are the NPEs?
(13:17:59) lohnk: NPE: Never Poke Elephants
(13:18:25) tdurkin: or - Null Pointer Exceptions - although, poking elephants can only have disasterous results...
(13:18:31) lohnk: duh
(13:18:34) tdurkin: 
(13:18:48) lohnk: Caused by: java.lang.NullPointerException
(13:18:48) lohnk: at edu.iu.uis.fps.er.web.global.GB_FileAttachmentsServlet.<clinit>(GB_FileAttachmentsServlet.java:87)
(13:19:16) lohnk: then it just shows ellipsis and says "55 more"
(13:19:28) tdurkin: that's enough probably.
(13:19:41) tdurkin: Can you try running the "Compile" task in Ant?
(13:21:53) lohnk: the build of the "compile" target is doesn't actually build anything (I assume it is all up to date).
(13:22:13) tdurkin: ok. then that answers that question.
(13:24:43) tdurkin: can I do the VNC thing?
(13:24:56) lohnk: yeah, it'll take a few minutes to set up
(13:25:06) tdurkin: ok. lmk when it's ready.
(13:28:56) lohnk: okay, w/ vncviewer connect to glacier.osuosl.org:50
(13:29:49) tdurkin: hellp
(13:29:53) tdurkin: hello
(13:32:19) tdurkin: I can't copy out of your computer. weird.
(13:33:41) tdurkin: is there a file located at the following path on your computer?
(13:33:50) tdurkin: "/glacier/home/lohnk/localtools/opt/j2ee/dev/edu/iu/uis/settings/er/fileAttachments.properties"
(13:35:26) lohnk: ok - just a moment
(13:35:59) tdurkin: sorry - VNC keeps closing on me and opens full screen when it reconnects. I'm not meaning to take you mouse hostage.
(13:36:24) lohnk: I'm trying to get connected on irc from my laptop
(13:36:31) lohnk: no that file does not exist
(13:36:41) tdurkin: ok. I'll send it over.
(13:37:26) lohnk_mobile [~lohnk@128-193-137-2.public.oregonstate.edu] entered the room.
(13:37:44) lohnk_mobile: am I here, too?
(13:37:51) tdurkin: yes
(13:38:13) lohnk_mobile: okay, now I can talk to you while to monopolize my mouse
(13:38:36) lohnk: did you send the file
(13:38:36) lohnk_mobile: by email?
(13:38:47) tdurkin: not yet - preparing it (and another one)
(13:39:05) lohnk: o
(13:39:06) lohnk_mobile: k
(13:39:32) lohnk: okay, I'll stop
(13:39:33) lohnk_mobile: trying to be cute
(13:39:45) tdurkin: you're fine 
(13:41:58) tdurkin: ok - sent. I'll brb
(13:46:01) tdurkin: back - trying to hunt down Lora for a question (unrelated, but I havne't been able to catch her all day). Unsuccessfully.
(13:46:42) lohnk: ok
(13:46:56) lohnk: the two files go into the aforementioned directory?
(13:47:46) tdurkin: one of them goes into the settings directory (the one that says SETTINGS-) and the other into the security directory (SECURITY-)
(13:48:51) lohnk: there is supposed to be a directory called: ~/localtools/opt/j2ee/dev/edu/iu/uis/security?
(13:49:42) tdurkin: no, it's ~/localtools/opt/sa_forms/java/dev/edu/iu/uis/security/er
(13:50:17) lohnk: and both files should have the uppercase "SETTINGS-" and "SECUIRTY-" prefixes removed?
(13:50:48) tdurkin: yes
(13:52:33) lohnk: okay both files are placed and renamed
(13:52:59) tdurkin: cool. try stopping/starting Tomcat - that should clear up those errors.
(13:52:59) lohnk: restart tomcat?
(13:53:03) lohnk: yep
(13:53:06) tdurkin: read my mind.
(13:55:16) lohnk: wow, talk about a slowdown 75856 from 19000
(13:55:24) lohnk: no visible exceptions reported
(13:55:40) tdurkin: that's the startup time?
(13:55:52) lohnk: yeah, in ms
(13:56:22) tdurkin: could be a couple of things, and there are a few things you can do to make it faster.
(13:56:35) lohnk: lets not worry about it right now and just proceed
(13:56:39) tdurkin: ok.
(13:57:32) tdurkin: I'm not quite sure what the best thing to do from here is - probably just to play around in the application and try to fix issues that arise.
(13:58:05) lohnk: I'm not getting the login screen - I think my startup URL is not correct - what should it be?
(13:58:52) tdurkin: http://localhost:8080/er-dev/
(13:59:10) lohnk: spurious "a"
(13:59:42) lohnk: 2005-06-06 13:59:23,480 [http-8080-Processor23] ERROR edu.iu.uis.fps.er.web.utilities.ERAAuthorization :: Error authorizing user tdurkin
(13:59:42) lohnk: java.lang.NullPointerException
(13:59:42) lohnk: at edu.iu.uis.fps.er.web.utilities.ERAAuthorization.isUserGroupMember(ERAAuthorization.java:819)
(14:00:01) tdurkin: ok - let's take a look.
(14:00:09) tdurkin: (I'm going to hijack you again)
(14:01:22) tdurkin: that's more IU stuff - checking an ADS group for membership to display an extra link in Maintenance. Not important for now.
(14:01:30) lohnk_mobile left the room (quit: Read error: 110 (Connection timed out)).
(14:02:21) tdurkin: this is fun.
(14:02:37) lohnk_mobile [~lohnk@128-193-138-191.public.oregonstate.edu] entered the room.
(14:03:16) tdurkin: ok - that got rid of that error.
(14:03:30) tdurkin: not a great solution, but I think it's ok for now.
(14:03:36) lohnk_mobile: fine
(14:04:03) lohnk_mobile: so we'll just play around looking for problems -
(14:04:04) tdurkin: Let me know if I'm pissing you off w/ the VNC stuff. I don't want to.
(14:04:40) lohnk_mobile: not at all, I think vnc is a great application, especially now that I have the laptop
(14:04:58) tdurkin: yeah. It will make troubleshooting much easier.
(14:05:21) tdurkin: I'm trying not to do too much steering, though
(14:05:24) lohnk_mobile: I'm not quite sure where to start exploring -
(14:06:36) tdurkin: no problem - probably just creating budgets and playing around with them is a good starting place. I can answer questions that you've got (although I'm sure that some of my answers will be "that's how they wanted it")
(14:07:24) lohnk: well, rather than have you sit around waiting for me to find problems, should we call it good for the day. I'll contact you when I encounter something?
(14:07:39) lohnk: or would you rather look over my shoulder?
(14:07:46) lohnk: so to speak
(14:08:02) tdurkin: either way - what don't I sign off of VNC but stay on IRC for a while in case anything comes up?
(14:08:08) tdurkin: s/what/why
(14:08:21) lohnk: sounds fine
(14:08:30) tdurkin: cool.
(14:08:44) tdurkin: closed VNC.
(14:08:53) tdurkin: lmk if you need a hand w/ anything.
(14:09:28) lohnk: great - firewall is closed - I'll be in touch
(14:09:32) tdurkin: k
(14:10:31) lohnk_mobile left the room.
(14:29:37) lohnk: got my first exception. I was in the routine form and pressed the "attachment" tab:
(14:29:41) lohnk: ApplicationDispatcher[/er-dev] Servlet.service() for servlet jsp threw exception
(14:29:41) lohnk: org.apache.jasper.JasperException: /jsp/routingForm/RF_Attachments.jsp(298,137) The end tag "</html:checkbox" is unbalanced
(14:29:41) lohnk: at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
(14:30:01) tdurkin: ok,
(14:31:32) tdurkin: open up that JSP, go to line 298, character 137 and delete </html:checkbox>.
(14:31:54) tdurkin: that's another instance of the Tomcat 5 JSP compiler being less fogiving than the previous one.
(14:32:10) tdurkin: changes to JSPs don't require server restarts
(14:32:19) lohnk: ok, it'll take me a minute...
(14:32:24) tdurkin: no problem.
(14:33:14) tdurkin: Also, unrelated, I'm going to send Lora an update about our progress over the last couple of days. I'm CC'ing you, so feel free to reply and add more if you think there is more to be said.
(14:36:07) lohnk: more errors from the same file: org.apache.jasper.JasperException: /jsp/routingForm/RF_Attachments.jsp(425,12) The end tag "</logic:present" is unbalanced
(14:40:02) tdurkin: ok - line 410 - get rid of the "/" at character #85
(14:42:46) lohnk: done - restarted - seems to work now -
(14:42:52) tdurkin: cool
(14:43:32) lohnk: question about attachments - the help system says that "Several file types are supported and include (but are not limited to) MS Excel spreadsheets, MS Word documents, and Adobe .pdf files"
(14:43:54) lohnk: it rejects any document from OpenOffice
(14:44:07) lohnk: is there a list of acceptable types somewhere?
(14:44:09) tdurkin: yeah - that's an old throw back to days gone by. I've brought that issue up myself in the past.
(14:45:06) tdurkin: ht.put("xls", "application/vnd.ms-excel");
(14:45:06) tdurkin: ht.put("txt", "text/plain");
(14:45:06) tdurkin: ht.put("doc", "application/msword");
(14:45:06) tdurkin: ht.put("zip", "application/zip");
(14:45:06) tdurkin: ht.put("jpg", "image/jpeg");
(14:45:07) tdurkin: ht.put("gif", "image/gif");
(14:45:09) tdurkin: ht.put("pdf", "application/pdf");
(14:45:11) tdurkin: ht.put("tif", "image/tiff");
(14:45:13) tdurkin: ht.put("pic", "image/pict");
(14:45:15) tdurkin: ht.put("ppt", "application/vnd.ms-powerpoint");
(14:45:17) tdurkin: ht.put("wpd", "application/wordperfect5.1");
(14:45:19) tdurkin: ht.put("htm", "text/html");
(14:45:21) tdurkin: ht.put("html", "text/html");
(14:45:23) tdurkin: ht.put("vsd", "application/vnd.visio");
(14:45:27) tdurkin: GB_FileAttachmentsServlet - line 600.
(14:45:35) tdurkin: There's really no reason for that any more (in my opinion)
(14:45:58) lohnk: looks like MIME types
(14:46:14) tdurkin: yes, but I believe there's a "catch-all" MIME type.
(14:46:24) tdurkin: I think we could just as easily use that.