IBM Worklight 6.0 — SAXException при доступе к консоли управления Application Center

В настоящее время я пытаюсь запустить Worklight Application Center на новой установке Worklight v6, работающей на WebSphere Application Server v8 и WebSphere Portal v8. Это кажется довольно простым, и IBM Installation Manager совершенно не жалуется. Я даже могу войти в Application Center после завершения установки. Однако на странице отображается ошибка HTTP 500, а все параметры отображаются серым цветом. Это также предотвращает повторный выход из системы.

В журналах WAS следующая ошибка возникает точно при выходе страницы из строя:

SystemErr     R javax.persistence.PersistenceException: Provider error. Provider: org.apache.openjpa.persistence.PersistenceProviderImpl
SystemErr     R     at javax.persistence.Persistence.createFactory(Persistence.java:175)
SystemErr     R     at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:111)
SystemErr     R     at com.ibm.puremeap.resources.data.impl.PureMeapDataJPAImpl.<init>(PureMeapDataJPAImpl.java:211)
SystemErr     R     at com.ibm.puremeap.resources.data.impl.PureMeapDataJPAImpl.fromDataSource(PureMeapDataJPAImpl.java:135)
SystemErr     R     at com.ibm.puremeap.resources.data.DataStoreFactory.getJPADBStore(DataStoreFactory.java:45)
SystemErr     R     at com.ibm.puremeap.resources.data.DataStoreFactory.getDataStore(DataStoreFactory.java:33)
SystemErr     R     at com.ibm.puremeap.util.DataUtil.getData(DataUtil.java:452)
SystemErr     R     at com.ibm.puremeap.services.BaseService.<init>(BaseService.java:46)
SystemErr     R     at com.ibm.puremeap.services.MobileServices.<init>(MobileServices.java:51)
SystemErr     R     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
SystemErr     R     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:56)
SystemErr     R     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)
SystemErr     R     at java.lang.reflect.Constructor.newInstance(Constructor.java:527)
SystemErr     R     at org.apache.wink.common.internal.lifecycle.CreationUtils.createObject(CreationUtils.java:66)
SystemErr     R     at org.apache.wink.common.internal.lifecycle.PrototypeObjectFactory.getInstance(PrototypeObjectFactory.java:45)
SystemErr     R     at org.apache.wink.server.internal.registry.ResourceInstance.getInstance(ResourceInstance.java:80)
SystemErr     R     at org.apache.wink.server.internal.handlers.InvokeMethodHandler.handleRequest(InvokeMethodHandler.java:48)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandler.handleRequest(AbstractHandler.java:33)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.handlers.CreateInvocationParametersHandler.handleRequest(CreateInvocationParametersHandler.java:54)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandler.handleRequest(AbstractHandler.java:34)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleSubResourceMethod(FindResourceMethodHandler.java:183)
SystemErr     R     at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleRequest(FindResourceMethodHandler.java:110)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.handlers.FindRootResourceHandler.handleRequest(FindRootResourceHandler.java:95)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.handlers.HeadMethodHandler.handleRequest(HeadMethodHandler.java:53)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.handlers.OptionsMethodHandler.handleRequest(OptionsMethodHandler.java:46)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.handlers.SearchResultHandler.handleRequest(SearchResultHandler.java:33)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.log.ResourceInvocation.handleRequest(ResourceInvocation.java:92)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.internal.log.Requests.handleRequest(Requests.java:76)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
SystemErr     R     at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
SystemErr     R     at org.apache.wink.server.handlers.AbstractHandlersChain.run(AbstractHandlersChain.java:52)
SystemErr     R     at org.apache.wink.server.internal.RequestProcessor.handleRequestWithoutFaultBarrier(RequestProcessor.java:207)
SystemErr     R     at org.apache.wink.server.internal.RequestProcessor.handleRequest(RequestProcessor.java:154)
SystemErr     R     at org.apache.wink.server.internal.servlet.RestServlet.service(RestServlet.java:133)
SystemErr     R     at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
SystemErr     R     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1225)
SystemErr     R     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:775)
SystemErr     R     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:457)
SystemErr     R     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
SystemErr     R     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1032)
SystemErr     R     at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
SystemErr     R     at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:908)
SystemErr     R     at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
SystemErr     R     at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
SystemErr     R     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:453)
SystemErr     R     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:515)
SystemErr     R     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:306)
SystemErr     R     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:277)
SystemErr     R     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
SystemErr     R     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
SystemErr     R     at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:166)
SystemErr     R     at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
SystemErr     R     at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
SystemErr     R     at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
SystemErr     R     at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
SystemErr     R     at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
SystemErr     R     at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
SystemErr     R     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1691)
SystemErr     R Caused by: <openjpa-1.2.2-r422266:898935 nonfatal general error> org.apache.openjpa.util.GeneralException: org.xml.sax.SAXException: wsjar:file:/opt/IBM/WebSphere/PortalServer/wcm/prereq.wcm/wcm/shared/app/ilwwcm-eventlog-jpa.jar!/META-INF/persistence.xml [Location: Line: 3, C: 121]: org.xml.sax.SAXParseException: cvc-complex-type.3.1: Value '2.0' of attribute 'version' of element 'persistence' is not valid with respect to the corresponding attribute use. Attribute 'version' has a fixed value of '1.0'.
SystemErr     R     at org.apache.openjpa.lib.meta.XMLMetaDataParser.parseNewResource(XMLMetaDataParser.java:379)
SystemErr     R     at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataParser.java:318)
SystemErr     R     at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataParser.java:295)
SystemErr     R     at org.apache.openjpa.lib.meta.XMLMetaDataParser.parse(XMLMetaDataParser.java:268)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProductDerivation$ConfigurationParser.parse(PersistenceProductDerivation.java:509)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProductDerivation.parseResources(PersistenceProductDerivation.java:359)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProductDerivation.load(PersistenceProductDerivation.java:326)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProductDerivation.load(PersistenceProductDerivation.java:161)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProviderImpl.createEntityManagerFactory(PersistenceProviderImpl.java:83)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProviderImpl.createEntityManagerFactory(PersistenceProviderImpl.java:117)
SystemErr     R     at org.apache.openjpa.persistence.PersistenceProviderImpl.createEntityManagerFactory(PersistenceProviderImpl.java:59)
SystemErr     R     at javax.persistence.Persistence.createFactory(Persistence.java:171)
SystemErr     R     ... 85 more

