I think there are a couple problems here:

>>  <connector
>> configId="ihs-booker-JMSResources"
>> parentId="org/apache/geronimo/ActiveMQServer">
>>    <resourceadapter>
>>      <!-- how to connect to the JMS Server -->
>>      <resourceadapter-instance>
>>
>> <resourceadapter-name>AvailLogger</resourceadapter-name>
>>        <config-property-setting
>> name="ServerUrl">tcp://localhost:61616</config-property-setting>
>>        <workmanager>
>>  <name>DefaultWorkManager</name>
>>        </workmanager>
>>      </resourceadapter-instance>>>  <connector
>> configId="ihs-booker-JMSResources"
>> parentId="org/apache/geronimo/ActiveMQServer">
>>    <resourceadapter>
>>      <!-- how to connect to the JMS Server -->
>>      <resourceadapter-instance>
>>
>> <resourceadapter-name>AvailLogger</resourceadapter-name>
>>        <config-property-setting
>> name="ServerUrl">tcp://localhost:61616</config-property-setting>
>>        <workmanager>
>>  <name>DefaultWorkManager</name>
>>        </workmanager>
>>      </resourceadapter-instance>

I think you should remove the parentId attribute and that you need a different tag in the workmanager reference:

            <workmanager>
                <gbean-link>DefaultWorkManager</gbean-link>
            </workmanager>

This is more like the current activemq plan anyway, and I think it will let your resource adapter start.

thanks
david jencks



On Jan 13, 2006, at 11:29 AM, Chad Boyd wrote:

OK, I think we are getting closer.  Thanks for your recommendation, David.  It made total sense after looking at it.  Now I'm getting a different error:

