Recently I came across blog post from Andreas Koop who explained very well how Application downtime can be avoided if we use Shared library approach.
Refer to his post:
http://multikoop.blogspot.com/2013/06/production-redeployment-with-adf-shared.html
http://multikoop.blogspot.de/2013/06/weblogic-application-redeployment-using.html
When you want master application to refer latest shared library reference, just select the master application & click on "Update" to pick new shared library changes
weblogic.xml: All your web shared library references goes into this file. If you try to refer a library that is not a web library then you will get exception as below:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Caused By: weblogic.management.DeploymentException: Error: Unresolved Webapp Library references for | |
"ServletContext@10447440[app:MyApp module:my-profile path:/my-app spec-version:2.5]", defined in weblogic.xml | |
[Extension-Name: com.adp.library, exact-match: false] | |
at weblogic.servlet.internal.WebAppServletContext.processWebAppLibraries(WebAppServletContext.java:2754) | |
at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:415) | |
at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:493) | |
at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:418) | |
at weblogic.servlet.internal.WebAppModule.registerWebApp(WebAppModule.java:972) |
weblogic-application.xml: Rest all java library references goes into this file. If you try to refer a web shared library then you will get exception as below:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
> | |
<Jun 4, 2015 11:44:23 AM CDT> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating | |
deploy task for application 'MyApp'.> | |
<Jun 4, 2015 11:44:23 AM CDT> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004 | |
weblogic.application.ModuleException: Failed to load webapp: 'adf.oracle.domain.webapp' | |
at weblogic.servlet.internal.WebAppModule.prepare(WebAppModule.java:393) | |
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199) | |
at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:517) | |
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) | |
at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:159) | |
Truncated. see log file for complete stacktrace | |
Caused By: java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentELTag | |
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297) | |
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270) | |
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64) | |
at java.lang.ClassLoader.loadClass(ClassLoader.java:305) | |
at java.lang.ClassLoader.loadClass(ClassLoader.java:246) | |
Truncated. see log file for complete stacktrace |
Feel free to comment.
No comments:
Post a Comment