Comments inline.

On 7/3/07, Francisco Borges <[EMAIL PROTECTED]> wrote:

Hello,

I'm trying to port this J2EE module to Geronimo1.2, but I'm not familiar
with EJB's, so I might be missing something obvious.

[...]

I managed to deploy both our resource adapter to a connection factory (as
a RAR file), and our sample session (JAR+EJB).

I can start running the sample, but from it I can't get a connection to
the ConnectionFactory.

From "12.3.6 Resolving References from EJBs" at
<http://www.chariotsolutions.com/geronimo/geronimo-1.1/ejb-structure.html>
I gather that on Geronimo (differently from JBoss) after deploying the
RAR, in order to be able to find it from my sample app, I need to declare
it as a resource-ref at the sample's "openejb-jar.xml" and "ejb-jar.xml".
Is this correct?


Yes

If so, how should I do this? I managed to declare a resource-ref on
openejb-jar.xml, but not on the ejb-jar.xml.

On the openejb-jar.xml, I have:

""""
      <session>
         <ejb-name>XhiveSampleSessionBean</ejb-name>
         <jndi-name>com.xhive.ejb.XhiveSampleSessionEJB</jndi-name>
         <ejb-ref>
            <ref-name>ejb/XhiveDS</ref-name>
            <ejb-link>XhiveDS</ejb-link>
         </ejb-ref>
      </session>
""""


<ejb-ref> is not the element to be used. Please use <resource-ref> as below:

     <session>
        <ejb-name>XhiveSampleSessionBean</ejb-name>
        <jndi-name>com.xhive.ejb.XhiveSampleSessionEJB</jndi-name>
        <nam:resource-ref xmlns:nam="
http://geronimo.apache.org/xml/ns/naming-1.2";>
           <ref-name>jdbc/XhiveDS</ref-name>
           <ref-link>XhiveDS</ref-link>
        </nam:resource-ref>
     </session>

What should I add to ejb-jar.xml?

I've tried adding something like
"""
    <session>
      <ejb-name>XhiveSampleSessionBean</ejb-name>
        [....]
      <resource-ref>
              <res-ref-name>ejb/XhiveDS</res-ref-name>
             <res-type>

com.xhive.j2ee.connector.interfaces.XhiveCCIConnectionFactoryIf
            </res-type>
     </resource-ref>
     </session>
"""


JNDI namespace for datasources should ideally be jdbc. Try changing
<res-ref-name> to "jdbc/XhiveDS" (plus update jndi lookup code in your ejbs)
as below, in sync with <ref-name> in openejb-jar.xml, and see if it solves
the problem.

    <resource-ref>
      <res-ref-name>jdbc/XhiveDS</res-ref-name>
      <res-type>
        com.xhive.j2ee.connector.interfaces.XhiveCCIConnectionFactoryIf
      </res-type>
      <res-auth>Container</res-auth>
      <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>

But with this last change the Sample EJB won't deploy. For clarity, I'm
attaching the 4 xml files I'm using for RAR and EJB+JAR deployment.

Any hints, or tips are heartily appreciated,


If this doesn't solve, do post the errors you are seeing while
deploying/running.

Cheers,
--
Francisco Borges


- Shiva

Reply via email to