hi all: I am running SilverStream 4.0 and jvm 1.3.1. When I run the application, one of the jsp pages casue the server to crash. here is the error code: # HotSpot Virtual Machine Error : EXCEPTION_ACCESS_VIOLATION # Error ID : 4F530E43505002BD # Please report this error at # http://java.sun.com/cgi-bin/bugreport.cgi # # Java VM: Java HotSpot(TM) Client VM (1.3.1_03-b03 mixed mode) # # An error report file has been saved as hs_err_pid1492.log. # Please refer to the file for further information. # does anyone know how to fix this problem
SCJD 1.4<br />SCJP 1.4<br />-----------------------------------<br />"With regard to excellence, it is not enough to know, but we must try to have and use it.<br />" Aristotle
JVM 1.3 - Hotspot - Just In Time (JIT) compiling to native machine code has some bugs. Silverstream continues to use JVM 1.3. So use the following command to disable JIT and stop the crashes: "C:\Program Files\SilverStream\eXtendAppServer\bin\SilverServiceUtil.exe" -update -service SilverAppServerService4.0 -startupOptions +classic The same problem was driving me crazy. If I removed half of my JSP it would run. So I kept removing different parts. It was the volume of HTML/JSP, not the content that determined if it crashed or not. I believe JIT is only enabled for servlets of a certain size. So under that size it worked, over that size it would crash because of JIT.
There's a hard limit to the maximum size of the generated servlet code that can be loaded by the JVM, JIT or no JIT. This is imposed by the maximum size of 64KB for a single method which is defined in the Java specification. This in turn defines effectively the maximum size of a JSP. Use <jsp:include ... /> to create larger JSPs from fragments (note <%@ include ... %> will not work as that does the include before compilation rather than calling the 2nd JSP and parsing its output into the ServletOutputStream).