WELD-862 and Seam Cron
by Peter Royle
Hi,
I'm aiming to make a release of Seam Cron available within the next two weeks. Currently there is an outstanding issue (https://issues.jboss.org/browse/WELD-862) which prevents Cron from running properly with Weld. I have been able to carry on developing Cron by testing it against OpenWebBeans, but obviously if we are to release a Seam module it should work against Weld.
It would be nice if WELD-862 could be fixed as soon a possible so that all future versions will work well with Cron.
But more importantly I also probably need to do something special in Cron so that it will work with the version of Weld already deployed in JBoss AS and Glassfish, which will contain the bug. The workaround mentioned in the bug report is to deep copy the InvocationContext. I attempted to do this by serialising and unserialising the InvocationContext but couldn't due to UnserializableExceptions. Does anyone have any advice for me about how I might be able to work around this bug to support existing versions of Weld?
Cheers,
Pete R
1 week, 1 day
PROBE-000014 - Caused by ClassNotFoundException: int
by Benjamin Confino
Hello
I found a PROBE-000014 error in my fat test suite which was Caused by:
java.lang.ClassNotFoundException: int cannot be found by
com.ibm.ws.org.jboss.weld.2.4.8_1.0.23.201811031441. Looking at the stack,
I think weld is the code deciding to do a class lookup on int, have you
ever seen this before? Any idea what might be triggering weld do lookup
int? I had a quick look at the application code and couldn't see anything
weird involving ints.
Here is the full stack:
org.jboss.weld.exceptions.DeploymentException: PROBE-000014: Cannot
register a Probe MBean interface org.jboss.weld.probe.JsonDataProvider
for: cdi12helloworldtest
at
org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:38)
at
org.jboss.weld.bootstrap.events.AfterDeploymentValidationImpl.fire(AfterDeploymentValidationImpl.java:28)
at
org.jboss.weld.bootstrap.WeldStartup.validateBeans(WeldStartup.java:487)
at
org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:90)
at
com.ibm.ws.cdi.impl.CDIContainerImpl.startInitialization(CDIContainerImpl.java:152)
at
com.ibm.ws.cdi.liberty.CDIRuntimeImpl.applicationStarting(CDIRuntimeImpl.java:438)
at
com.ibm.ws.container.service.state.internal.ApplicationStateManager.fireStarting(ApplicationStateManager.java:28)
at
com.ibm.ws.container.service.state.internal.StateChangeServiceImpl.fireApplicationStarting(StateChangeServiceImpl.java:50)
at
com.ibm.ws.app.manager.module.internal.DeployedAppInfoBase.preDeployApp(DeployedAppInfoBase.java:383)
at
com.ibm.ws.app.manager.module.internal.DeployedAppInfoBase.deployApp(DeployedAppInfoBase.java:412)
at
com.ibm.ws.app.manager.ear.internal.EARApplicationHandlerImpl.install(EARApplicationHandlerImpl.java:76)
at
com.ibm.ws.app.manager.internal.statemachine.StartAction.execute(StartAction.java:140)
at
com.ibm.ws.app.manager.internal.statemachine.ApplicationStateMachineImpl.enterState(ApplicationStateMachineImpl.java:1258)
at
com.ibm.ws.app.manager.internal.statemachine.ApplicationStateMachineImpl.run(ApplicationStateMachineImpl.java:873)
at
com.ibm.ws.threading.internal.ExecutorServiceImpl$RunnableWrapper.run(ExecutorServiceImpl.java:232)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.jboss.weld.exceptions.IllegalStateException: PROBE-000014:
Cannot register a Probe MBean interface
org.jboss.weld.probe.JsonDataProvider for: cdi12helloworldtest
at
org.jboss.weld.probe.ProbeExtension.afterDeploymentValidation(ProbeExtension.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:88)
at
org.jboss.weld.injection.MethodInvocationStrategy$SpecialTheParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:299)
at
org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:124)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:277)
at
org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:255)
at
org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:269)
at
org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:258)
at
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:154)
at
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:148)
at
org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
at
org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:35)
... 17 more
Caused by: javax.management.NotCompliantMBeanException: Bad getMBeanInfo()
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getNewMBeanClassName(DefaultMBeanServerInterceptor.java:336)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:319)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at
com.ibm.ws.kernel.boot.jmx.service.MBeanServerForwarderDelegate.registerMBean(MBeanServerForwarderDelegate.java:221)
at
com.ibm.ws.jmx.internal.DelayedMBeanActivator.registerMBean(DelayedMBeanActivator.java:663)
at
com.ibm.ws.kernel.boot.jmx.internal.PlatformMBeanServer.registerMBean(PlatformMBeanServer.java:435)
at
org.jboss.weld.probe.ProbeExtension.afterDeploymentValidation(ProbeExtension.java:174)
... 33 more
Caused by: org.jboss.weld.resources.spi.ResourceLoadingException: Error
loading class int
at
org.jboss.weld.resources.AbstractClassLoaderResourceLoader.classForName(AbstractClassLoaderResourceLoader.java:42)
at
org.jboss.weld.probe.ProbeDynamicMBean.classForName(ProbeDynamicMBean.java:139)
at
org.jboss.weld.probe.ProbeDynamicMBean.toParamTypes(ProbeDynamicMBean.java:131)
at
org.jboss.weld.probe.ProbeDynamicMBean.findMethod(ProbeDynamicMBean.java:122)
at
org.jboss.weld.probe.ProbeDynamicMBean.getParameterName(ProbeDynamicMBean.java:94)
at
javax.management.StandardMBean.getOperations(StandardMBean.java:1001)
at
javax.management.StandardMBean.getMBeanInfo(StandardMBean.java:459)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getNewMBeanClassName(DefaultMBeanServerInterceptor.java:333)
... 39 more
Caused by: java.lang.ClassNotFoundException: int cannot be found by
com.ibm.ws.org.jboss.weld.2.4.8_1.0.23.201811031441
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387)
at
org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at
org.jboss.weld.resources.AbstractClassLoaderResourceLoader.classForName(AbstractClassLoaderResourceLoader.java:40)
... 46 more
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
7 years, 1 month