Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Slow startup with exceptions in WebSphere 7 (with FixPack 3)

300 views
Skip to first unread message

ponc...@rocketmail.com

unread,
Apr 30, 2009, 1:06:34 PM4/30/09
to
I am currently in the process of migrating to WebSphere 7 from WebSphere 6.1, and am running WebSphere 7 in a Windows XP environment for development.

In Windows, the startup time is drastically slower than WAS 6.1. I have 3 EARs installed, each containing a few WARs, 1 of which contains many small files for help related content. The startup time on WAS 6.1 with the same applications is around 2 minutes, while the startup time under WAS 7 is around 10 to 15 minutes.

What is WAS 7 doing differently? The annotation scanner is also throwing exceptions during startup as it tries to instantiate a few classes, such as the following:


(4/30/09 12:57:54:958 EDT) 00000008 annotation W com.ibm.ws.webcontainer.annotation.WASAnnotationHelper collectClasses unable to instantiate class
java.lang.ClassNotFoundException:
at java.lang.Class.forName(Class.java:169)
at com.ibm.ws.webcontainer.annotation.WASAnnotationHelper.loadClass(WASAnnotationHelper.java:611)
at com.ibm.ws.webcontainer.annotation.WASAnnotationHelper.collectClasses(WASAnnotationHelper.java:405)
at com.ibm.ws.webcontainer.annotation.WASAnnotationHelper.(WASAnnotationHelper.java:134)
at com.ibm.ws.webcontainer.annotation.WASAnnotationHelperManager.getAnnotationHelper(WASAnnotationHelperManager.java:59)
at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:241)
at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:100)
at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:728)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:613)
at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1144)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1313)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:611)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:938)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:723)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2068)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:437)
at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:122)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:380)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:108)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:935)
at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)


Does it really need to instantiate them? If so, why can't it find these classes? As we are migrating from WAS 6.1 to WAS 7, we are not using JEE 5 annotations yet. Is this the source of the extremely slow startup times? Can it be turned off?

Thanks.

Davanum Srinivas (dims)

unread,
Apr 30, 2009, 3:45:06 PM4/30/09
to
ponchoboy,

Can you please try either setting the UseWSFEP61ScanPolicy property to false in the META-INF/MANIFEST.MF of a Web archive (WAR) file or EJB module or by defining the Java virtual machine custom property, com.ibm.websphere.webservices.UseWSFEP61ScanPolicy, on servers to request scanning during application installation and server startup. See [1] for some details, also search in infocenter for "UseWSFEP61ScanPolicy" to read more about it.

thanks,
dims

[1] http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/rwbs_jaxwsannotations.html

ponc...@rocketmail.com

unread,
May 1, 2009, 10:20:47 AM5/1/09
to
Hi,

I set the "com.ibm.websphere.webservices.UseWSFEP61ScanPolicy" setting to false, but that didn't help. I then set the "com.ibm.websphere.ejb.UseEJB61FEPScanPolicy" setting to false, and the exceptions went away (and our EJB still functioned properly), however, startup speed did not increase.

Any other ideas for speeding up startup times in Windows?

Thanks.

Brian S Paskin

unread,
May 4, 2009, 9:23:36 AM5/4/09
to
Hi, Did you try clearing the Java cache from WebSphere? It could be causing the issue. You could also disable the caching mechanism during startup.

To clean the Java Cache used during startup : WAS_HOME/profiles/PROFILE_NAME/bin/osgiCfgInit.sh (.bat)
To turn off the Java Cache you need to go in the JVM settings in the App Server. On the Generic JVM Arguments add the following : -Xshareclasses:none

You may also want to check your class loading strategy.

Regards,
Brian

ponc...@rocketmail.com

unread,
May 6, 2009, 9:39:57 AM5/6/09
to
Clearing the Java cache had no effect. Is no one else running WebSphere 7 in a Windows environment?

Our class loading strategy is set to "parent last" across the board, but it was set this way in WebSphere 6.1 as well. How can the startup performance be so much worse than WebSphere 6.1 with the same settings?

Thanks again for the replies so far!

Brian S Paskin

unread,
May 6, 2009, 11:29:51 AM5/6/09
to
Hi, I have WAS v7 on Windows and AIX and it is significantly faster starting that v6.1. You can trace what is going on during startup and see which component it is having an issue with and try to correct that issue. Otherwise, I would suggest contacting IBM to help you out.

Regards,
Brian

roof.s...@gmail.com

unread,
May 8, 2009, 9:54:14 AM5/8/09
to
Enabling "Start components as needed" seems to have dramatically reduced startup time to around 4 or 5 minutes. I'm not sure how this may affect runtime performance, but it is not that much of an issue on our Windows development environments.

On another note, I deployed an EAR that normally contains a WAR with 15,000+ small files (for help/content). I removed all the content files to speed up deployment, then I put them back in place after deployment, as deploying with the files in place takes upwards of 30 minutes. After I put the files back in place, simple configuration changes in the admin console (such as user role mappings) take almost 30 minutes. Is WAS 7 scanning through all the files in the EAR for some reason? Why are the deployments and settings changes doing this?

Thanks.

Sven Vermeulen

unread,
May 8, 2009, 2:21:35 PM5/8/09
to
On Fri, 08 May 2009 09:54:14 -0400, roof.squirrel wrote:

> On another note, I deployed an EAR that normally contains a WAR with
> 15,000+ small files (for help/content). I removed all the content files
> to speed up deployment, then I put them back in place after deployment,
> as deploying with the files in place takes upwards of 30 minutes. After
> I put the files back in place, simple configuration changes in the admin
> console (such as user role mappings) take almost 30 minutes. Is WAS 7
> scanning through all the files in the EAR for some reason? Why are the
> deployments and settings changes doing this?

I'm not sure why WebSphere is scanning all files in a deployed EAR.
Unlike its own configuration repository, it shouldn't be handling updates
(can be mistaken though).

However, I strongly recommend to separate the small files from the WAR
file. Rather, put it elsewhere on the system and have the web server
serve those static files (I suppose they are static) and let WebSphere
handle the dynamic ones only.

Wkr,
Sven Vermeulen

sajifa...@yahoo.co.in

unread,
Jun 26, 2009, 4:18:32 AM6/26/09
to
Iam getting the same error

com.ibm.ws.webcontainer.annotation.WASAnnotationHelper collectClasses unable to instantiate class

I have changed setting the UseWSFEP61ScanPolicy: false in MANIFEST.MF file. But still the same error. Can any one help. Also , how do we enable "Start components as needed" ?

Can somebody please help. As iam struck with this error for the past one week.

roof.s...@gmail.com

unread,
Jun 26, 2009, 1:23:23 PM6/26/09
to
"Start components as needed"

Other than the exceptions on startup, how are your startup times? Are you using Windows?

sajifa...@yahoo.co.in

unread,
Jun 29, 2009, 11:40:31 AM6/29/09
to
Hi,

There is no such custom property mentioned in my JVM properties.
I have checked the check box which said "Start Component as needed"
But still i get the "ClassNotFound" exception.
Iam using RAD7.5 with WAS 7.O test environment.
Can anybody please help!!!
Iam struggling to get this issue fixed

0 new messages