<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    <br>
    Why don't you import the package ("com.example.thirdpackage") within
    your bundle Bundle A too ?<br>
    <br>
    Regards,<br>
    <br>
    Charles M.<br>
    <br>
    On 30/05/15 14:53, Александр Свиридов wrote:<br>
    <blockquote cite="mid:1432990387.12789305@f378.i.mail.ru"
      type="cite">
      <div class="post-text">
        <p>I use javase and solution osgi (felix)+cdi(weld)+paxcdi. I
          have two bundles A and B. Bundle B is a lib bundle.</p>
        <p>In bundle A I have one class and one package.</p>
        <pre class="lang-java prettyprint prettyprinted"><code><span class="kwd">package</span><span class="pln"> com</span><span class="pun">.</span><span class="pln">example</span><span class="pun">.</span><span class="pln">firstpackage</span><span class="pun">;</span><span class="kwd">import</span><span class="pln"> com</span><span class="pun">.</span><span class="pln">example</span><span class="pun">.</span><span class="pln">secondpackage</span><span class="pun">.</span><span class="typ">Class2</span><span class="pun">;</span><span class="kwd">public</span><span class="kwd">class</span><span class="typ">Class1</span><span class="pun">{</span><span class="lit">@Inject</span><span class="kwd">private</span><span class="typ">Class2</span><span class="pln"> class2</span><span class="pun">;</span><span class="pun">}</span></code></pre>
        <p>In bundle B I have two classes and two packages</p>
        <pre class="lang-java prettyprint prettyprinted"><code><span class="kwd">package</span><span class="pln"> com</span><span class="pun">.</span><span class="pln">example</span><span class="pun">.</span><span class="pln">secondpackage</span><span class="pun">;</span><span class="kwd">import</span><span class="pln"> com</span><span class="pun">.</span><span class="pln">example</span><span class="pun">.</span><span class="pln">thirdpackage</span><span class="pun">.</span><span class="typ">Class3</span><span class="pun">;</span><span class="kwd">public</span><span class="kwd">class</span><span class="typ">Class2</span><span class="pun">{</span><span class="lit">@Inject</span><span class="kwd">private</span><span class="typ">Class3</span><span class="pln"> class3</span><span class="pun">;</span><span class="pun">}</span></code></pre>
        <p>and</p>
        <pre class="lang-java prettyprint prettyprinted"><code><span class="kwd">package</span><span class="pln"> com</span><span class="pun">.</span><span class="pln">example</span><span class="pun">.</span><span class="pln">thirdpackage</span><span class="pun">;</span><span class="kwd">public</span><span class="kwd">class</span><span class="typ">Class3</span><span class="pun">{</span><span class="pun">....</span><span class="pun">}</span></code></pre>
        <p>I install and start both bundles.</p>
        <p>The problem - pax (or weld) for injecting in classes of
          bundle A scans only those packages which are imported for
          classes IN bundle A. In my example - CDI for injecting in
          Class1 Class2 will scan com.example.secondpackage of bundle B.
          However, it will throw exception as Class2 needs Class3 but
          com.example.thirdpackage is not scanned for bundle A (as it's
          not imported!!!). com.example.thirdpackage is only scanned for
          bundle B but, as I understand every bundles for cdi has its
          own scope. How to fix it?</p>
      </div>
      <br>
      <br>
      <br>
      -- <br>
      Александр Свиридов
      <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>