joriszwart.nl

I code dreams™

Upgrade application without source code

Archeology Java Reverse engineering

Emergency!

An emergency project where the endpoints of an application must be changed.

There was no source code available. Luckily the new URLs had the same length. Un-jarring the application, hex-editing the .class files did (almost) the trick. Which kind of amazed me, because I would have thought the class file format had a checksum. Delivery time from application transfer to deliver the binary patch: 1h38m.

Almost done!

Where I said ‘almost’ I meant: it didn't work. The new endpoints were called, but the API wanted more than we could give. In the end I had to decompile some relevant class files to add a special header to the outgoing requests (couch a very bubblin' protocol). Which scared me; some files did not compile clean after decompilation.

However, we took the risk (things were broken already) and it was a First Time Right. Amazed again 😉

Decompiling, adding said header, compiling, packaging and delivering took some hours.

Might or might not disclose later 😃