Sorry for incomplete information about the question. In fact, The
application has two mode, online and batch. There is no problem in
online part. The out of memory Exception was occured in the batch
mode, which is the multi-thread part. Almost all users were logged out
in batch mode, also. Because of a few reasons, The weblogic is present
in the batch mode, unfortunately.
You know what I mean, The question is , "Why I can't use at least half
percentage of the server memory?"
Note :
1- JDK 1.4 is used.
2- hibernate is used also.
3- Logs during starting the webLogics are as the following:
I. "Invalid maximum heap size : -Xmx4G
could not create the java virtual machine."
II. "Error occured during initialization of VM
could not reserve enough space for object heap"
III. "An unexpected error was encountered during the deployment
process. - with nested exception:
[java.lang.OutOfMemoryError].
java.lang.OutOfMemoryError
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:112)
at java.util.jar.JarFile.<init>(JarFile.java:127)
at java.util.jar.JarFile.<init>(JarFile.java:79)
at
weblogic.j2ee.J2EEApplicationContainer.explodeEar(J2EEApplicationContainer.java:\
5093)
at
weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:896\
)
at
weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:823\
)
at
weblogic.management.deploy.slave.SlaveDeployer$Application.prepare(SlaveDeployer\
.java:3029)
at
weblogic.management.deploy.slave.SlaveDeployer.prepareAllApplications(SlaveDeplo\
yer.java:967)
at
weblogic.management.deploy.slave.SlaveDeployer.resume(SlaveDeployer.java:349)
at
weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.resume(Deploymen\
tManagerServerLifeCycleImpl.java:229)
at
weblogic.t3.srvr.SubsystemManager.resume(SubsystemManager.java:131)
at weblogic.t3.srvr.T3Srvr.resume(T3Srvr.java:966)
at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:361)
at weblogic.Server.main(Server.java:32)