You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by John <pm...@yahoo.com> on 2007/01/31 22:27:08 UTC

ActiveMQ Reference/Dependencies

I have seen similar questions posted here which have helped me along to some extent, but I've hit a dead end.



I am trying to deploy a simple servlet which posts a message to a JMS queue.



For the sake of simplicity in this message, I am only going to reference the connection factory, as I assume once I figure out how to map that resource properly, I can figure out the queue.



The code does this:



ConnectionFactory qConnectionFactory = (ConnectionFactory)context.lookup("java:comp/env/jms/myConnFactoryRef");



My web.xml has this:



    <resource-ref>

        <res-ref-name>jms/myConnFactoryRef</res-ref-name>

         <res-type>javax.jms.ConnectionFactory</res-type>

        <res-auth>Container</res-auth>

    </resource-ref>



My FULL geronimo-web.xml is as follows:



<?xml version="1.0" encoding="UTF-8"?>    

<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1" xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.1"  xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"  xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">

  <dep:environment>

     <dep:moduleId>

      <dep:groupId>default</dep:groupId>

      <dep:artifactId>SimpleMDBWeb</dep:artifactId>

      <dep:version>1.0</dep:version>

      <dep:type>car</dep:type>

    </dep:moduleId>



    <dep:dependencies>

      <dep:dependency>

          <dep:groupId>geronimo</dep:groupId>

          <dep:artifactId>activemq-broker</dep:artifactId>

          <dep:version>1.1.1</dep:version>

          <dep:type>car</dep:type>

      </dep:dependency>

    </dep:dependencies>



   </dep:environment>



  <context-root>/SimpleMDBWeb</context-root>



  <nam:resource-ref>

    <nam:ref-name>jms/myConnFactoryRef</nam:ref-name>

    <nam:resource-link>DefaultActiveMQConnectionFactory</nam:resource-link>

  </nam:resource-ref>



  <nam:resource-ref>

    <nam:ref-name>jms/myQueue</nam:ref-name>

    <nam:resource-link>SendReceiveQueue</nam:resource-link>

  </nam:resource-ref>



</web-app>





The error I am getting is:



"Unable to resolve resource reference 'jms/myConnFactoryRef' (Could not find resource 'DefaultActiveMQConnectionFactory'.  Perhaps it has not yet been configured, or your application does not have a dependency declared for that resource module?)"



It would seem from the error that the resource reference is properly linked to the resource I want to use, but I am having a dependency issue.  I have tried using "activemq" instead of "activemq-broker."  I have tried using both.  I have tried creating my own JMS resource in Geronimo and referencing that resource as a dependency instead of, and in addition to activemq and activemq-broker.  No matter what I do, I get the above error.



All the web pages and sample geronimo-web.xml files I have found seem to support my usage above, but I am obviously still doing something wrong.


I am using Geronimo 1.1.1.



I would appreciate any pointer in the right direction.



Thanks!

John







 
____________________________________________________________________________________
Expecting? Get great news right away with email Auto-Check. 
Try the Yahoo! Mail Beta.
http://advision.webevents.yahoo.com/mailbeta/newmail_tools.html 

Re: ActiveMQ Reference/Dependencies

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
I think your dependency should be on activemq not activemq-broker.  If
I remember right, the activemq-broker module just configures the core
ActiveMQ broker and the activemq module has the basic connection
factories and stuff.

Thanks,
      Aaron

On 1/31/07, John <pm...@yahoo.com> wrote:
> I have seen similar questions posted here which have helped me along to some extent, but I've hit a dead end.
>
>
>
> I am trying to deploy a simple servlet which posts a message to a JMS queue.
>
>
>
> For the sake of simplicity in this message, I am only going to reference the connection factory, as I assume once I figure out how to map that resource properly, I can figure out the queue.
>
>
>
> The code does this:
>
>
>
> ConnectionFactory qConnectionFactory = (ConnectionFactory)context.lookup("java:comp/env/jms/myConnFactoryRef");
>
>
>
> My web.xml has this:
>
>
>
>     <resource-ref>
>
>         <res-ref-name>jms/myConnFactoryRef</res-ref-name>
>
>          <res-type>javax.jms.ConnectionFactory</res-type>
>
>         <res-auth>Container</res-auth>
>
>     </resource-ref>
>
>
>
> My FULL geronimo-web.xml is as follows:
>
>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1" xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.1"  xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"  xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">
>
>   <dep:environment>
>
>      <dep:moduleId>
>
>       <dep:groupId>default</dep:groupId>
>
>       <dep:artifactId>SimpleMDBWeb</dep:artifactId>
>
>       <dep:version>1.0</dep:version>
>
>       <dep:type>car</dep:type>
>
>     </dep:moduleId>
>
>
>
>     <dep:dependencies>
>
>       <dep:dependency>
>
>           <dep:groupId>geronimo</dep:groupId>
>
>           <dep:artifactId>activemq-broker</dep:artifactId>
>
>           <dep:version>1.1.1</dep:version>
>
>           <dep:type>car</dep:type>
>
>       </dep:dependency>
>
>     </dep:dependencies>
>
>
>
>    </dep:environment>
>
>
>
>   <context-root>/SimpleMDBWeb</context-root>
>
>
>
>   <nam:resource-ref>
>
>     <nam:ref-name>jms/myConnFactoryRef</nam:ref-name>
>
>     <nam:resource-link>DefaultActiveMQConnectionFactory</nam:resource-link>
>
>   </nam:resource-ref>
>
>
>
>   <nam:resource-ref>
>
>     <nam:ref-name>jms/myQueue</nam:ref-name>
>
>     <nam:resource-link>SendReceiveQueue</nam:resource-link>
>
>   </nam:resource-ref>
>
>
>
> </web-app>
>
>
>
>
>
> The error I am getting is:
>
>
>
> "Unable to resolve resource reference 'jms/myConnFactoryRef' (Could not find resource 'DefaultActiveMQConnectionFactory'.  Perhaps it has not yet been configured, or your application does not have a dependency declared for that resource module?)"
>
>
>
> It would seem from the error that the resource reference is properly linked to the resource I want to use, but I am having a dependency issue.  I have tried using "activemq" instead of "activemq-broker."  I have tried using both.  I have tried creating my own JMS resource in Geronimo and referencing that resource as a dependency instead of, and in addition to activemq and activemq-broker.  No matter what I do, I get the above error.
>
>
>
> All the web pages and sample geronimo-web.xml files I have found seem to support my usage above, but I am obviously still doing something wrong.
>
>
> I am using Geronimo 1.1.1.
>
>
>
> I would appreciate any pointer in the right direction.
>
>
>
> Thanks!
>
> John
>
>
>
>
>
>
>
>
> ____________________________________________________________________________________
> Expecting? Get great news right away with email Auto-Check.
> Try the Yahoo! Mail Beta.
> http://advision.webevents.yahoo.com/mailbeta/newmail_tools.html
>