Я искал все комбинации этой ошибки, которые я могу придумать, без решений, которые действительно применимы до сих пор. JAR-файл, который вызывает ошибку «ilwwcm-eventlog-jpa.jar», похоже, является стандартной библиотекой Portal. Чтобы устранить неполадки, я даже попытался распаковать стандартный JAR, изменить указанный XML-файл, чтобы он имел «1.0» вместо «2.0», переупаковать JAR и попробовать это. Это просто приводит к тому, что WAS создает исключение для другого тега XML в том же файле.

Кто-нибудь видел это, или есть идеи, как это исправить?


person dlaffranchi    schedule 24.07.2013    source источник


Ответы (2)


Я предполагаю, что Websphere дает вам неправильную версию OpenJPA. Application Center поставляется с собственной локальной версией OpenJPA. Чтобы устранить побочные эффекты от глобального OpenJPA, рекомендуется использовать политику загрузчика классов «Родитель последний»:

Войдите в консоль администратора Websphere Application Server:

  • Слева: Приложения > Типы приложений > Корпоративные приложения Websphere.
  • В списке корпоративных приложений выберите центр приложений (AppCenter или AppCenterServices).
  • Выберите «загрузка классов и обнаружение обновлений».
  • Порядок загрузчика классов: сначала классы загружаются с помощью локального загрузчика классов (родительский последний)

Обычно это не значение по умолчанию, но вы должны использовать это.

  • Политика загрузчика классов WAR: загрузчик классов для каждого файла WAR в приложении.

Это должно быть по умолчанию, и это хорошо.

  • Применить, ОК, затем, если появится сообщение об изменениях, нажать «Сохранить непосредственно в основную конфигурацию».

На всякий случай перезапустите сервер приложений Websphere впоследствии.

person Georg Sander    schedule 25.07.2013
comment
Спасибо за ответ. И AppCenter, и AppCenterServices уже были установлены (последний родитель). На всякий случай я установил для них другую опцию, перезапустил WAS, протестировал, установил обратно, перезапустил WAS и снова проверил. Одно и то же исключение выдается в любом случае. - person dlaffranchi; 25.07.2013

У меня была такая же проблема. Я подумал, что если я удалю файл ilwwcm-eventlog-jpa.jar, это должно исправить worklight. Я изменил расширение файла с .jar на .abc, чтобы его не нашел загрузчик классов. Это действительно исправило WorkLight, но вместо этого сломало портлет разработки портала WCM.

person Ali Murtaza Shaikh    schedule 02.09.2014