java.lang.VerifyError: JVMVRFY027 receiver is incompatible with declaring class; class=org/primefaces/component/gmap/GMap, method=queueEvent
java.lang.VerifyError: JVMVRFY027 receiver is incompatible with declaring class; class=org/primefaces/component/gmap/GMap, method=queueEvent
当我尝试 运行 我在 WebSphere 8.5 上的应用程序时遇到问题。
FFDC Exception:com.ibm.ws.webcontainer.exception.WebAppNotLoadedException SourceId:com.ibm.ws.webcontainer.WebContainer ProbeId:736 Reporter:com.ibm.ws.webcontainer.WSWebContainer@e152ede7
com.ibm.ws.webcontainer.exception.WebAppNotLoadedException: Failed to load webapp: JVMVRFY027 receiver is incompatible with declaring class; class=org/primefaces/component/gmap/GMap, method=queueEvent(Ljavax/faces/event/FacesEvent
;)V, pc=676
at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:176)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:749)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:634)
at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:426)
at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:718)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1177)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1370)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:639)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:968)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:776)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplicationDynamically(ApplicationMgrImpl.java:1379)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2189)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:389)
at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:332)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access0(CompositionUnitMgrImpl.java:119)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.run(CompositionUnitMgrImpl.java:607)
at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5474)
at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5600)
at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:255)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:621)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:565)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1269)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:69)
at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:272)
at javax.management.modelmbean.RequiredModelMBean.run(RequiredModelMBean.java:1152)
at java.security.AccessController.doPrivileged(AccessController.java:298)
at com.ibm.oti.security.CheckedAccessControlContext.securityCheck(CheckedAccessControlContext.java:30)
at sun.misc.JavaSecurityAccessWrapper.doIntersectionPrivilege(JavaSecurityAccessWrapper.java:41)
at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1146)
at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:999)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:847)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:783)
at com.ibm.ws.management.AdminServiceImpl.run(AdminServiceImpl.java:1335)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:1228)
at com.ibm.ws.management.connector.AdminServiceDelegator.invoke(AdminServiceDelegator.java:181)
at com.ibm.ws.management.connector.ipc.CallRouter.route(CallRouter.java:247)
at com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink.doWork(IPCConnectorInboundLink.java:360)
at com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink$IPCConnectorReadCallback.complete(IPCConnectorInboundLink.java:602)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1818)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864)
Caused by: java.lang.VerifyError: JVMVRFY027 receiver is incompatible with declaring class; class=org/primefaces/component/gmap/GMap, method=queueEvent(Ljavax/faces/event/FacesEvent;)V, pc=676
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(J9VMInternals.java:94)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:171)
问题似乎是 PrimeFaces 或 javax faces 的版本,但我什至没有在我的项目中使用 GMAP 对象。
在 tomcat 7 上,一切正常并且工作正常,但是当我尝试在 WebSphere 中加载我的应用程序时,它崩溃了。
我正在使用 PrimeFaces 5 和 javax.faces.2.2.0
更新
在 Gas 回答之前,我用 eclipse 更改了项目方面。我更改了网络模块 (3.0)、jst.jsf(2.2) 和 java 版本 (1.6)。
它在 tomcat 上一切正常,一如既往,但在 WS 中它确实显示相同的错误。
这太令人沮丧了。
更新
7 天后我就是想不通。似乎 WAS 8.5.5 无法运行。
现在它不断地给出:
Failed to load webapp: javax.servlet.ServletContainerInitializer: Provider com.sun.faces.config.FacesInitializer not a subtype
我按照这个 links 来尝试解决问题:
IBM using jsf 2.0(我已经在使用共享库- parent 最后一次,并且我以各种可能的方式更改了 "jsp and JSF options")
我还搜索了所有关于 maven 代表的库和依赖项。
我正在使用:
javax.el-api-2.2.1.jar
javax.faces-2.2.0.jar
javax.servlet.jsp-api-2.2.1.jar
javax.servlet-api-3.0.1.jar
我做错了什么?
我不得不说所有这些都适用于 IBM Liberty 8.5 和 Apache tomcat 7
更新
是的,根据这个 link:Ibm websphere problem
我尝试按照 listed:Under 做:
1) Under RAD produce a Ear File
2) Start the admin console
3) Panel: Environment (at right)
4) Sub-menu: Shared libraries
5) Button New and select the required fields. Read with attention the tooltip on each field
6) Check the box Class Loading - Use an isolated class loader for this shared library
7) Panel: Applications > Application Types > WebSphere enterprise applications
8) Button: Install, select your ear and Next
9) Select the radio button: Detailed - Show all installation options and parameters.
10) Follow the steps - moslty default value are ok
10.1) Step 4 Map shared libraries
10.2) Select your ear
10.3) Button: References Shared Libraries
10.4) Select your library previously created and OK button
10.5) Follow the next steps and start your ear file
10.a) If it does not work, then try to create a class loader Panel: Servers > Server Types > WebSphere application servers > Your server (server1)
10.b) Panel: Server Infrastructure > Java and Process Management > Class loader
10.c) Button New: > Class loader order > Classes loaded with local class loader first (Parent Last)
10.d) Apply Button
10.e) Then at the same panel: Shared library references link
10.f) Button Add and select your shared library, OK and Save
10.g) Restart your server and your application
WebSphere 附带 JSF 2.0 (MyFaces)。要使用您自己的实现,您需要更改 JSF 配置。检查此页面 Configuring JavaServer Faces implementation。它详细解释了您必须做什么(基本上 - 创建独立的共享库并配置 JSF 设置)
我已经通过手动清理 websphere 缓存和安装并从头开始重建成功解决了这个问题。使用了 /bin/clearClassCache
脚本并从 c:\users\User\AppData\Local\javasharedresources\
中手动删除了文件。
重建并重新部署了应用程序 - 它成功了。
当我尝试 运行 我在 WebSphere 8.5 上的应用程序时遇到问题。
FFDC Exception:com.ibm.ws.webcontainer.exception.WebAppNotLoadedException SourceId:com.ibm.ws.webcontainer.WebContainer ProbeId:736 Reporter:com.ibm.ws.webcontainer.WSWebContainer@e152ede7
com.ibm.ws.webcontainer.exception.WebAppNotLoadedException: Failed to load webapp: JVMVRFY027 receiver is incompatible with declaring class; class=org/primefaces/component/gmap/GMap, method=queueEvent(Ljavax/faces/event/FacesEvent
;)V, pc=676
at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:176)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:749)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:634)
at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:426)
at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:718)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1177)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1370)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:639)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:968)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:776)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplicationDynamically(ApplicationMgrImpl.java:1379)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2189)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:389)
at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:332)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access0(CompositionUnitMgrImpl.java:119)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.run(CompositionUnitMgrImpl.java:607)
at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5474)
at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5600)
at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:255)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:621)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:565)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1269)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:69)
at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:272)
at javax.management.modelmbean.RequiredModelMBean.run(RequiredModelMBean.java:1152)
at java.security.AccessController.doPrivileged(AccessController.java:298)
at com.ibm.oti.security.CheckedAccessControlContext.securityCheck(CheckedAccessControlContext.java:30)
at sun.misc.JavaSecurityAccessWrapper.doIntersectionPrivilege(JavaSecurityAccessWrapper.java:41)
at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1146)
at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:999)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:847)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:783)
at com.ibm.ws.management.AdminServiceImpl.run(AdminServiceImpl.java:1335)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:1228)
at com.ibm.ws.management.connector.AdminServiceDelegator.invoke(AdminServiceDelegator.java:181)
at com.ibm.ws.management.connector.ipc.CallRouter.route(CallRouter.java:247)
at com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink.doWork(IPCConnectorInboundLink.java:360)
at com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink$IPCConnectorReadCallback.complete(IPCConnectorInboundLink.java:602)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1818)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864)
Caused by: java.lang.VerifyError: JVMVRFY027 receiver is incompatible with declaring class; class=org/primefaces/component/gmap/GMap, method=queueEvent(Ljavax/faces/event/FacesEvent;)V, pc=676
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(J9VMInternals.java:94)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:171)
问题似乎是 PrimeFaces 或 javax faces 的版本,但我什至没有在我的项目中使用 GMAP 对象。
在 tomcat 7 上,一切正常并且工作正常,但是当我尝试在 WebSphere 中加载我的应用程序时,它崩溃了。
我正在使用 PrimeFaces 5 和 javax.faces.2.2.0
更新
在 Gas 回答之前,我用 eclipse 更改了项目方面。我更改了网络模块 (3.0)、jst.jsf(2.2) 和 java 版本 (1.6)。
它在 tomcat 上一切正常,一如既往,但在 WS 中它确实显示相同的错误。
这太令人沮丧了。
更新
7 天后我就是想不通。似乎 WAS 8.5.5 无法运行。 现在它不断地给出:
Failed to load webapp: javax.servlet.ServletContainerInitializer: Provider com.sun.faces.config.FacesInitializer not a subtype
我按照这个 links 来尝试解决问题:
IBM using jsf 2.0(我已经在使用共享库- parent 最后一次,并且我以各种可能的方式更改了 "jsp and JSF options")
我还搜索了所有关于 maven 代表的库和依赖项。
我正在使用:
javax.el-api-2.2.1.jar
javax.faces-2.2.0.jar
javax.servlet.jsp-api-2.2.1.jar
javax.servlet-api-3.0.1.jar
我做错了什么?
我不得不说所有这些都适用于 IBM Liberty 8.5 和 Apache tomcat 7
更新 是的,根据这个 link:Ibm websphere problem
我尝试按照 listed:Under 做:
1) Under RAD produce a Ear File
2) Start the admin console
3) Panel: Environment (at right)
4) Sub-menu: Shared libraries
5) Button New and select the required fields. Read with attention the tooltip on each field
6) Check the box Class Loading - Use an isolated class loader for this shared library
7) Panel: Applications > Application Types > WebSphere enterprise applications
8) Button: Install, select your ear and Next
9) Select the radio button: Detailed - Show all installation options and parameters.
10) Follow the steps - moslty default value are ok
10.1) Step 4 Map shared libraries
10.2) Select your ear
10.3) Button: References Shared Libraries
10.4) Select your library previously created and OK button
10.5) Follow the next steps and start your ear file
10.a) If it does not work, then try to create a class loader Panel: Servers > Server Types > WebSphere application servers > Your server (server1)
10.b) Panel: Server Infrastructure > Java and Process Management > Class loader
10.c) Button New: > Class loader order > Classes loaded with local class loader first (Parent Last)
10.d) Apply Button
10.e) Then at the same panel: Shared library references link
10.f) Button Add and select your shared library, OK and Save
10.g) Restart your server and your application
WebSphere 附带 JSF 2.0 (MyFaces)。要使用您自己的实现,您需要更改 JSF 配置。检查此页面 Configuring JavaServer Faces implementation。它详细解释了您必须做什么(基本上 - 创建独立的共享库并配置 JSF 设置)
我已经通过手动清理 websphere 缓存和安装并从头开始重建成功解决了这个问题。使用了 /bin/clearClassCache
脚本并从 c:\users\User\AppData\Local\javasharedresources\
中手动删除了文件。
重建并重新部署了应用程序 - 它成功了。