Code of a method longer than 65535 bytes exception, need urgent help!

hey guys here's the situation, we have a standard ntier j2ee app running on weblogic. Everything is fine until last night, we got this exception on multiple jsp/java files in our app:

java.lang.ClassFormatError: some_java_class (Code of a method longer than 65535 bytes).

1) there was no code change to the app
2) the exact same war file work in our dev and qa weblogic environment with no such exceptions, only in stage this exception comes up. Again the war file is exactly the same!

why is this happening?  ANY ideas are welcome, thank you!

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

I've normally seen this when a JSP is larger than 64K in size. This happens when someone has been editing the JSPs which when the are compiled to java classes, the entire JSP becomes one big method jsp_service(). You can normally get round this by using dynamic includes/composite view pattern.

I don't know why it's working on dev and qu but not prod. Is there any different in hardware/setup?

Try clearing the compiled deployment of your project inside Weblogic.
This will at least clear the compile jsp generated classes. Then restart the server and see what happens.  Which version of weblogic are you using?  Are you 100% no body edited the JSPs directly in the server?

gagaliyaAuthor Commented:
yes 100% sure the file was not touched, we did a diff, last update time check, cvs check etc the files are exactly the same. Also same file works in qa/dev but not stage.

we are using wls81, and always manually delete the caches from wls when we deploy just to be sure.

my only guess was the java jdk itself was changed by the network guys somehow, but they said that's not the case and our onsite weblogic team told us even if the jvm are changed this should not cause the issue because the 64k limit is a standard java limitation across all versions of jdk.

so what gives?? :(  the day before new year weekend...argg......
Starting with Angular 5

Learn the essential features and functions of the popular JavaScript framework for building mobile, desktop and web applications.

AFAIK they are correct about the 64K limitation across all JVM's even the 64 bit versions. One thing I would check is any JVM arguments although that shouldn't make a difference.

The last option, as always, is a server reboot. I can't think of any other reason that this would be happening as you appear to have covered all the bases.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
gagaliyaAuthor Commented:
this is resolved, weblogic support added an external memory monitoring (hp openview) to our app..and this increased the file size across the board for the app. so the already large files are now over 64k.  Once the memory monitoring was removed, everything is back to normal.

another great mystery resolved...thanks guys.
Legend! Glad to have helped if only a little :-)
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.