<div dir="ltr">







<p class="">Ok,</p>
<p class="">My approach will be create the following classes:<br><br></p>
<p class="">* ProhibitedEJBAnnotationsAnnotationMarker - Mark the deployment if it has EJB annotations that are not allowed (Similar to CDI Annotation marker no Weld)</p>
<p class="">* ProhibitedEJBAnnotationsDeploymentUnitProcessor - Do the deployment rollback in case of the marker is present.</p>
<p class=""><br>Add the proper cleanup of the attachments no EjbCleanUpProcessor<br></p>
<p class="">Some auxilar classes to be created:<br></p>
<p class=""><span class="">public</span><span class=""> </span><span class="">enum</span><span class=""> </span>ProhibitedEJBAnnotations<span class=""> {</span><br></p>
<p class="">    <span class="">/**<br></span>     * javax.transaction.Transactional annotation.</p><p class="">     */</p><p class=""><span class="">    </span>TRANSACTIONAL<span class="">(Constants.J</span>AVAX_TRANSACTION<span class="">, </span><span class="">&quot;Transactional&quot;</span><span class="">),</span></p>
<p class="">...<br></p>
<p class="">    <span class="">private</span> <span class="">static</span> <span class="">class</span> Constants {<br></p>
<p class="">        <span class="">/**<br></span>         *  package javax.transaction<br>         */</p>
<p class="">        <span class="">public</span> <span class="">static</span> <span class="">final</span> DotName <span class="">JAVAX_TRANSACTION</span> = DotName.createSimple(<span class="">&quot;javax.transaction&quot;</span>);</p>
<p class="">...</p>
<p class="">//////////////////////////////////////<br>/**<br> * Marker for deployments that have prohibited EJB annotations present<br> */</p>
<p class=""><span class="">public</span> <span class="">final</span> <span class="">class</span> <span class="">ProhibitedEJBAnnotations</span>AnnotationMarker {    (Similar to CdiAnnotationMarker on Weld)</p>
<p class="">...<br></p>
<p class=""><span class="">public</span> <span class="">class</span> ProhibitedEJBAnnotationsDeploymentUnitProcessor <span class="">implements</span><br></p><p class="">DeploymentUnitProcessor {</p>
<p class=""><br>If you guys came up with  better names it will be good.<br></p><p class="">I was wondering as well if the CDIAnnotationMarker can be used directly from the Weld subsystem or it will be better isolate the subsystems?</p><p class="">Thx</p><div style="font-size:12.8000001907349px"><span style="font-family:Arial;font-size:small">________________</span><span style="font-family:Arial;font-size:small">__________</span><br></div><div style="font-size:12.8000001907349px"><div align="left" style="font-family:Arial;font-size:small">Eduardo Sant&#39;Ana da Silva </div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-03-28 15:05 GMT-03:00 Jason T. Greene <span dir="ltr">&lt;<a href="mailto:jason.greene@redhat.com" target="_blank">jason.greene@redhat.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Good question. The easiest solution is probably to change one of the EJB dups that looks at annotations to also check for @Transactional and fail accordingly.</div><div><br>Sent from my iPhone</div><div><div class="h5"><div><br>On Mar 28, 2015, at 11:56 AM, Eduardo Sant´Ana da Silva &lt;<a href="mailto:eduardo.santanadasilva@gmail.com" target="_blank">eduardo.santanadasilva@gmail.com</a>&gt; wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr">







<p>I&#39;m looking at this issue:<br><a href="https://issues.jboss.org/browse/WFLY-4169" target="_blank">https://issues.jboss.org/browse/WFLY-4169</a></p>
<p>In the ejb-3_2 specification :<br>It is illegal to associate JTA transactional interceptors (see [8]) with Enterprise JavaBeans. The EJB Container should fail deployment of such applications.[39]</p>
<p>@Transaction annotation was introduced in JTA 1.2, <br></p>
<p>As Narayana 5.0.0.M3 is now JTA 1.2 compliant, and it was introduced on Wildfly since version WildFly 8.0.0.Beta1, what should be done?<br></p>
<p>Because this restriction could be removed in the future versions:<br></p>
<p>[39] This restriction may be removed in a future release of this specification<br></p>
<p>If this is needed, how to proceed? Should be done on Weld subsystem, something similar with the annotations markers, just to log the problem or it will be more tricky, since the deployment should be rolled back (by the specification)?</p>-- <br><div><div dir="ltr"><div><span style="font-family:Arial;font-size:small">________________</span><span style="font-family:Arial;font-size:small">__________</span><br></div><div><div align="left" style="font-family:Arial;font-size:small">Eduardo Sant&#39;Ana da Silva</div><div style="font-family:Arial;font-size:small"><br></div></div></div></div>
</div>
</div></blockquote></div></div><blockquote type="cite"><div><span>_______________________________________________</span><br><span>wildfly-dev mailing list</span><br><span><a href="mailto:wildfly-dev@lists.jboss.org" target="_blank">wildfly-dev@lists.jboss.org</a></span><br><span><a href="https://lists.jboss.org/mailman/listinfo/wildfly-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/wildfly-dev</a></span></div></blockquote></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><span style="font-family:Arial;font-size:small">________________</span><span style="font-family:Arial;font-size:small">__________</span><br></div><div><div align="left" style="font-family:Arial;font-size:small">Eduardo Sant&#39;Ana da Silva - Dr.</div><div style="font-family:Arial;font-size:small"><font face="Arial">Pesquisador / Consultor de TI<br></font></div><div style="font-family:Arial;font-size:small"><br></div></div></div></div>
</div>