I'm having a good amount of troubles trying to get an EAR deployed from a
relatively small Geronimo application on geronimo 1.1.1

Here is the output I'm getting

C:\geronimo-1.1.1\bin>deploy --user system --password manager deploy
c:\j2g-demo
-app\bin\geronimo-application.xml c:\j2g-demo-app\bin\TravelApp.ear
Using GERONIMO_BASE:   C:\geronimo-1.1.1
Using GERONIMO_HOME:   C:\geronimo-1.1.1
Using GERONIMO_TMPDIR: C:\geronimo-1.1.1\var\temp
Using JRE_HOME:        C:\Program Files\Java\jdk1.5.0_11
   Error: Unable to distribute TravelApp.ear: Unable to resolve
   resource reference 'jdbc/DefaultDS' (Could not auto-map to resource.
    Try adding a resource-ref mapping to your Geronimo deployment
   plan.)


I'm relatively sure this issue is coming from the openejb-jar.xml file, and
in the cmp-connection-factory resource-link tag at that.
Here is that segment of that particular XML
 <naming:cmp-connection-factory>
   <naming:resource-link>DefaultDS</naming:resource-link>
 </naming:cmp-connection-factory>

(The reason I believe it to be here is due to the fact that changing
defaultds in that tag changes the defaultds in the deployment error)

I've tried to do as it recommends, with adding a resource-ref mapping, but
can't quite figure out the proper location/syntax for it

I'm GUESSING there is something that I'm just missing due to inexperience,
and am hoping one of you guys that's a good deal more seasoned might be able
to point it out ot me.

Thanks!

For reference here is a copy of the entire openejb-jar.xml file.
-------------------------------------
<?xml version="1.0" encoding="UTF-8"?>

<openejb-jar xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1";
xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.1"; xmlns:security="
http://geronimo.apache.org/xml/ns/security-1.1"; xmlns:sys="
http://geronimo.apache.org/xml/ns/deployment-1.1";>
 <sys:environment>
   <sys:moduleId>
     <sys:groupId>j2g.java</sys:groupId>
     <sys:artifactId>ejb-module</sys:artifactId>
     <sys:version>1.0</sys:version>
     <sys:type>jar</sys:type>
   </sys:moduleId>
   <sys:dependencies>
   <sys:dependency>
 <sys:groupId>j2g</sys:groupId>
 <sys:artifactId>jms</sys:artifactId>
 <sys:version>1.0</sys:version>
 <sys:type>rar</sys:type>
</sys:dependency>
<sys:dependency>
       <sys:groupId>j2g.java</sys:groupId>
       <sys:artifactId>DefaultDS</sys:artifactId>
</sys:dependency>
<sys:dependency>
 <sys:groupId>j2g</sys:groupId>
 <sys:artifactId>security</sys:artifactId>
 <sys:version>1.0</sys:version>
 <sys:type>rar</sys:type>
</sys:dependency>
</sys:dependencies>
 </sys:environment>
 <naming:cmp-connection-factory>
   <naming:resource-link>DefaultDS</naming:resource-link>
 </naming:cmp-connection-factory>
 <enforce-foreign-key-constraints/>
 <enterprise-beans>
   <entity>
     <ejb-name>CustomerEJB</ejb-name>
     <table-name>Customer</table-name>
     <cmp-field-mapping>
       <cmp-field-name>id</cmp-field-name>
       <table-column>ID</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>lastName</cmp-field-name>
       <table-column>LAST_NAME</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>firstName</cmp-field-name>
       <table-column>FIRST_NAME</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>email</cmp-field-name>
       <table-column>EMAIL</table-column>
     </cmp-field-mapping>
