Did you try it without the "@LocalBean" annotation?
Something like...
.
.
.
@Stateless
public class ApplicationBean extends AbstractBean<Application> {
.
.
.
[]s,
Thiago.
On Thu, Nov 28, 2013 at 10:25 AM, Hildeberto Mendonça Filho <
[email protected]> wrote:
> Hello,
>
> I'm using TomEE+ 1.5.2 and from times to times an exception occurs with
> one of my EJBs:
>
> java.lang.IllegalArgumentException: com.hildeberto.architect.
> system.business.ApplicationBean is not an interface
>
> Indeed, it is not an interface, but a Stateless EJB anotated with
> @LocalBean to avoid the need for interfaces. Unfortunately, it is
> impossible to predict when it occurs. The entire stacktrace is the
> following:
>
> nov. 28, 2013 4:12:10 PM org.apache.catalina.core.StandardWrapperValve
> invoke
> Grave: Servlet.service() for servlet [Faces Servlet] in context with path
> [/architect] threw exception
> [com.hildeberto.architect.system.business.ApplicationBean
> is not an interface] with root cause
> java.lang.IllegalArgumentException: com.hildeberto.architect.
> system.business.ApplicationBean is not an interface
> at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:496)
> at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
> at org.apache.openejb.client.proxy.Jdk13ProxyFactory.newProxyInstance(
> Jdk13ProxyFactory.java:127)
> at org.apache.openejb.client.proxy.ProxyManager.
> newProxyInstance(ProxyManager.java:109)
> at org.apache.openejb.client.EJBObjectHandler.createEJBObjectProxy(
> EJBObjectHandler.java:197)
> at org.apache.openejb.server.ejbd.ClientObjectFactory.
> getBusinessObject(ClientObjectFactory.java:161)
> at org.apache.openejb.server.ejbd.EjbDaemon.
> getBusinessObject(EjbDaemon.java:300)
> at org.apache.openejb.core.ivm.EjbObjectProxyHandler._writeReplace(
> EjbObjectProxyHandler.java:216)
> at org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(
> BaseEjbProxyHandler.java:233)
> at com.hildeberto.architect.system.business.ApplicationBean$
> LocalBeanProxy.writeReplace(com/hildeberto/architect/system/business/
> ApplicationBean.java)
> at sun.reflect.GeneratedMethodAccessor177.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at java.io.ObjectStreamClass.invokeWriteReplace(
> ObjectStreamClass.java:1075)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1132)
> at java.io.ObjectOutputStream.defaultWriteFields(
> ObjectOutputStream.java:1541)
> at java.io.ObjectOutputStream.writeSerialData(
> ObjectOutputStream.java:1506)
> at java.io.ObjectOutputStream.writeOrdinaryObject(
> ObjectOutputStream.java:1429)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1175)
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
> at java.util.HashMap.writeObject(HashMap.java:1133)
> at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at java.io.ObjectStreamClass.invokeWriteObject(
> ObjectStreamClass.java:988)
> at java.io.ObjectOutputStream.writeSerialData(
> ObjectOutputStream.java:1493)
> at java.io.ObjectOutputStream.writeOrdinaryObject(
> ObjectOutputStream.java:1429)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1175)
> at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1375)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1171)
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
> at java.util.HashMap.writeObject(HashMap.java:1133)
> at sun.reflect.GeneratedMethodAccessor119.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at java.io.ObjectStreamClass.invokeWriteObject(
> ObjectStreamClass.java:988)
> at java.io.ObjectOutputStream.writeSerialData(
> ObjectOutputStream.java:1493)
> at java.io.ObjectOutputStream.writeOrdinaryObject(
> ObjectOutputStream.java:1429)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1175)
> at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1375)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1171)
> at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1375)
> at java.io.ObjectOutputStream.writeObject0(
> ObjectOutputStream.java:1171)
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
> at org.apache.myfaces.shared.util.StateUtils.
> getAsByteArray(StateUtils.java:292)
> at org.apache.myfaces.shared.util.StateUtils.construct(
> StateUtils.java:248)
> at org.apache.myfaces.renderkit.html.HtmlResponseStateManager.
> writeViewStateField(HtmlResponseStateManager.java:157)
> at org.apache.myfaces.renderkit.html.HtmlResponseStateManager.
> writeState(HtmlResponseStateManager.java:135)
> at org.apache.myfaces.application.StateManagerImpl.
> writeState(StateManagerImpl.java:360)
> at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage
> .renderView(FaceletViewDeclarationLanguage.java:2022)
> at org.apache.myfaces.application.ViewHandlerImpl.
> renderView(ViewHandlerImpl.java:285)
> at javax.faces.application.ViewHandlerWrapper.renderView(
> ViewHandlerWrapper.java:59)
> at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(
> RenderResponseExecutor.java:116)
> at org.apache.myfaces.lifecycle.LifecycleImpl.render(
> LifecycleImpl.java:241)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:305)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:210)
> at org.apache.catalina.core.StandardWrapperValve.invoke(
> StandardWrapperValve.java:222)
> at org.apache.catalina.core.StandardContextValve.invoke(
> StandardContextValve.java:123)
> at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
> AuthenticatorBase.java:472)
> at org.apache.catalina.core.StandardHostValve.invoke(
> StandardHostValve.java:171)
> at org.apache.catalina.valves.ErrorReportValve.invoke(
> ErrorReportValve.java:99)
> at org.apache.catalina.valves.AccessLogValve.invoke(
> AccessLogValve.java:936)
> at org.apache.catalina.core.StandardEngineValve.invoke(
> StandardEngineValve.java:118)
> at org.apache.catalina.connector.CoyoteAdapter.service(
> CoyoteAdapter.java:407)
> at org.apache.coyote.http11.AbstractHttp11Processor.process(
> AbstractHttp11Processor.java:1004)
> at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
> process(AbstractProtocol.java:589)
> at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.
> run(JIoEndpoint.java:310)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(
> ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(
> ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:724)
>
> You can see the implementation at: https://github.com/htmfilho/
> architect/blob/master/src/main/java/com/hildeberto/
> architect/system/business/ApplicationBean.java
>
> Any idea how to avoid/solve this?
>