2015-05-14 1 views
1

Я развернул ухо в JBoss, который состоит из нескольких битв (Web Archive). В основном развернутый файл уха был создан ant, установив TOMCAT_HOME до начала сборки муравьев.JBWEB000250: Детский контейнер с именем уже существует

set TOMCAT_HOME=C:\apache-tomcat-6.0.32 

У меня возникает следующая ошибка. Я развернут его в JBoss EAP 6.4.0.GA (А.С. 7.5.0.Final-RedHat-21)

11: 38: 34340 ERROR [org.jboss.msc.service.fail] (MSC службы резьбы 1-5) MSC000001: Не удалось запустить службу jboss.web.deployment.default-host./: org.jboss.msc.service.StartException в сервисе jboss.web.deployment.default-host./: Не удалось запустить службу на org.jboss.msc.service.ServiceControllerImpl $ StartTask.run (ServiceControllerImpl.java:1936) [jboss-msc-1.1.5.Final-redhat-1.jar: 1.1.5.Final-redhat-1] at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) [rt.jar: 1.8.0_45] at java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617) [rt.jar: 1.8.0_45] по адресу java.lang.Threa d.run (Thread.java:745) [rt.jar: 1.8.0_45]

Вызванный: java.lang.IllegalArgumentException: JBWEB000250: Детский контейнер с именем уже существует

Вызванный : java.lang.IllegalArgumentException: JBWEB000250: дочерний контейнер с именем уже существует по адресу org.apache.catalina.core.ContainerBase.addChildInternal (ContainerBase.java:794) at org.apache.catalina.core.ContainerBase.addChild (ContainerBase .java: 785) по адресу org.apache.catalina.core.StandardHost.addChild (StandardHost.java:353) по адресу org.jboss.as.web.deployment.We bContextInjector.inject (WebContextInjector.java:62) по адресу org.jboss.as.web.deployment.WebContextInjector.inject (WebContextInjector.java:38) at org.jboss.msc.inject.CastingInjector.inject (CastingInjector.java: 55) [jboss-msc-1.1.5.Final-redhat-1.jar: 1.1.5.Final-redhat-1] at org.jboss.msc.service.ServiceControllerImpl.doInject (ServiceControllerImpl.java:1704) [ jboss-msc-1.1.5.Final-redhat-1.jar: 1.1.5.Final-redhat-1] на org.jboss.msc.service.ServiceControllerImpl.access $ 2000 (ServiceControllerImpl.java:52) [jboss- msc-1.1.5.Final-redhat-1.jar: 1.1.5.Final-redhat-1] at org.jboss.msc.service.ServiceControllerImpl $ StartTask.performInjections (ServiceControllerImpl.java:1949) [jboss-msc -1.1.5.Final-redhat-1.jar: 1.1.5.Final-redhat-1] at org.jboss.msc.service.ServiceControllerImpl $ StartTask.run (ServiceContro llerImpl.java:1908) [JBoss-ЦКМ-1.1.5.Final-RedHat-1.jar: 1.1.5.Final-RedHat-1] ... 3 более

Этот проект является наследием проект. Он содержит Struts 1.2.9, Springs-2.0.8, файлы hibernate-3.2.6 jar в каталоге проекта lib и его конфигурации доступны в \ WEB-INF \ из веб-архивов (.war).

В основном я портирование приложения из Websphere на JBoss

Как я могу решить или преодолеть эту проблему.

+0

Я надеюсь, что эта проблема возникает из-за появления того же файла .war в обоих файлах .ear, а также внутри некоторого .war-файла. –

ответ

9

В standalone.xml это будет верно enable-welcome-root , Если вы сделаете это ложным, вы можете развернуть веб-архив .war в контексте / ....

Если enable-welcome-root остается верным, тогда появляется веб-страница по умолчанию jboss. Следовательно, это необходимо исправить для развертывания веб-приложения в контексте /.

<subsystem xmlns="urn:jboss:domain:web:2.1" default-virtual-server="default-host" native="false"> 
     <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> 
     <virtual-server name="default-host" enable-welcome-root="false"> 
      <alias name="localhost"/> 
      <alias name="example.com"/> 
     </virtual-server> 
    </subsystem> 
1

Эта проблема возникает из-за появления того же файла .war как в файле .ear, так и внутри некоторого .war-файла.

В моем случае .war имеет повторение как баночки с тем же именем некоторых .war файлов под одним .war \ WEB-INF \ lib. И те .jar's все реплицируются, кроме web папка удалена.Я надеюсь, что это было сделано для передачи некоторых java-файлов. ТЕПЕРЬ, я удалил эти .jars. И теперь я не получаю эту конкретную ошибку.

Итак, сейчас я выяснял эту ошибку JBWEB000250: Child container with name already exists..

Существует ничего плохого в строительстве муравех целей путем установки TOMCAT_HOME.

Но это может иметь некоторые последствия при изменении веб-контейнера.

+0

Это не было проблемой, так как мне нужно было скомпилировать классы на стороне сервера как '.jar' в' WEB-INF/lib/', так как в моем APP использовался контейнер Spring IOC –

0

JBoss не позволяет развернуть любое .war в / контексте .... Мы должны дать некоторые веб имя контекста ... например /scweb или так ..... Тогда это удастся ....

.ear\META-INF\application.xml

<?xml version="1.0" encoding="UTF-8"?> 
    <application xmlns="http://java.sun.com/xml/ns/j2ee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" 
     version="1.4"> 
     <display-name>PCB Application</display-name> 
     <module> 
      <web> 
       <web-uri>scWeb-1.1.war</web-uri> 
       <context-root>/scWeb</context-root> 
      </web> 
     </module> 
    </application> 

Я надеюсь, что есть некоторые default-host развернуты в /

по этой причине я только надеюсь, что он говорит, как ....

Вызванный: java.lang.IllegalArgumentException: JBWEB000250: Детский контейнер с именем уже существует

Чтобы преодолеть эту ошибку я удалил все .jar сторону сервера классов, которые были введены для инъекций зависимостей ..... Позже я понял, что .jar не является причиной ошибки .... Я был смущен, поскольку эта ошибка возникла и для некоторого веб-контекста ... Возможно, из-за быстрой интерпретации ошибки, вероятно, и я не уверен. ...

Эта ошибка была только для default-host .... Или это может быть потому, что у меня есть som е lm-shared.jar под .ear\META-INF\lib

Поправьте меня, если ошибаюсь .... Дайте мне рецензию, если причиной этой ошибки может быть что-то еще ....

-1

Чтобы решить эту проблему просто остановить сервер JBoss, перейдите к серверу каталогов в автономном/развертывании и удаление .war проекта. Затем просто добавьте проект еще раз на сервер, и все готово.

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