2016-07-04 1 views
3

Недавно я установил новую среду Weblogic 12c. При развертывании приложения, которое, как мне известно, работает в Weblogic 11g, я получаю сообщение об ошибке «URL-адрес/ресурсы/* в веб-приложении сопоставляется с несколькими сервлетами».Обновление веб-журнала до 12c: развертывание не выполняется, потому что URL-адрес сопоставлен с несколькими сервлетами

Отображение это в виду это в web.xml внутри application.ear, который развертывается, но это только отображается один раз:

<servlet-mapping> 
    <servlet-name>velocity</servlet-name> 
    <url-pattern>/resources/*</url-pattern> 
    </servlet-mapping> 

Проект не содержит никаких других ссылок на URL pattern/resources/*, может кто-нибудь объяснить, откуда происходит дублированное сопоставление, и как я могу обойти его?

Ближайшая проблема, которую я мог найти, это следующее: https://bugster.forgerock.org/jira/si/jira.issueviews:issue-html/OPENAM-7947/OPENAM-7947.html, обозначенное как невоспроизводимое.

Полный трассировки стека от развертывания:

<Error> <Deployer> <BEA-149205> <Failed to initialize the application "<application_name>" due to error weblogic.application.ModuleException: weblogic.management.DeploymentException: [HTTP:101401]The url-pa 
ttern /resources/* in web application <application_name> is mapped to multiple Servlets. 
weblogic.application.ModuleException: weblogic.management.DeploymentException: [HTTP:101401]The url-pattern /resources/* in web application <application_name> is mapped to multiple Servlets. 
     at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114) 
     at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100) 
     at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:192) 
     at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:187) 
     at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:83) 
     at weblogic.application.utils.StateMachineDriver.nextStateInParallel(StateMachineDriver.java:144) 
     at weblogic.application.internal.flow.ModuleStateDriver.parallelPrepare(ModuleStateDriver.java:46) 
     at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:75) 
     at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:55) 
     at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:731) 
     at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45) 
     at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:243) 
     at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:66) 
     at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:158) 
     at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:65) 
     at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:158) 
     at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:41) 
     at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:193) 
     at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:31) 
     at weblogic.management.deploy.internal.ConfiguredDeployments$2.doItem(ConfiguredDeployments.java:684) 
     at weblogic.management.deploy.internal.parallel.BucketInvoker.invoke(BucketInvoker.java:138) 
     at weblogic.management.deploy.internal.ConfiguredDeployments.transitionAppsParallel(ConfiguredDeployments.java:692) 
     at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:322) 
     at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:202) 
     at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:207) 
     at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:129) 
     at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76) 
     at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:498) 
     at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1262) 
     at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:332) 
     at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:374) 
     at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471) 
     at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:232) 
     at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85) 
     at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2020) 
     at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:114) 
     at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:88) 
     at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1213) 
     at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1144) 
     at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666) 
     at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348) 
     at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333) 
     at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54) 
     at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) 
     at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640) 
     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406) 
     at weblogic.work.ExecuteThread.run(ExecuteThread.java:346) 
+1

Вы когда-нибудь это разрешили? У меня такая же проблема. – OldProgrammer

ответ

0

вопрос не существует в версии 12.1.3 (который случился быть версия, которую мы должны были модернизировать к).

1

Если вы используете веб-аннотации в Java-коде, вам больше не нужно объявлять сервлет в файле web.xml.

Вы можете попробовать, удалив соответствующий «сервлет» и «сервлет-отображение» теги в web.xml

кажется, что WebLogic 12.1.3 может иметь дело с двойной декларации (встроенный аннотаций & XML), но не больше в WebLogic 12.2.

У меня была эта ошибка с аннотацией @webservice, когда я указал параметр «serviceName» и когда я объявил сервлет в файле web.xml с тем же значением.

Смежные вопросы