IBM Support

Pointers to resolve "Incompatible magic value" while opening any applet (e.g. Configurator, HSDE screen)

Troubleshooting


Problem

Pointers to resolve "Incompatible magic value" while opening any applet (e.g. Configurator, HSDE screen)

Symptom

While launching the configurator or any applet, system throws the below error:

java.lang.ClassFormatError: Incompatible magic value 168430090 in class file com/yantra/app/exui/YantraExuiApplet
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.ClassFormatError: Incompatible magic value 168430090 in class file com/yantra/app/exui/YantraExuiApplet
 

Cause

This issue occurs due to a session mismatch problem. The problem is due to the JSESSIONID cookie not being sent to the web application when requesting a Java applet. The Weblogic 10.3 application server, by default, sets the HTTP only attribute to true. If it is true, clients do not send out any cookies including the JSESSIONID cookie when requesting any scripting codes such as JavaScripts and Java applets.
Please find references to the links below:

Applet Cookie:http://blogs.sun.com/IDM/entry/jsessionid_with_weblogic_10_3
Applet Cookie:http://forums.oracle.com/forums/thread.jspa?messageID=3745820
Magic Value: http://forums.sun.com/thread.jspa?threadID=5417598

Diagnosing The Problem

Things to look for
--------------------
1. Are you deployed on Weblogic 10.3.1.0 or 10.3.2.0?
If yes, then see the Java console trace.
NOTE: MCSF 8.5 and SFS 9.0 are certified with WebLogic 10.3, which is 10g Release 3 (and is not typically referred to as 10.3.0 but just 10.3). As of WebLogic 10.3.1, some security changes were added (affecting WebLogic 10.3.x) that are not truly backward-compatible with 10.3. This is why we are seeing the kind of errors like that mentioned here. Because Oracle (now the owners of WebLogic) have no intention of correcting the backward-compatibility issues to 10.3, Sterling Commerce plans to make their own product changes such that WebLogic 10.3.x will be supported. Currently, these changes are planned only for a future development release.

2. Check for the following snippet in the trace: If this is also present, then we have a resolution to the issue.
network: Connecting http://localhost:7001/smcfs/yfscommon/xercesImpl.jar with proxy=DIRECT
network: Connecting http://localhost:7001/smcfs/console/login.jsp?ErrorMsg=System_Timeout with proxy=DIRECT
network: Server http://localhost:7001/smcfs/console/login.jsp?ErrorMsg=System_Timeout requesting to set-cookie with "JSESSIONID=7KpnL02KmB1sG0M1KByvJbp6xhPnyZkJnGQ7GyNJvTQNf6yM8Dl8!1830015948; path=/; HttpOnly"

Ideally the flow is as below:

network: Cache entry not found [url: http://10.11.20.128:8280/smcfs/yfscommon/xalan.jar, version: null]
network: Connecting http://10.11.20.128:8280/smcfs/yfscommon/xalan.jar with proxy=DIRECT
network: Connecting http://10.11.20.128:82 80/smcfs/yfscommon/xalan.jar with cookie "JSESSIONID=FA45CC902FB4AA00208287EF2830C9C0"

Resolving The Problem

For using weblogic, add the session descriptor to weblogic.xml in smcfs.war (also all other wars that launch applets):

<session-descriptor>
<cookie-http-only>false</cookie-http-only>
</session-descriptor>

For using Websphere 8

WAS 8 has HTTPOnly enabled, by default. To disable HTTPOnly in WAS, please follow the directions at:


https://www.ibm.com/docs/en/was-nd/9.0.5?topic=webseal-single-sign-settings

Note: Prior to WAS 8, HTTPOnly was disabled by default.
Then update the war with this descriptor and redeploy the EAR file.

Alternate Resolution
Note: If you are not on Weblogic 10.3 and not having the same Java console trace portion in your trace as shown above, check the IE version and settings:

1. IE8 is not supported, however there is a setting in IE8 which can impact this behavior: "Share session cookie information"

2. If it is a lower version of IE8, then try accessing the application from some other system. The
two possible configurations in browser impacting this are: "Always Allow session cookies" and "Accept third party cookies" under Privacy Settings

[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

FAQ3601

Document Information

Modified date:
30 May 2024

UID

swg21518927