[jira] [Commented] (TOMEE-839) @Stateless EJBs which are also @WebService annotated don't get picked up in embedded mode
[ https://issues.apache.org/jira/browse/TOMEE-839?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13608720#comment-13608720 ] Mark Struberg commented on TOMEE-839: - Hi Romain! Yes, indeed there are a few fishy things going on in the spec here. a.) @Local is not even mentioned in the EJB spec, only @LocalBean is. b.) the JavaDoc of @Local says that it is automatically active and only explicitly needed if the EJB implements more than 1 interface (which is not from the javax.ejb package). Thus spec wise this fix seems to be ok. > @Stateless EJBs which are also @WebService annotated don't get picked up in > embedded mode > - > > Key: TOMEE-839 > URL: https://issues.apache.org/jira/browse/TOMEE-839 > Project: TomEE > Issue Type: Bug >Affects Versions: 1.5.1 >Reporter: Mark Struberg > Attachments: TOMEE-839-fix_candidate_1.patch, TOMEE-839.patch > > > {noformat} > @Stateless > @WebService > public class MyBean {.. > {noformat} > This class does not get picked up as EJB. It can neither get injected via > @Inject, nor @EJB nor manually looked up in the Context. If I remove the > @WebService annotation, then all works fine. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (TOMEE-836) ReportValidationResults should log.info about the root cause
[ https://issues.apache.org/jira/browse/TOMEE-836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13608784#comment-13608784 ] Mark Struberg commented on TOMEE-836: - Just had this again today: org.apache.openejb.OpenEjbContainer$InvalidApplicationException: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=) at org.apache.openejb.OpenEjbContainer$Provider.createEJBContainer(OpenEjbContainer.java:353) at javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:56) at javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:43) at org.apache.deltaspike.cdise.openejb.OpenEjbContainerControl.boot(OpenEjbContainerControl.java:61) at atsomeproject ...util.container.ContainerTest.setUp(ContainerTest.java:53) at atsomeprojectutil.container.ContainerTest.beforeClass(ContainerTest.java:63) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80) at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:564) at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:213) at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:138) at org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:175) at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:107) at org.testng.TestRunner.privateRun(TestRunner.java:767) at org.testng.TestRunner.run(TestRunner.java:617) at org.testng.SuiteRunner.runTest(SuiteRunner.java:334) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329) at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291) at org.testng.SuiteRunner.run(SuiteRunner.java:240) at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1198) at org.testng.TestNG.runSuitesLocally(TestNG.java:1123) at org.testng.TestNG.run(TestNG.java:1031) at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111) at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204) at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175) at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:111) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) Caused by: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=) at org.apache.openejb.config.ReportValidationResults.deploy(ReportValidationResults.java:82) at org.apache.openejb.config.AppInfoBuilder.build(AppInfoBuilder.java:297) at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:917) at org.apache.openejb.OpenEjbContainer$Provider.createEJBContainer(OpenEjbContainer.java:347) ... 35 more null null null > ReportValidationResults should log.info about the root cause > > > Key: TOMEE-836 > URL: https://issues.apache.org/jira/browse/TOMEE-836 > Project: TomEE > Issue Type: Bug > Components: Compliance Checks >Affects Versions: 1.5.1 >Reporter: Mark Struberg > Fix For: 1.6.0 > > > I'm having an EJB which references a @PersistenceContext with a not yet > defined DataSource. > This leads to a Deployment error, but the real cause is well hidden > internally and doesn't get logged properly. > Same happens if the persistence unit itself is not configured. > This currently doesn't even lead to a deployment Exception but OpenEJB just > resumes to start. > If I debug into ReportValidationResults#deploy line 66 > uberContext.addFailure(failure); > then I see the issue. But it doesn't get logged it seems. > This should at least be logged with INFO level imo. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA,
[jira] [Commented] (TOMEE-836) ReportValidationResults should log.info about the root cause
[ https://issues.apache.org/jira/browse/TOMEE-836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13608788#comment-13608788 ] Romain Manni-Bucau commented on TOMEE-836: -- Wich such an exception the error is logged upper in the logs. If not the log setting is probably wrong (not the default one) > ReportValidationResults should log.info about the root cause > > > Key: TOMEE-836 > URL: https://issues.apache.org/jira/browse/TOMEE-836 > Project: TomEE > Issue Type: Bug > Components: Compliance Checks >Affects Versions: 1.5.1 >Reporter: Mark Struberg > Fix For: 1.6.0 > > > I'm having an EJB which references a @PersistenceContext with a not yet > defined DataSource. > This leads to a Deployment error, but the real cause is well hidden > internally and doesn't get logged properly. > Same happens if the persistence unit itself is not configured. > This currently doesn't even lead to a deployment Exception but OpenEJB just > resumes to start. > If I debug into ReportValidationResults#deploy line 66 > uberContext.addFailure(failure); > then I see the issue. But it doesn't get logged it seems. > This should at least be logged with INFO level imo. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
svn commit: r1459205 - /tomee/tomee/trunk/pom.xml
Author: rmannibucau Date: Thu Mar 21 09:50:11 2013 New Revision: 1459205 URL: http://svn.apache.org/r1459205 Log: using javaee-api and owb last releases - staging repo will need to be removed as soon as repo1 is sync Modified: tomee/tomee/trunk/pom.xml Modified: tomee/tomee/trunk/pom.xml URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/pom.xml?rev=1459205&r1=1459204&r2=1459205&view=diff == --- tomee/tomee/trunk/pom.xml (original) +++ tomee/tomee/trunk/pom.xml Thu Mar 21 09:50:11 2013 @@ -114,7 +114,7 @@ ${project.groupId}.${project.artifactId} -6.0-5-SNAPSHOT +6.0-5 2.2.6 @@ -143,7 +143,7 @@ 4.11 1.4.1 1.0.2 - 1.1.8-SNAPSHOT +1.1.8 3.1.1 1.1 1.7.1 @@ -464,6 +464,28 @@ + +openwebbeans-staging + openwebbeans-staging + https://repository.apache.org/content/repositories/orgapacheopenwebbeans-008 + +true + + +false + + + + javaee-api-staging + javaee-api-staging + https://repository.apache.org/content/repositories/orgapachetomee-009 + +true + + +false + +
buildbot exception in ASF Buildbot on tomee-trunk-win-ibmjdk6
The Buildbot has detected a new failure on builder tomee-trunk-win-ibmjdk6 while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomee-trunk-win-ibmjdk6/builds/214 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-2008_windows Build Reason: scheduler Build Source Stamp: [branch tomee/tomee/trunk] 1459205 Blamelist: rmannibucau BUILD FAILED: exception shell sincerely, -The Buildbot
[jira] [Created] (OPENEJB-2009) Bug in CdiEjbBean
Xavier Dury created OPENEJB-2009: Summary: Bug in CdiEjbBean Key: OPENEJB-2009 URL: https://issues.apache.org/jira/browse/OPENEJB-2009 Project: OpenEJB Issue Type: Bug Components: general Affects Versions: 4.5.1 Reporter: Xavier Dury In CdiEjbBean.destroyScopedStateful(), a test is made to check if a stateful bean is invalidated (by calling instance.hashcode and getting a NoSuchEjbException). The problem is that if the bean is actually invalidated, it's logged and instance.toString() will be called and this will throw a NoSuchEjbException outside of the try/catch. {{ private void destroyScopedStateful(final T instance, final CreationalContext cc) { try { instance.hashCode(); // force the instance to be created - otherwise we'll miss @PreDestroy for instance } catch (NoSuchEJBException e) { logger.log(Level.FINE, "The stateful instance " + instance + " can't be removed since it was invalidated", e); return; } ... } }} error: {{ ERROR 14:56:13 [main] org.apache.openejb.cdi.CdiEjbBean - Exception thrown while destroying bean instance : [MyStatefulBean, Name:null, WebBeans Type:ENTERPRISE, API Types:[java.lang.Object,test.MyStateful], Qualifiers:[javax.enterprise.inject.Any,javax.enterprise.inject.Default]] javax.ejb.NoSuchEJBException: reference is invalid for MyStatefulBean at org.apache.openejb.core.ivm.BaseEjbProxyHandler.isValidReference(BaseEjbProxyHandler.java:314) at org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:219) at $Proxy138.toString(Unknown Source) at java.lang.String.valueOf(String.java:2826) at java.lang.StringBuilder.append(StringBuilder.java:115) at org.apache.openejb.cdi.CdiEjbBean.destroyScopedStateful(CdiEjbBean.java:369) at org.apache.openejb.cdi.CdiEjbBean.destroyComponentInstance(CdiEjbBean.java:241) at org.apache.webbeans.component.AbstractInjectionTargetBean.destroyInstance(AbstractInjectionTargetBean.java:176) at org.apache.webbeans.component.AbstractOwbBean.destroyCreatedInstance(AbstractOwbBean.java:287) at org.apache.webbeans.portable.creation.InjectionTargetProducer.preDestroy(InjectionTargetProducer.java:132) at org.apache.webbeans.component.InjectionTargetWrapper.preDestroy(InjectionTargetWrapper.java:98) at org.apache.webbeans.component.AbstractOwbBean.destroy(AbstractOwbBean.java:251) at org.apache.openejb.cdi.CdiEjbBean$InstanceBean.destroy(CdiEjbBean.java:461) }} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (OPENEJB-2009) Bug in CdiEjbBean
[ https://issues.apache.org/jira/browse/OPENEJB-2009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13608992#comment-13608992 ] Romain Manni-Bucau commented on OPENEJB-2009: - Did you check on snapshot? > Bug in CdiEjbBean > - > > Key: OPENEJB-2009 > URL: https://issues.apache.org/jira/browse/OPENEJB-2009 > Project: OpenEJB > Issue Type: Bug > Components: general >Affects Versions: 4.5.1 >Reporter: Xavier Dury > > In CdiEjbBean.destroyScopedStateful(), a test is made to check if a stateful > bean is invalidated (by calling instance.hashcode and getting a > NoSuchEjbException). The problem is that if the bean is actually invalidated, > it's logged and instance.toString() will be called and this will throw a > NoSuchEjbException outside of the try/catch. > {{ > private void destroyScopedStateful(final T instance, final > CreationalContext cc) { > try { > instance.hashCode(); // force the instance to be created - otherwise > we'll miss @PreDestroy for instance > } catch (NoSuchEJBException e) { > logger.log(Level.FINE, "The stateful instance " + instance + " can't be > removed since it was invalidated", e); > return; > } > ... > } > }} > error: > {{ > ERROR 14:56:13 [main] org.apache.openejb.cdi.CdiEjbBean - Exception thrown > while destroying bean instance : [MyStatefulBean, Name:null, WebBeans > Type:ENTERPRISE, API Types:[java.lang.Object,test.MyStateful], > Qualifiers:[javax.enterprise.inject.Any,javax.enterprise.inject.Default]] > javax.ejb.NoSuchEJBException: reference is invalid for MyStatefulBean > at > org.apache.openejb.core.ivm.BaseEjbProxyHandler.isValidReference(BaseEjbProxyHandler.java:314) > at > org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:219) > at $Proxy138.toString(Unknown Source) > at java.lang.String.valueOf(String.java:2826) > at java.lang.StringBuilder.append(StringBuilder.java:115) > at > org.apache.openejb.cdi.CdiEjbBean.destroyScopedStateful(CdiEjbBean.java:369) > at > org.apache.openejb.cdi.CdiEjbBean.destroyComponentInstance(CdiEjbBean.java:241) > at > org.apache.webbeans.component.AbstractInjectionTargetBean.destroyInstance(AbstractInjectionTargetBean.java:176) > at > org.apache.webbeans.component.AbstractOwbBean.destroyCreatedInstance(AbstractOwbBean.java:287) > at > org.apache.webbeans.portable.creation.InjectionTargetProducer.preDestroy(InjectionTargetProducer.java:132) > at > org.apache.webbeans.component.InjectionTargetWrapper.preDestroy(InjectionTargetWrapper.java:98) > at > org.apache.webbeans.component.AbstractOwbBean.destroy(AbstractOwbBean.java:251) > at > org.apache.openejb.cdi.CdiEjbBean$InstanceBean.destroy(CdiEjbBean.java:461) > }} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (OPENEJB-2009) Bug in CdiEjbBean
[ https://issues.apache.org/jira/browse/OPENEJB-2009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13609023#comment-13609023 ] Xavier Dury commented on OPENEJB-2009: -- I tried with OpenEJB 4.5.2-SNAPSHOT but I didn't go so far. I have a Stateful bean which belongs to a CDI custom scope. It seems that with 4.5.1, the bean can be retrieved from my scope without problem (it's correctly propagated). In 4.5.2-SNAPSHOT, my bean is created twice and is not correctly initialized, throwing an exception earlier. But from what I can see in 4.5.2-SNAPSHOT source code, CdiEjbBean.destroyScopedStateful() has not changed. > Bug in CdiEjbBean > - > > Key: OPENEJB-2009 > URL: https://issues.apache.org/jira/browse/OPENEJB-2009 > Project: OpenEJB > Issue Type: Bug > Components: general >Affects Versions: 4.5.1 >Reporter: Xavier Dury > > In CdiEjbBean.destroyScopedStateful(), a test is made to check if a stateful > bean is invalidated (by calling instance.hashcode and getting a > NoSuchEjbException). The problem is that if the bean is actually invalidated, > it's logged and instance.toString() will be called and this will throw a > NoSuchEjbException outside of the try/catch. > {{ > private void destroyScopedStateful(final T instance, final > CreationalContext cc) { > try { > instance.hashCode(); // force the instance to be created - otherwise > we'll miss @PreDestroy for instance > } catch (NoSuchEJBException e) { > logger.log(Level.FINE, "The stateful instance " + instance + " can't be > removed since it was invalidated", e); > return; > } > ... > } > }} > error: > {{ > ERROR 14:56:13 [main] org.apache.openejb.cdi.CdiEjbBean - Exception thrown > while destroying bean instance : [MyStatefulBean, Name:null, WebBeans > Type:ENTERPRISE, API Types:[java.lang.Object,test.MyStateful], > Qualifiers:[javax.enterprise.inject.Any,javax.enterprise.inject.Default]] > javax.ejb.NoSuchEJBException: reference is invalid for MyStatefulBean > at > org.apache.openejb.core.ivm.BaseEjbProxyHandler.isValidReference(BaseEjbProxyHandler.java:314) > at > org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:219) > at $Proxy138.toString(Unknown Source) > at java.lang.String.valueOf(String.java:2826) > at java.lang.StringBuilder.append(StringBuilder.java:115) > at > org.apache.openejb.cdi.CdiEjbBean.destroyScopedStateful(CdiEjbBean.java:369) > at > org.apache.openejb.cdi.CdiEjbBean.destroyComponentInstance(CdiEjbBean.java:241) > at > org.apache.webbeans.component.AbstractInjectionTargetBean.destroyInstance(AbstractInjectionTargetBean.java:176) > at > org.apache.webbeans.component.AbstractOwbBean.destroyCreatedInstance(AbstractOwbBean.java:287) > at > org.apache.webbeans.portable.creation.InjectionTargetProducer.preDestroy(InjectionTargetProducer.java:132) > at > org.apache.webbeans.component.InjectionTargetWrapper.preDestroy(InjectionTargetWrapper.java:98) > at > org.apache.webbeans.component.AbstractOwbBean.destroy(AbstractOwbBean.java:251) > at > org.apache.openejb.cdi.CdiEjbBean$InstanceBean.destroy(CdiEjbBean.java:461) > }} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (OPENEJB-2009) Bug in CdiEjbBean
[ https://issues.apache.org/jira/browse/OPENEJB-2009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13609074#comment-13609074 ] Romain Manni-Bucau commented on OPENEJB-2009: - snapshot is 4.6.0-SNAPSHOT > Bug in CdiEjbBean > - > > Key: OPENEJB-2009 > URL: https://issues.apache.org/jira/browse/OPENEJB-2009 > Project: OpenEJB > Issue Type: Bug > Components: general >Affects Versions: 4.5.1 >Reporter: Xavier Dury > > In CdiEjbBean.destroyScopedStateful(), a test is made to check if a stateful > bean is invalidated (by calling instance.hashcode and getting a > NoSuchEjbException). The problem is that if the bean is actually invalidated, > it's logged and instance.toString() will be called and this will throw a > NoSuchEjbException outside of the try/catch. > {{ > private void destroyScopedStateful(final T instance, final > CreationalContext cc) { > try { > instance.hashCode(); // force the instance to be created - otherwise > we'll miss @PreDestroy for instance > } catch (NoSuchEJBException e) { > logger.log(Level.FINE, "The stateful instance " + instance + " can't be > removed since it was invalidated", e); > return; > } > ... > } > }} > error: > {{ > ERROR 14:56:13 [main] org.apache.openejb.cdi.CdiEjbBean - Exception thrown > while destroying bean instance : [MyStatefulBean, Name:null, WebBeans > Type:ENTERPRISE, API Types:[java.lang.Object,test.MyStateful], > Qualifiers:[javax.enterprise.inject.Any,javax.enterprise.inject.Default]] > javax.ejb.NoSuchEJBException: reference is invalid for MyStatefulBean > at > org.apache.openejb.core.ivm.BaseEjbProxyHandler.isValidReference(BaseEjbProxyHandler.java:314) > at > org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:219) > at $Proxy138.toString(Unknown Source) > at java.lang.String.valueOf(String.java:2826) > at java.lang.StringBuilder.append(StringBuilder.java:115) > at > org.apache.openejb.cdi.CdiEjbBean.destroyScopedStateful(CdiEjbBean.java:369) > at > org.apache.openejb.cdi.CdiEjbBean.destroyComponentInstance(CdiEjbBean.java:241) > at > org.apache.webbeans.component.AbstractInjectionTargetBean.destroyInstance(AbstractInjectionTargetBean.java:176) > at > org.apache.webbeans.component.AbstractOwbBean.destroyCreatedInstance(AbstractOwbBean.java:287) > at > org.apache.webbeans.portable.creation.InjectionTargetProducer.preDestroy(InjectionTargetProducer.java:132) > at > org.apache.webbeans.component.InjectionTargetWrapper.preDestroy(InjectionTargetWrapper.java:98) > at > org.apache.webbeans.component.AbstractOwbBean.destroy(AbstractOwbBean.java:251) > at > org.apache.openejb.cdi.CdiEjbBean$InstanceBean.destroy(CdiEjbBean.java:461) > }} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira