views:

235

answers:

1

We're developing a web application with Rational Application Developer 7.5 (based on Eclipse 3.4) for WebSphere Application Server 6.1 . When examining stacktraces on a staging server, the line numbers always point to the beginning of the methods, never to the actual line. In the local development environment (each developer has his local Websphere 6.1 running) all seems perfect.

In the Eclipse Preferences under Java > Compiler > section Classfile Generation everything is checked.

The deployment is done by building an EAR-File using RAD's earExport Ant target (not the ear core task). Afterwards it's repackaged to remove some unnecessary files. No explicit compilation is started - classes from the workspace are used.

How can this happen, that those informations get lost? Is this part of some Hotspot optimization? If so, can it be disabled?

And how can I get my correct line numbers back?

+3  A: 

What is your staging platform? I have a client whom's staging/prod environment is the iSeries and it wasn't until they updated the iSeries OS to one of the newer levels that the debug line numbers finally started lining up.

RefuX
Hmm, this could actually be the point. Staging is indeed iSeries version V5R4M0. I will check the developerworks forums. Thanks so far (+1).
rudolfson
Yes the iSeries JVM is a unique beast that works very differently from a normal JVM. I'm sure you have noticed how slow the first run through it.The client I consulted for eventually decided to move the App Server onto an AIX box, the straw that broke the camel's back was when we discovered a bug in the iSeries JVM implementation.We spoke to IBM at length about Java and the iSeries and the future. The bottom line is when Websphere is used on the iSeries it's typically used for packages (JD Edwards), if you are doing custom development, you are treading where few go.Good luck! :)
RefuX