I'm making good progress getting SubEtha running on 4.0.6, but now I
seem to have a strange and self-contradictory error:

[10-05-30 11:24:11.854] {main}
org.subethamail.core.queue.InjectListener.outboundQueue:
javax.enterprise.inject.UnsatisfiedResolutionException: Can't find a
bean for 
'java.util.concurrent.BlockingQueue<org.subethamail.core.queue.DeliveryQueueItem>'
because no beans match the type and bindings
[...@org.subethamail.core.queue.deliveryqueue()].
                               Beans:
                                   XmlBean[FileQueue,
{...@org.subethamail.core.queue.deliveryqueue(),
@javax.inject.Named(value=delivery), @Any()}, name=delivery,
@Singleton]
                                   XmlBean[FileQueue,
{...@org.subethamail.core.queue.injectqueue(),
@javax.inject.Named(value=inject), @Any()}, name=inject, @Singleton]

There is clearly a FileQueue with @DeliveryQueue present, yet the
manager can't seem to resolve it!

Here's the resin-web.xml declaration of the FileQueue:

        <jms:FileQueue>
                <queue:DeliveryQueue/>
                <ee:Named>delivery</ee:Named>
        </jms:FileQueue>

Here's the injection point in InjectListener:

        @Inject @DeliveryQueue BlockingQueue<DeliveryQueueItem> outboundQueue;

DeliveryQueue is pretty straightforward:

@Qualifier
@Target({FIELD,METHOD,PARAMETER})
@Retention(RUNTIME)
public @interface DeliveryQueue
{}

Any idea what might be wrong?

By the way, replacing our legacy plugin architecture (inherited from
JBoss4 days) with the @Any Instance<?> api produces amazingly clean
code!  Really fantastic stuff.

Thanks,
Jeff


_______________________________________________
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest

Reply via email to