Weblogic upgrade to 12c: deployment fails because url mapped to multiple servlet -
i've setup new weblogic 12c environment. on deploying application know works in weblogic 11g error "the url-pattern /resources/* in web application mapped multiple servlets."
the mapping it's referring in web.xml inside application.ear that's being deployed, it's mapped once:
<servlet-mapping> <servlet-name>velocity</servlet-name> <url-pattern>/resources/*</url-pattern> </servlet-mapping>
the project doesn't contain other references url pattern /resources/*, can explain duplicated mapping coming , how can work around it?
the closest issue find this: https://bugster.forgerock.org/jira/si/jira.issueviews:issue-html/openam-7947/openam-7947.html, has been marked unreproducible.
full stack trace deployment:
<error> <deployer> <bea-149205> <failed initialize application "<application_name>" due error weblogic.application.moduleexception: weblogic.management.deploymentexception: [http:101401]the url-pa ttern /resources/* in web application <application_name> mapped multiple servlets. weblogic.application.moduleexception: weblogic.management.deploymentexception: [http:101401]the url-pattern /resources/* in web application <application_name> mapped multiple servlets. @ weblogic.application.internal.extensiblemodulewrapper.prepare(extensiblemodulewrapper.java:114) @ weblogic.application.internal.flow.modulelistenerinvoker.prepare(modulelistenerinvoker.java:100) @ weblogic.application.internal.flow.modulestatedriver$1.next(modulestatedriver.java:192) @ weblogic.application.internal.flow.modulestatedriver$1.next(modulestatedriver.java:187) @ weblogic.application.utils.statemachinedriver$parallelchange.run(statemachinedriver.java:83) @ weblogic.application.utils.statemachinedriver.nextstateinparallel(statemachinedriver.java:144) @ weblogic.application.internal.flow.modulestatedriver.parallelprepare(modulestatedriver.java:46) @ weblogic.application.internal.flow.deploymentcallbackflow.prepare(deploymentcallbackflow.java:75) @ weblogic.application.internal.flow.deploymentcallbackflow.prepare(deploymentcallbackflow.java:55) @ weblogic.application.internal.basedeployment$1.next(basedeployment.java:731) @ weblogic.application.utils.statemachinedriver.nextstate(statemachinedriver.java:45) @ weblogic.application.internal.basedeployment.prepare(basedeployment.java:243) @ weblogic.application.internal.eardeployment.prepare(eardeployment.java:66) @ weblogic.application.internal.deploymentstatechecker.prepare(deploymentstatechecker.java:158) @ weblogic.deploy.internal.targetserver.appcontainerinvoker.prepare(appcontainerinvoker.java:65) @ weblogic.deploy.internal.targetserver.appdeployment.prepare(appdeployment.java:158) @ weblogic.management.deploy.internal.deploymentadapter$1.doprepare(deploymentadapter.java:41) @ weblogic.management.deploy.internal.deploymentadapter.prepare(deploymentadapter.java:193) @ weblogic.management.deploy.internal.apptransition$1.transitionapp(apptransition.java:31) @ weblogic.management.deploy.internal.configureddeployments$2.doitem(configureddeployments.java:684) @ weblogic.management.deploy.internal.parallel.bucketinvoker.invoke(bucketinvoker.java:138) @ weblogic.management.deploy.internal.configureddeployments.transitionappsparallel(configureddeployments.java:692) @ weblogic.management.deploy.internal.configureddeployments.prepare(configureddeployments.java:322) @ weblogic.management.deploy.internal.configureddeployments.deploy(configureddeployments.java:202) @ weblogic.management.deploy.internal.deploymentserverservice.resume(deploymentserverservice.java:207) @ weblogic.management.deploy.internal.deploymentserverservice.start(deploymentserverservice.java:129) @ weblogic.server.abstractserverservice.postconstruct(abstractserverservice.java:76) @ sun.reflect.generatedmethodaccessor2.invoke(unknown source) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:498) @ org.glassfish.hk2.utilities.reflection.reflectionhelper.invoke(reflectionhelper.java:1262) @ org.jvnet.hk2.internal.clazzcreator.postconstructme(clazzcreator.java:332) @ org.jvnet.hk2.internal.clazzcreator.create(clazzcreator.java:374) @ org.jvnet.hk2.internal.systemdescriptor.create(systemdescriptor.java:471) @ org.glassfish.hk2.runlevel.internal.asyncrunlevelcontext.findorcreate(asyncrunlevelcontext.java:232) @ org.glassfish.hk2.runlevel.runlevelcontext.findorcreate(runlevelcontext.java:85) @ org.jvnet.hk2.internal.utilities.createservice(utilities.java:2020) @ org.jvnet.hk2.internal.servicehandleimpl.getservice(servicehandleimpl.java:114) @ org.jvnet.hk2.internal.servicehandleimpl.getservice(servicehandleimpl.java:88) @ org.glassfish.hk2.runlevel.internal.currenttaskfuture$queuerunner.onejob(currenttaskfuture.java:1213) @ org.glassfish.hk2.runlevel.internal.currenttaskfuture$queuerunner.run(currenttaskfuture.java:1144) @ weblogic.work.selftuningworkmanagerimpl$workadapterimpl.run(selftuningworkmanagerimpl.java:666) @ weblogic.invocation.componentinvocationcontextmanager._runas(componentinvocationcontextmanager.java:348) @ weblogic.invocation.componentinvocationcontextmanager.runas(componentinvocationcontextmanager.java:333) @ weblogic.work.livepartitionutility.dorunworkundercontext(livepartitionutility.java:54) @ weblogic.work.partitionutility.runworkundercontext(partitionutility.java:41) @ weblogic.work.selftuningworkmanagerimpl.runworkundercontext(selftuningworkmanagerimpl.java:640) @ weblogic.work.executethread.execute(executethread.java:406) @ weblogic.work.executethread.run(executethread.java:346)
if use web annotations in java code, don't have declare servlet in web.xml file more.
you can try removing corresponding "servlet" , "servlet-mapping" tags in web.xml
it seems weblogic 12.1.3 can deal double declaration (inline annotation & xml) not anymore in weblogic 12.2.
i had error @webservice annotation when specified "servicename" parameter , when declared servlet in web.xml file same value.
Comments
Post a Comment