<resource-ref>
       <ref-name>jdbc/TravelDB</ref-name>
       <pattern>
         <groupId>j2g.java</groupId>
         <artifactId>DefaultDS</artifactId>
         <name>DefaultDS</name>
       </pattern>
   </resource-ref>
   </entity>
   <entity>
     <ejb-name>AgentEJB</ejb-name>
     <table-name>Agent</table-name>
     <cmp-field-mapping>
       <cmp-field-name>id</cmp-field-name>
       <table-column>ID</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>firstName</cmp-field-name>
       <table-column>FIRST_NAME</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>lastName</cmp-field-name>
       <table-column>LAST_NAME</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>organization</cmp-field-name>
       <table-column>ORGANIZATION</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>login</cmp-field-name>
       <table-column>LOGIN</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>passwordHash</cmp-field-name>
       <table-column>PASSWORDHASH</table-column>
     </cmp-field-mapping>
   </entity>
   <entity>
     <ejb-name>CruiseEJB</ejb-name>
     <table-name>Cruise</table-name>
     <cmp-field-mapping>
       <cmp-field-name>id</cmp-field-name>
       <table-column>ID</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>destination</cmp-field-name>
       <table-column>DESTINATION</table-column>
     </cmp-field-mapping>
   </entity>
   <entity>
     <ejb-name>CabinEJB</ejb-name>
     <table-name>Cabin</table-name>
     <cmp-field-mapping>
       <cmp-field-name>id</cmp-field-name>
       <table-column>ID</table-column>
     </cmp-field-mapping>
     <cmp-field-mapping>
       <cmp-field-name>number</cmp-field-name>
       <table-column>NUMBER</table-column>
     </cmp-field-mapping>
   </entity>
   <entity>
     <ejb-name>ReservationEJB</ejb-name>
     <table-name>Reservation</table-name>
     <cmp-field-mapping>
       <cmp-field-name>id</cmp-field-name>
       <table-column>ID</table-column>
     </cmp-field-mapping>
<resource-ref>
       <ref-name>jdbc/TravelDB</ref-name>
       <pattern>
         <groupId>j2g.java</groupId>
         <artifactId>DefaultDS</artifactId>
         <name>DefaultDS</name>
       </pattern>
   </resource-ref>
   </entity>
   <entity>
     <ejb-name>TicketEJB</ejb-name>
     <table-name>Ticket</table-name>
     <cmp-field-mapping>
       <cmp-field-name>id</cmp-field-name>
       <table-column>ID</table-column>
     </cmp-field-mapping>
<resource-ref>
       <ref-name>jdbc/TravelDB</ref-name>
       <pattern>
         <groupId>j2g.java</groupId>
         <artifactId>DefaultDS</artifactId>
         <name>DefaultDS</name>
       </pattern>
   </resource-ref>
   </entity>
   <message-driven>
 <ejb-name>ReservationProcessorEJB</ejb-name>
 <resource-adapter>
   <resource-link>j2g.queues</resource-link>
 </resource-adapter>
 <activation-config>
   <activation-config-property>

<activation-config-property-name>destination</activation-config-property-name>

<activation-config-property-value>CabinReservationQueue</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>
 <resource-ref>
   <ref-name>mail/JavaMailSession</ref-name>
   <resource-link>mailSession</resource-link>
 </resource-ref>
</message-driven>
 </enterprise-beans>
 <relationships>
   <ejb-relation>
     <ejb-relation-name>Cruise-Cabin</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Cruise-has-many-Cabins</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>CruiseEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>cabins</cmr-field-name>
       </cmr-field>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>cruise</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Customer-Reservation</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Customer-has-many-reservations</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>CustomerEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>reservations</cmr-field-name>
       </cmr-field>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>customer</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Customer-Ticket</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Customer-has-many-tickets</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>CustomerEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>tickets</cmr-field-name>
       </cmr-field>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>customer</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Ticket-Agent</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Ticket-sells-by-agent</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>TicketEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>agent</cmr-field-name>
       </cmr-field>
       <foreign-key-column-on-source/>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>agent</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Ticket-Cruise</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Cruise-has-many-tickets</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>TicketEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>cruise</cmr-field-name>
       </cmr-field>
       <foreign-key-column-on-source/>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>cruise</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Ticket-Cabin</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Ticket-for-one-cabin</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>CabinEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>ticket</cmr-field-name>
       </cmr-field>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>cabin</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Reservation-Cruise</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Cruise-has-many-reservations</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>ReservationEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>cruise</cmr-field-name>
       </cmr-field>
       <foreign-key-column-on-source/>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>cruise</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
   <ejb-relation>
     <ejb-relation-name>Reservation-Cabin</ejb-relation-name>
     <ejb-relationship-role>

<ejb-relationship-role-name>Cabin-has-Reservation</ejb-relationship-role-name>
       <relationship-role-source>
         <ejb-name>CabinEJB</ejb-name>
       </relationship-role-source>
       <cmr-field>
         <cmr-field-name>reservation</cmr-field-name>
       </cmr-field>
       <role-mapping>
         <cmr-field-mapping>
           <key-column>ID</key-column>
           <foreign-key-column>cabin</foreign-key-column>
         </cmr-field-mapping>
       </role-mapping>
     </ejb-relationship-role>
   </ejb-relation>
 </relationships>
</openejb-jar>


--
Erik B. Craig

Reply via email to