java.lang.IllegalStateException: Cannot retrieve the value for non-persistent attribute containerName when GBeanInstance is DESTROYED
        at org.apache.geronimo.gbean.runtime.GBeanInstance.getAttribute(GBeanInstance.java:668)
        at org.apache.geronimo.kernel.basic.BasicKernel.getAttribute(BasicKernel.java:164)
        at org.apache.geronimo.kernel.KernelGBean.getAttribute(KernelGBean.java:113)
        at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:835)
        at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:178)
        at org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServerDelegate.java:117)
        at mx4j.remote.rmi.RMIConnectionInvoker.invoke(RMIConnectionInvoker.java:219)
        at sun.reflect.GeneratedMethodAccessor275.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at mx4j.remote.rmi.RMIConnectionProxy.invoke(RMIConnectionProxy.java:34)        at mx4j.remote.rmi.RMIConnectionSubjectInvoker.chain(RMIConnectionSubjectInvoker.java:99)
        at mx4j.remote.rmi.RMIConnectionSubjectInvoker.access$000(RMIConnectionSubjectInvoker.java:31)
        at mx4j.remote.rmi.RMIConnectionSubjectInvoker$1.run(RMIConnectionSubjectInvoker.java:90)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
        at mx4j.remote.MX4JRemoteUtils.subjectInvoke(MX4JRemoteUtils.java:163)
        at mx4j.remote.rmi.RMIConnectionSubjectInvoker.subjectInvoke(RMIConnectionSubjectInvoker.java:86)
        at mx4j.remote.rmi.RMIConnectionSubjectInvoker.invoke(RMIConnectionSubjectInvoker.java:80)
        at $Proxy0.invoke(Unknown Source)
        at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:221)
        at sun.reflect.GeneratedMethodAccessor330.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
        at sun.rmi.transport.Transport$1.run(Transport.java:148)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
        at java.lang.Thread.run(Thread.java:534)
    Deployed ihs-booker

      `-> tbook.war

      `-> tbook-ejb.jar

      `-> activemq-ra-3.2.1.rar

It seems like it deployed the EAR, and when I look in the Geronimo console under JMS, it shows my ConnectionFactory with a state value of "Starting".  It also shows my queue under the "JMS Destination Manger" section.  If I click on the link "test connection" beside my ConnectionFactory, I get this error:

Failed: Operations can only be invoke while the GBean is running: geronimo.server:J2EEApplication=ihs-booker,J2EEServer=geronimo,JCAResource=activemq-ra-3.2.1.rar,j2eeType=JCAManagedConnectionFactory,name=ConnectionFactory

So, it seems the GBean that is responsible for my resource adapter isn't running?

On Fri, 2006-01-13 at 11:21 -0800, David Jencks wrote:
I think the problem is that you are trying to connect the mdb to the  
outbound connector rather than the resource adapter.  In the openejb  
jar I think you want

>> <ejb-name>com.tbook.supplier.hotel.log.AvailLoggerMDB</ejb-name>
>>          <resource-adapter>
>>  <resource-link> AvailLogger </resource-link>
>>          </resource-adapter>


Hope this helps
david jencks



On Jan 13, 2006, at 9:30 AM, Aaron Mulder wrote:

> All your settings look good on the face of it.  From the "query"
> below, it seems like it's looking for the resource adapter at the
> server level and not seeing the one in the same application.  I'm not
> sure why that would be the case.  David J, any ideas?
>
> Thanks,
>     Aaron
>
> On 1/13/06, Chad Boyd <[EMAIL PROTECTED]> wrote:
>>  I'm having trouble getting an MDB deployed.  I'm using an
>> application-scoped resource adapter (including it in the EAR).   
>> The error
>> message I'm getting when running the deploy tool is this:
>>
>>  Error: Unable to distribute tbook.ear: Unknown resource adapter
>>      reference
>>
>> (query=geronimo.server:J2EEApplication=null,J2EEServer=geronimo,j2eeT 
>> ype=JCAResourceAdapter,name=ConnectionFactory,*)
>>
>>  Here are the relevant sections of my jms-resource-plan.xml, ejb- 
>> jar.xml,
>> openejb-jar.xml, geronimo-application.xml and application.xml  
>> descriptors:
>>
>>  jms-resource-plan.xml:
>>
>>  <connector
>> xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector"
>> configId="ihs-booker-JMSResources"
>> parentId="org/apache/geronimo/ActiveMQServer">
>>    <resourceadapter>
>>      <!-- how to connect to the JMS Server -->
>>      <resourceadapter-instance>
>>
>> <resourceadapter-name>AvailLogger</resourceadapter-name>
>>        <config-property-setting
>> name="ServerUrl">tcp://localhost:61616</config-property-setting>
>>        <workmanager>
>>  <name>DefaultWorkManager</name>
>>        </workmanager>
>>      </resourceadapter-instance>
>>      <!-- defines a ConnectionFactory -->
>>      <outbound-resourceadapter>
>>        <connection-definition>
>>
>> <connectionfactory-interface>javax.jms.ConnectionFactory</ 
>> connectionfactory-interface>
>>          <connectiondefinition-instance>
>>            <name>ConnectionFactory</name>
>>
>> <implemented-interface>javax.jms.QueueConnectionFactory</ 
>> implemented-interface>
>>
>> <implemented-interface>javax.jms.TopicConnectionFactory</ 
>> implemented-interface>
>>            <connectionmanager>
>>              <xa-transaction>
>>                <transaction-caching />
>>              </xa-transaction>
>>              <single-pool>
>>                <max-size>10</max-size>
>>                <min-size>0</min-size>
>>
>> <blocking-timeout-milliseconds>5000</blocking-timeout-milliseconds>
>>
>> <idle-timeout-minutes>0</idle-timeout-minutes>
>>                <match-one/>
>>              </single-pool>
>>            </connectionmanager>
>>          </connectiondefinition-instance>
>>        </connection-definition>
>>      </outbound-resourceadapter>
>>    </resourceadapter>
>>    <!-- defines a Queue -->
>>    <adminobject>
>>      <adminobject-interface>javax.jms.Queue</adminobject-interface>
>>
>> <adminobject-class>org.codehaus.activemq.message.ActiveMQQueue</ 
>> adminobject-class>
>>      <adminobject-instance>
>>
>> <message-destination-name>queue/AvailLoggerQueue</message- 
>> destination-name>
>>        <config-property-setting
>> name="PhysicalName">queue/AvailLoggerQueue</config-property-setting>
>>      </adminobject-instance>
>>    </adminobject>
>>  </connector>
>>
>>  ejb-jar.xml:
>>
>>  <?xml version="1.0"?>
>>  <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise
>> JavaBeans 1.1//EN'
>> 'http://java.sun.com/j2ee/dtds/ejb-jar_1_1.dtd'>
>>  <ejb-jar>
>>      <enterprise-beans>
>>          ...
>>          <message-driven>
>> <ejb-name>com.tbook.supplier.hotel.log.AvailLoggerMDB</ejb-name>
>> <ejb-class>com.tbook.supplier.hotel.log.AvailLoggerMDB</ejb-class>
>>  <transaction-type>Container</transaction-type>
>>  <acknowledge-mode>AUTO_ACKNOWLEDGE</acknowledge-mode>
>>  <message-driven-destination>
>>  <destination-type>javax.jms.Queue</destination-type>
>> <subscription-durability>NonDurable</subscription-durability>
>>  </message-driven-destination>
>>  </message-driven>
>>      </enterprise-beans>
>>      ...
>>  </ejb-jar>
>>
>>  openejb-jar.xml:
>>
>>  <?xml version="1.0" encoding="utf-8"?>
>>  <openejb-jar
>> xmlns="http://www.openejb.org/xml/ns/openejb-jar"
>> xmlns:naming="http://geronimo.apache.org/xml/ns/naming"
>> xmlns:security="http://geronimo.apache.org/xml/ns/security"
>> xmlns:sys="http://geronimo.apache.org/xml/ns/deployment"
>> configId="ihs-booker-EJBs">
>>      <enterprise-beans>
>>          ...
>>          <message-driven>
>>
>> <ejb-name>com.tbook.supplier.hotel.log.AvailLoggerMDB</ejb-name>
>>          <resource-adapter>
>>  <resource-link>ConnectionFactory</resource-link>
>>          </resource-adapter>
>>          <activation-config>
>>          <activation-config-property>
>>
>> <activation-config-property-name>destination</activation-config- 
>> property-name>
>>
>> <activation-config-property-value>queue/AvailLoggerQueue</ 
>> activation-config-property-value>
>>
>>          </activation-config-property>
>>          <activation-config-property>
>>
>> <activation-config-property-name>destinationType</activation- 
>> config-property-name>
>>
>> <activation-config-property-value>javax.jms.Queue</activation- 
>> config-property-value>
>>
>>          </activation-config-property>
>>          </activation-config>
>>     </message-driven>
>>      </enterprise-beans>
>>  </openejb-jar>
>>
>>  geronimo-application.xml:
>>
>>  <application
>> xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.0"
>> configId="ihs-booker">
>>  <module>
>>      <connector>activemq-ra-3.2.1.rar</connector>
>>       <alt-dd>jms-resource-plan.xml</alt-dd>
>>     </module>
>>      <module>
>>          <ejb>tbook-ejb.jar</ejb>
>>          <alt-dd>openejb-jar.xml</alt-dd>
>>      </module>
>>  </application>
>>
>>  application.xml:
>>
>>  <?xml version="1.0" encoding="UTF-8"?>
>>  <!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE
>> Application 1.3//EN"
>> "http://java.sun.com/dtd/application_1_3.dtd">
>>  <application>
>>  <display-name>IHS Booking Engine</display-name>
>>  <module>
>>  <web>
>>  <web-uri>tbook.war</web-uri>
>>  <context-root>/</context-root>
>>  </web>
>>  </module>
>>  <module>
>>  <ejb>tbook-ejb.jar</ejb>
>>  </module>
>>  <module>
>>  <connector>activemq-ra-3.2.1.rar</connector>
>>  </module>
>>  </application>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.1 (GNU/Linux)
>>
>> iD8DBQBDx+G/+D9PVFWNrJ0RAmOTAJwPV7agWSqFETurwWVncry0eFGgYwCeMU8/
>> MI7n3FkJ0JI5DVuJ7kGe//Q=
>> =DVIC
>> -----END PGP SIGNATURE-----
>>
>>
>>


Reply via email to