Skip to content

Instantly share code, notes, and snippets.

@gm3dmo
Last active October 8, 2023 09:31
Show Gist options
  • Save gm3dmo/769aba08842c10b44ce535d53c44714a to your computer and use it in GitHub Desktop.
Save gm3dmo/769aba08842c10b44ce535d53c44714a to your computer and use it in GitHub Desktop.
Note on migrating a java application from the stone age

Migrating a Java Application from the Stone Age

  • Check classpath ordering (readdir works differently on Solaris, which can be very upsetting for your java application.
  • Things that have **classpath/*** can be upset.
  • Oracle RBMS: JDBC Driver. Lots of older java apps were using classes12.zip which wont work with Oracle 10/11.
  • Stuck with old JRE version. Old JRE Version does not work on new Linux because Libc RHEL3, RHEL4, RHEL5 to RHEL6, RHEL7.
  • They lost the source code! (can’t rebuild recompile easily). How did this Big 5 ever win a contract. Unless you contracted with them to lose the source code.
  • The IPv6 thing. -Djava.net.preferIPv4Stack=true has fixed the web server not listening problem. It was listening only on the IPv6 address on linux. This had never been a problem because even though Solaris was invented in the stone age it was configured with IPv6.
  • WebApp Servers like Weblogic/Websphere that have utilities that use Jython/Jruby could be a life saver.
  • If it's going in a docker container, ensure that the JVM memory flags are set to something less than what the docker container is allowed or face the dreaded OOM Killer.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment