Консоль администрирования Websphere не появляется, если в lib / ext присутствует файл struts.jar 1.2.7 - PullRequest
1 голос
/ 11 августа 2011

Я переносу приложение в WAS 7.0 (пакет исправлений 13).Приложение использует несколько jar-файлов, которые находятся в каталоге Appserver \ lib \ ext.Если struts.jar (1.2.7) присутствует при вызове консоли администратора WAS, он вылетает с ошибкой 404 (см. Ниже).Если я удаляю struts.jar из lib \ ext, консоль администратора работает, естественно, моему приложению это нужно.WAS jar loader вначале настроен на родительский, а мое приложение на родительский последний.

Заранее спасибо за любые советы.

Экран ошибок и дамп, обратите внимание, что экран входа в систему отображается нормально, это после нажатия кнопки«Вход»:

Ошибка404

Произошла ошибка при обработке запроса:% 2Fibm% 2Fconsole% 2Findex.do

Сообщение: org.apache.struts.tiles.DefinitionsFactoryException: Ошибка ввода-вывода при разборе файла '/WEB-INF/com.ibm.ws.console.core/console-defs.xml'.Тайм-аут соединения: connect

Сведения:

javax.servlet.UnavailableException: org.apache.struts.tiles.DefinitionsFactoryException: ошибка ввода-вывода при анализе файла '/WEB-INF/com.ibm.ws.console.core / консоли defs.xml.Истекло время соединения: подключитесь по адресу com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:534) по адресу com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:502) по адресу com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest (ServletWrapperImpl.java:179) в com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward (WebAppRequestDispatcher.w..web1).FilterProxyServlet.dispatch (FilterProxyServlet.java:88) по адресу com.ibm.ws.webcontainer.servlet.FilterProxyServlet.service (FilterProxyServlet.java:62) по адресу com.ibm.ws.webcontainer.servlet.ServletWralet.ra1657) в com.ibm.ws.webcontainer.servlet.ServletWrapper.service (ServletWrapper.java:1597) в com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter (WebAppFilterChain.java:1mws) в com.ib.console.core.servlet.WSCUrlFilter.setUpCommandAssistence (WSCUrlFilter.java:933) в com.ibm.ws.console.core.servlet.WSCUrlFilter.continueStoringTaskState (WSCUrlFilter.java:500) на com.ibm.ws.console.core.servlet.WSCUrlFilter.doFilter (WSCUrlFilter.java:321) на com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter: FilterInjst:188) на com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter (WebAppFilterChain.java:116) на com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter (WebAppFilterm.w.jj)..webcontainer.filter.(DefaultExtensionProcessor.java:985) на com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest (DefaultExtensionProcessor.java:682) на com.ibm.ws.webcontainer.webapp.WebApp.handleRequest (WebApp.java:26)com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest (WebGroup.java:276) на com.ibm.ws.webcontainer.WebContainer.handleЗапрос (WebContainer.java:931) на com.ibm.ws.webcontainer.WSWebContainer.handleRequest (WSWebContainer.java:1583) на com.ibm.ws.webcontainer.channel.WCChannelLink.ready (WCChannelLink.java:186) на com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination (HttpInboundLink.java:445) по адресу com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest (HttpInboundLink.j50):.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest (HttpInboundLink.java:301) в com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready (HttpInboundLink.java:275) в com.ibm.ws.ssl.channel.impl.SSLConnectionLink.determineNextChannel (SSLConnectionLink.java:1016) в com.ibm.ws.ssl.channel.impl.SSLConnectionLink $ MyReadCompletedCallback.complete (SSLConnectionLink.j).в com.ibm.ws.ssl.channel.impl.SSLReadServiceContext $ SSLReadCompletedCallback.complete (SSLReadServiceContext.java:1772) в com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureComplec.ibm.io.async.AbstractAsyncFuture.invokeCallback (AbstractAsyncFuture.java:217) в com.ibm.io.async.AsyncChannelFuture.fireCompletionActions (AsyncChannelFuture.java:161) в com.ibm.io.async.Future.java: 138) на com.ibm.io.async.ResultHandler.complete (ResultHandler.java:204) на com.ibm.io.async.ResultHandler.runEventProcessingLoop (ResultHandler.java:775) на com.ibm.io.async.ResultHandler $ 2.run (ResultHandler.java:905) на com.ibm.ws.util.ThreadPool $ Worker.run (ThreadPool.java:1563)

1 Ответ

8 голосов
/ 11 августа 2011

Консоль WAS использует собственную версию Struts.

Поскольку вы поместили другую версию Struts (высоко в загрузчике классов - lib / ext), у консоли WAS возникли проблемы.

В 99,99% случаев это плохая идеядля выгрузки таких jar-файлов в lib / ext.

Вы можете использовать определенный путь к классу приложения или подход с разделяемой библиотекой, если вам нужно, чтобы эти jar-файлы были общими для нескольких приложений.размещение банок в lib / ext.

HTH

Manglu

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...