<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Hi Emily, comments inline.<br>
<br>
<div class="moz-cite-prefix">On 05/06/2015 05:38 PM, Emily Jiang
wrote:<br>
</div>
<blockquote
cite="mid:CAECq3A9x9XuQh_66c9s2vvoN3FHiXayiUVCqnOrQ5hOoApgMQg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div>
<div>
<div>I have a few questions on ejb integration on Weld. <br>
<br>
</div>
1)Does Weld handle the instance creation for ejb (using
injectionTarget.produce) or delegate the instance creation
to EJB container? I guess Weld will create the instead as
it can manage decorators. If not, how can decorators be
managed? Please confirm.<br>
</div>
</div>
</div>
</div>
</blockquote>
Correct. Weld creates EJB instances using InjectionTarget.produce()<br>
<blockquote
cite="mid:CAECq3A9x9XuQh_66c9s2vvoN3FHiXayiUVCqnOrQ5hOoApgMQg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div>
<div><br>
</div>
2) When Weld creates the EJB instance, how can the other
non-CDI aroundconstruct interceptors (such as the
interceptors defined via ejb-jar.xml or @Interceptors) be
passed in? I found out the WeldCreationContext and
AroundConstructCallback but I cannot find anything mentioned
in the weld reference doc. Is this the right plugin point?<br>
</div>
</div>
</div>
</blockquote>
Correct, AroundConstructCallback is the API you need to use. The
JavaDoc should be helpful. Let me know if anything is not clear.
I'll add a note about it to the refdoc.<br>
<blockquote
cite="mid:CAECq3A9x9XuQh_66c9s2vvoN3FHiXayiUVCqnOrQ5hOoApgMQg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div><br>
</div>
3)If Weld creates the EJB instance, how can all interceptors
(cdi style and ejb style) be invoked? Will the instance need
to be passed back to EJB container together with all CDI
interceptors (get hold of them via
EjbEndpointServiceImpl.java) and EJB container needs to manage
the interceptors being invoked?<br>
</div>
</div>
</blockquote>
For interception type other than @AroundConstruct we leave it up to
the EJB implementation to handle interception. Information about CDI
interceptors is exposed to the EJB implementation via
EjbServices.registerInterceptors()<br>
<blockquote
cite="mid:CAECq3A9x9XuQh_66c9s2vvoN3FHiXayiUVCqnOrQ5hOoApgMQg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div><br>
</div>
4)In Weld spec, it says you must register the
SessionBeanInterceptor as the inner most interceptor in the
stack for all EJBS. Can you clarify what inner most means? Does
this interceptor need to be the first EJB interceptor to be
called or the last EJB interceptor to be invoked?<br>
</div>
</blockquote>
Not sure why it says inner most - it should be outer most instead
that is it should be called as first so that the @RequestScope is
available for the other interceptors called later in the chain.<br>
<blockquote
cite="mid:CAECq3A9x9XuQh_66c9s2vvoN3FHiXayiUVCqnOrQ5hOoApgMQg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div><br clear="all">
<div><br>
-- <br>
<div class="gmail_signature">Thanks<br>
Emily<br>
=================<br>
Emily Jiang<br>
<a moz-do-not-send="true"
href="mailto:ejiang@apache.org"
target="_blank">ejiang@apache.org</a><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
weld-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:weld-dev@lists.jboss.org">weld-dev@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/weld-dev">https://lists.jboss.org/mailman/listinfo/weld-dev</a></pre>
</blockquote>
<br>
</body>
</html>