You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by Katia Aresti Gonzalez <ka...@hotmail.com> on 2005/04/12 00:39:34 UTC

Deployment fail at persistent EJB

Hello!!!

I was trying to deploy the persistent EJB. Im using the OpenEJB example off 
ships and titan... Its an easy example, just 2 entity bean and a session 
bean. The problem is that the deployment fails and this the error
that appears:

i cant guess what is the problem. Im trying to deploy de jar, build with 
maven, and buils succesfull,
using the ejb-jar.xml and the openejb-jar.xml

Anybody can help??? thank you!!!!

Katia


C:\gero>start java -jar bin/server.jar

C:\gero>java -jar bin/deployer.jar --user system --password manager deploy 
d:/cm
p/build/dist/prueba-ejbs.jar
Deployment failed
  Server reports: org.apache.geronimo.common.DeploymentException: Error 
parsing
ejb-jar.xml
        Error parsing ejb-jar.xml
        Invalid deployment descriptor: [error: Element not allowed: 
reentrant@ht
tp://java.sun.com/xml/ns/j2ee in element 
entity@http://java.sun.com/xml/ns/j2ee,
error: String 'container' is not a valid enumerated value for 
persistence-typeT
ype in namespace http://java.sun.com/xml/ns/j2ee, error: Element not 
allowed: cm
p-field@http://java.sun.com/xml/ns/j2ee in element 
entity@http://java.sun.com/xm
l/ns/j2ee, error: Element not allowed: 
cmp-field@http://java.sun.com/xml/ns/j2ee
in element entity@http://java.sun.com/xml/ns/j2ee, error: Element not 
allowed:
cmp-field@http://java.sun.com/xml/ns/j2ee in element 
entity@http://java.sun.com/
xml/ns/j2ee, error: Element not allowed: 
cmp-field@http://java.sun.com/xml/ns/j2
ee in element entity@http://java.sun.com/xml/ns/j2ee, error: Element not 
allowed
: cmp-field@http://java.sun.com/xml/ns/j2ee in element 
entity@http://java.sun.co
m/xml/ns/j2ee, error: Element not allowed: 
primkey-field@http://java.sun.com/xml
/ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, error: Element 
not a
llowed: resource-ref@http://java.sun.com/xml/ns/j2ee in element 
entity@http://ja
va.sun.com/xml/ns/j2ee, error: Expected element(s) in element 
entity@http://java
.sun.com/xml/ns/j2ee, error: Element not allowed: 
reentrant@http://java.sun.com/
xml/ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, error: String 
'be
an' is not a valid enumerated value for persistence-typeType in namespace 
http:/
/java.sun.com/xml/ns/j2ee, error: Element not allowed: 
primkey-field@http://java
.sun.com/xml/ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, 
error: E
lement not allowed: resource-ref@http://java.sun.com/xml/ns/j2ee in element 
enti
ty@http://java.sun.com/xml/ns/j2ee, error: Expected element(s) in element 
entity
@http://java.sun.com/xml/ns/j2ee]
Descriptor: <ejb-jar 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://j
ava.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" version="2.1" 
xmlns:xsi="http://www.w3.
org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee">
  <enterprise-beans>
    <entity>
      <ejb-name>CabinEJB</ejb-name>
      <home>com.titan.cabin.CabinHomeRemote</home>
      <remote>com.titan.cabin.CabinRemote</remote>
      <ejb-class>com.titan.cabin.CabinBean</ejb-class>
      <reentrant>False</reentrant>
      <persistence-type>container</persistence-type>
      <prim-key-class>java.lang.Integer</prim-key-class>
      <cmp-field>
        <field-name>id</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>name</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>deckLevel</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>shipId</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>bedCount</field-name>
      </cmp-field>
      <primkey-field>id</primkey-field>
      <resource-ref>
        <res-ref-name>jdbc/titanDB</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>
    </entity>
    <entity>
      <description>This bean represents a cruise ship.</description>
      <ejb-name>ShipEJB</ejb-name>
      <home>com.titan.ship.ShipHomeRemote</home>
      <remote>com.titan.ship.ShipRemote</remote>
      <ejb-class>com.titan.ship.ShipBean</ejb-class>
      <reentrant>False</reentrant>
      <persistence-type>bean</persistence-type>
      <prim-key-class>java.lang.Integer</prim-key-class>
      <primkey-field>id</primkey-field>
      <resource-ref>
        <description>DataSource for the Titan database</description>
        <res-ref-name>jdbc/titanDB</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>
    </entity>
    <session>
      <ejb-name>TravelAgentEJB</ejb-name>
      <home>com.titan.travelagent.TravelAgentHomeRemote</home>
      <remote>com.titan.travelagent.TravelAgentRemote</remote>
      <ejb-class>com.titan.travelagent.TravelAgentBean</ejb-class>
      <session-type>Stateless</session-type>
      <transaction-type>Container</transaction-type>
      <ejb-ref>
        <ejb-ref-name>ejb/titan/CabinEJB</ejb-ref-name>
        <ejb-ref-type>Entity</ejb-ref-type>
        <home>com.titan.cabin.CabinHomeRemote</home>
        <remote>com.titan.cabin.CabinRemote</remote>
        <ejb-link>CabinEJB</ejb-link>
      </ejb-ref>
    </session>
  </enterprise-beans>
  <assembly-descriptor>
    <security-role>
      <description>This role represents everyone who is allowed full access
                to te CabinEJB.</description>
      <role-name>everyone</role-name>
    </security-role>
    <method-permission>
      <role-name>everyone</role-name>
      <method>
        <ejb-name>CabinEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <method>
        <ejb-name>TravelAgentEJB</ejb-name>
        <method-name>*</method-name>
      </method>
    </method-permission>
    <method-permission>
      <role-name>everyone</role-name>
      <method>
        <ejb-name>ShipEJB</ejb-name>
        <method-name>*</method-name>
      </method>
    </method-permission>
    <container-transaction>
      <method>
        <ejb-name>CabinEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <method>
        <ejb-name>ShipEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <method>
        <ejb-name>TravelAgentEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <trans-attribute>Required</trans-attribute>
    </container-transaction>
  </assembly-descriptor>
</ejb-jar>

/---------------open EJB jar.xml----------
<?xml version="1.0"?>

<openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
    <ejb-deployment ejb-name="CabinEJB" deployment-id="titan/CabinEJB" 
container-id="Default CMP Container">
        <resource-link res-ref-name="jdbc/titanDB" res-id="Default JDBC 
Database"/>
    </ejb-deployment>
    <ejb-deployment ejb-name="ShipEJB" deployment-id="titan/ShipEJB" 
container-id="Default BMP Container">
        <resource-link res-ref-name="jdbc/titanDB" res-id="Default JDBC 
Database"/>
    </ejb-deployment>
    <ejb-deployment ejb-name="TravelAgentEJB" 
deployment-id="titan/TravelAgentEJB" container-id="Default Stateless 
Container"/>
</openejb-jar>

_________________________________________________________________
Acepta el reto MSN Premium: Correos más divertidos con fotos y textos 
increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis. 
http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_correosmasdivertidos


Re: Deployment fail at persistent EJB

Posted by David Jencks <da...@yahoo.com>.
A couple of obvious problems are that the reentrant element should be  
after prim-key-class and all lowercase (false not False) and the  
persistence-type has the wrong case (should be Container or Bean).

I've found that looking at the errors reported by xmlbeans and  
comparing with the schema has always led me to a valid xml document.

hope this helps
david jencks

On Apr 11, 2005, at 3:39 PM, Katia Aresti Gonzalez wrote:

> Hello!!!
>
> I was trying to deploy the persistent EJB. Im using the OpenEJB  
> example off ships and titan... Its an easy example, just 2 entity bean  
> and a session bean. The problem is that the deployment fails and this  
> the error
> that appears:
>
> i cant guess what is the problem. Im trying to deploy de jar, build  
> with maven, and buils succesfull,
> using the ejb-jar.xml and the openejb-jar.xml
>
> Anybody can help??? thank you!!!!
>
> Katia
>
>
> C:\gero>start java -jar bin/server.jar
>
> C:\gero>java -jar bin/deployer.jar --user system --password manager  
> deploy d:/cm
> p/build/dist/prueba-ejbs.jar
> Deployment failed
>  Server reports: org.apache.geronimo.common.DeploymentException: Error  
> parsing
> ejb-jar.xml
>        Error parsing ejb-jar.xml
>        Invalid deployment descriptor: [error: Element not allowed:  
> reentrant@ht
> tp://java.sun.com/xml/ns/j2ee in element  
> entity@http://java.sun.com/xml/ns/j2ee,
> error: String 'container' is not a valid enumerated value for  
> persistence-typeT
> ype in namespace http://java.sun.com/xml/ns/j2ee, error: Element not  
> allowed: cm
> p-field@http://java.sun.com/xml/ns/j2ee in element  
> entity@http://java.sun.com/xm
> l/ns/j2ee, error: Element not allowed:  
> cmp-field@http://java.sun.com/xml/ns/j2ee
> in element entity@http://java.sun.com/xml/ns/j2ee, error: Element not  
> allowed:
> cmp-field@http://java.sun.com/xml/ns/j2ee in element  
> entity@http://java.sun.com/
> xml/ns/j2ee, error: Element not allowed:  
> cmp-field@http://java.sun.com/xml/ns/j2
> ee in element entity@http://java.sun.com/xml/ns/j2ee, error: Element  
> not allowed
> : cmp-field@http://java.sun.com/xml/ns/j2ee in element  
> entity@http://java.sun.co
> m/xml/ns/j2ee, error: Element not allowed:  
> primkey-field@http://java.sun.com/xml
> /ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, error:  
> Element not a
> llowed: resource-ref@http://java.sun.com/xml/ns/j2ee in element  
> entity@http://ja
> va.sun.com/xml/ns/j2ee, error: Expected element(s) in element  
> entity@http://java
> .sun.com/xml/ns/j2ee, error: Element not allowed:  
> reentrant@http://java.sun.com/
> xml/ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, error:  
> String 'be
> an' is not a valid enumerated value for persistence-typeType in  
> namespace http:/
> /java.sun.com/xml/ns/j2ee, error: Element not allowed:  
> primkey-field@http://java
> .sun.com/xml/ns/j2ee in element  
> entity@http://java.sun.com/xml/ns/j2ee, error: E
> lement not allowed: resource-ref@http://java.sun.com/xml/ns/j2ee in  
> element enti
> ty@http://java.sun.com/xml/ns/j2ee, error: Expected element(s) in  
> element entity
> @http://java.sun.com/xml/ns/j2ee]
> Descriptor: <ejb-jar  
> xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://j
> ava.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" version="2.1"  
> xmlns:xsi="http://www.w3.
> org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee">
>  <enterprise-beans>
>    <entity>
>      <ejb-name>CabinEJB</ejb-name>
>      <home>com.titan.cabin.CabinHomeRemote</home>
>      <remote>com.titan.cabin.CabinRemote</remote>
>      <ejb-class>com.titan.cabin.CabinBean</ejb-class>
>      <reentrant>False</reentrant>
>      <persistence-type>container</persistence-type>
>      <prim-key-class>java.lang.Integer</prim-key-class>
>      <cmp-field>
>        <field-name>id</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>name</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>deckLevel</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>shipId</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>bedCount</field-name>
>      </cmp-field>
>      <primkey-field>id</primkey-field>
>      <resource-ref>
>        <res-ref-name>jdbc/titanDB</res-ref-name>
>        <res-type>javax.sql.DataSource</res-type>
>        <res-auth>Container</res-auth>
>      </resource-ref>
>    </entity>
>    <entity>
>      <description>This bean represents a cruise ship.</description>
>      <ejb-name>ShipEJB</ejb-name>
>      <home>com.titan.ship.ShipHomeRemote</home>
>      <remote>com.titan.ship.ShipRemote</remote>
>      <ejb-class>com.titan.ship.ShipBean</ejb-class>
>      <reentrant>False</reentrant>
>      <persistence-type>bean</persistence-type>
>      <prim-key-class>java.lang.Integer</prim-key-class>
>      <primkey-field>id</primkey-field>
>      <resource-ref>
>        <description>DataSource for the Titan database</description>
>        <res-ref-name>jdbc/titanDB</res-ref-name>
>        <res-type>javax.sql.DataSource</res-type>
>        <res-auth>Container</res-auth>
>      </resource-ref>
>    </entity>
>    <session>
>      <ejb-name>TravelAgentEJB</ejb-name>
>      <home>com.titan.travelagent.TravelAgentHomeRemote</home>
>      <remote>com.titan.travelagent.TravelAgentRemote</remote>
>      <ejb-class>com.titan.travelagent.TravelAgentBean</ejb-class>
>      <session-type>Stateless</session-type>
>      <transaction-type>Container</transaction-type>
>      <ejb-ref>
>        <ejb-ref-name>ejb/titan/CabinEJB</ejb-ref-name>
>        <ejb-ref-type>Entity</ejb-ref-type>
>        <home>com.titan.cabin.CabinHomeRemote</home>
>        <remote>com.titan.cabin.CabinRemote</remote>
>        <ejb-link>CabinEJB</ejb-link>
>      </ejb-ref>
>    </session>
>  </enterprise-beans>
>  <assembly-descriptor>
>    <security-role>
>      <description>This role represents everyone who is allowed full  
> access
>                to te CabinEJB.</description>
>      <role-name>everyone</role-name>
>    </security-role>
>    <method-permission>
>      <role-name>everyone</role-name>
>      <method>
>        <ejb-name>CabinEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <method>
>        <ejb-name>TravelAgentEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>    </method-permission>
>    <method-permission>
>      <role-name>everyone</role-name>
>      <method>
>        <ejb-name>ShipEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>    </method-permission>
>    <container-transaction>
>      <method>
>        <ejb-name>CabinEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <method>
>        <ejb-name>ShipEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <method>
>        <ejb-name>TravelAgentEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <trans-attribute>Required</trans-attribute>
>    </container-transaction>
>  </assembly-descriptor>
> </ejb-jar>
>
> /---------------open EJB jar.xml----------
> <?xml version="1.0"?>
>
> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
>    <ejb-deployment ejb-name="CabinEJB" deployment-id="titan/CabinEJB"  
> container-id="Default CMP Container">
>        <resource-link res-ref-name="jdbc/titanDB" res-id="Default JDBC  
> Database"/>
>    </ejb-deployment>
>    <ejb-deployment ejb-name="ShipEJB" deployment-id="titan/ShipEJB"  
> container-id="Default BMP Container">
>        <resource-link res-ref-name="jdbc/titanDB" res-id="Default JDBC  
> Database"/>
>    </ejb-deployment>
>    <ejb-deployment ejb-name="TravelAgentEJB"  
> deployment-id="titan/TravelAgentEJB" container-id="Default Stateless  
> Container"/>
> </openejb-jar>
>
> _________________________________________________________________
> Acepta el reto MSN Premium: Correos más divertidos con fotos y textos  
> increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis.  
> http://join.msn.com? 
> XAPID=1697&DI=1055&HL=Footer_mailsenviados_correosmasdivertidos
>


Re: Deployment fail at persistent EJB

Posted by David Blevins <da...@visi.com>.
Quick update for those following the thread.  I chatted with Katia on IRC and we made some progress.

Turns out the example was a CMP 1.1 example.  We updated the deployment descriptor to include the right cmp-version and the ejb jar deploys fine.  Katia was also able to successfully get an client to run accessing the CMP.  The current error is now because the table for the CMP doesn't exist in the Derby database.  Not sure what is required to get that going.

Here is the trimmed stack trace for future reference and archive purposes.

01:45:48,156 ERROR [AbstractTransactionContext] Unable to roll back transaction
java.lang.IllegalStateException: Status is STATUS_NO_TRANSACTION
        at org.apache.geronimo.transaction.manager.TransactionImpl.rollback(TransactionImpl.java:438)
        at org.apache.geronimo.transaction.context.InheritableTransactionContext.rollbackAndThrow(InheritableTransactionContext.java:305)
        at org.apache.geronimo.transaction.context.InheritableTransactionContext.complete(InheritableTransactionContext.java:196)
        at org.apache.geronimo.transaction.context.InheritableTransactionContext.commit(InheritableTransactionContext.java:143)
        at org.openejb.transaction.ContainerPolicy$TxRequired.invoke(ContainerPolicy.java:152)
        at org.openejb.transaction.TransactionContextInterceptor.invoke(TransactionContextInterceptor.java:80)
        [snip]
01:45:48,187 WARN  [SystemExceptionInterceptor] CabinEJB
javax.transaction.SystemException: Unable to commit container transaction
        at org.apache.geronimo.transaction.context.InheritableTransactionContext.rollbackAndThrow(InheritableTransactionContext.java:324)
        at org.apache.geronimo.transaction.context.InheritableTransactionContext.complete(InheritableTransactionContext.java:196)
        at org.apache.geronimo.transaction.context.InheritableTransactionContext.commit(InheritableTransactionContext.java:143)
        at org.openejb.transaction.ContainerPolicy$TxRequired.invoke(ContainerPolicy.java:152)
        at org.openejb.transaction.TransactionContextInterceptor.invoke(TransactionContextInterceptor.java:80)
        [snip]
        at java.lang.Thread.run(Thread.java:534)
Caused by: org.tranql.ql.QueryException: Error executing statement: INSERT INTO CabinTable(col_id, col_name, col_deckLevel, col_shipId, col_bedCount) VALUES (?, ?, ?, ?, ?)
        at org.tranql.sql.jdbc.JDBCUpdateCommand.execute(JDBCUpdateCommand.java:69)
        [snip]
        ... 23 more
Caused by: SQL Exception: Table 'CABINTABLE' does not exist.
        at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java)
        at org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(EmbedPreparedStatement.java)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(EmbedPreparedStatement20.java)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(EmbedPreparedStatement30.java)
        at org.apache.derby.jdbc.Driver30.newEmbedPreparedStatement(Driver30.java)
        at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(EmbedConnection.java)
        at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(EmbedConnection.java)
        at org.apache.derby.iapi.jdbc.BrokeredConnection.prepareStatement(BrokeredConnection.java)
        at org.tranql.connector.jdbc.ConnectionHandle.prepareStatement(ConnectionHandle.java:231)
        at org.tranql.sql.jdbc.JDBCUpdateCommand.execute(JDBCUpdateCommand.java:63)
        ... 28 more
01:45:48,250 FATAL [EjbRequestHandler] Invocation result object is not serializable: java.rmi.RemoteException
java.io.NotSerializableException: org.apache.derby.impl.sql.compile.TableName
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1054)
        [blah blah blah]


-David

On Mon, Apr 11, 2005 at 10:39:34PM +0000, Katia Aresti Gonzalez wrote:
> Hello!!!
> 
> I was trying to deploy the persistent EJB. Im using the OpenEJB example off 
> ships and titan... Its an easy example, just 2 entity bean and a session 
> bean. The problem is that the deployment fails and this the error
> that appears:
> 
> i cant guess what is the problem. Im trying to deploy de jar, build with 
> maven, and buils succesfull,
> using the ejb-jar.xml and the openejb-jar.xml
> 
> Anybody can help??? thank you!!!!
> 
> Katia
> 
> 
> C:\gero>start java -jar bin/server.jar
> 
> C:\gero>java -jar bin/deployer.jar --user system --password manager deploy 
> d:/cm
> p/build/dist/prueba-ejbs.jar
> Deployment failed
>  Server reports: org.apache.geronimo.common.DeploymentException: Error 
> parsing
> ejb-jar.xml
>        Error parsing ejb-jar.xml
>        Invalid deployment descriptor: [error: Element not allowed: 
> reentrant@ht
 
        at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1224)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1050)
> tp://java.sun.com/xml/ns/j2ee in element 
> entity@http://java.sun.com/xml/ns/j2ee,
> error: String 'container' is not a valid enumerated value for 
> persistence-typeT
> ype in namespace http://java.sun.com/xml/ns/j2ee, error: Element not 
> allowed: cm
> p-field@http://java.sun.com/xml/ns/j2ee in element 
> entity@http://java.sun.com/xm
> l/ns/j2ee, error: Element not allowed: 
> cmp-field@http://java.sun.com/xml/ns/j2ee
> in element entity@http://java.sun.com/xml/ns/j2ee, error: Element not 
> allowed:
> cmp-field@http://java.sun.com/xml/ns/j2ee in element 
> entity@http://java.sun.com/
> xml/ns/j2ee, error: Element not allowed: 
> cmp-field@http://java.sun.com/xml/ns/j2
> ee in element entity@http://java.sun.com/xml/ns/j2ee, error: Element not 
> allowed
> : cmp-field@http://java.sun.com/xml/ns/j2ee in element 
> entity@http://java.sun.co
> m/xml/ns/j2ee, error: Element not allowed: 
> primkey-field@http://java.sun.com/xml
> /ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, error: Element 
> not a
> llowed: resource-ref@http://java.sun.com/xml/ns/j2ee in element 
> entity@http://ja
> va.sun.com/xml/ns/j2ee, error: Expected element(s) in element 
> entity@http://java
> .sun.com/xml/ns/j2ee, error: Element not allowed: 
> reentrant@http://java.sun.com/
> xml/ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, error: 
> String 'be
> an' is not a valid enumerated value for persistence-typeType in namespace 
> http:/
> /java.sun.com/xml/ns/j2ee, error: Element not allowed: 
> primkey-field@http://java
> .sun.com/xml/ns/j2ee in element entity@http://java.sun.com/xml/ns/j2ee, 
> error: E
> lement not allowed: resource-ref@http://java.sun.com/xml/ns/j2ee in element 
> enti
> ty@http://java.sun.com/xml/ns/j2ee, error: Expected element(s) in element 
> entity
> @http://java.sun.com/xml/ns/j2ee]
> Descriptor: <ejb-jar 
> xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://j
> ava.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" version="2.1" 
> xmlns:xsi="http://www.w3.
> org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee">
>  <enterprise-beans>
>    <entity>
>      <ejb-name>CabinEJB</ejb-name>
>      <home>com.titan.cabin.CabinHomeRemote</home>
>      <remote>com.titan.cabin.CabinRemote</remote>
>      <ejb-class>com.titan.cabin.CabinBean</ejb-class>
>      <reentrant>False</reentrant>
>      <persistence-type>container</persistence-type>
>      <prim-key-class>java.lang.Integer</prim-key-class>
>      <cmp-field>
>        <field-name>id</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>name</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>deckLevel</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>shipId</field-name>
>      </cmp-field>
>      <cmp-field>
>        <field-name>bedCount</field-name>
>      </cmp-field>
>      <primkey-field>id</primkey-field>
>      <resource-ref>
>        <res-ref-name>jdbc/titanDB</res-ref-name>
>        <res-type>javax.sql.DataSource</res-type>
>        <res-auth>Container</res-auth>
>      </resource-ref>
>    </entity>
>    <entity>
>      <description>This bean represents a cruise ship.</description>
 
        at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java
:1332)
        at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:13
04)
        at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
a:1247)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
>      <ejb-name>ShipEJB</ejb-name>
>      <home>com.titan.ship.ShipHomeRemote</home>
>      <remote>com.titan.ship.ShipRemote</remote>
>      <ejb-class>com.titan.ship.ShipBean</ejb-class>
>      <reentrant>False</reentrant>
>      <persistence-type>bean</persistence-type>
>      <prim-key-class>java.lang.Integer</prim-key-class>
>      <primkey-field>id</primkey-field>
>      <resource-ref>
>        <description>DataSource for the Titan database</description>
>        <res-ref-name>jdbc/titanDB</res-ref-name>
>        <res-type>javax.sql.DataSource</res-type>
>        <res-auth>Container</res-auth>
>      </resource-ref>
>    </entity>
>    <session>
>      <ejb-name>TravelAgentEJB</ejb-name>
>      <home>com.titan.travelagent.TravelAgentHomeRemote</home>
>      <remote>com.titan.travelagent.TravelAgentRemote</remote>
>      <ejb-class>com.titan.travelagent.TravelAgentBean</ejb-class>
>      <session-type>Stateless</session-type>
>      <transaction-type>Container</transaction-type>
>      <ejb-ref>
>        <ejb-ref-name>ejb/titan/CabinEJB</ejb-ref-name>
>        <ejb-ref-type>Entity</ejb-ref-type>
>        <home>com.titan.cabin.CabinHomeRemote</home>
>        <remote>com.titan.cabin.CabinRemote</remote>
>        <ejb-link>CabinEJB</ejb-link>
>      </ejb-ref>
>    </session>
>  </enterprise-beans>
>  <assembly-descriptor>
>    <security-role>
>      <description>This role represents everyone who is allowed full access
>                to te CabinEJB.</description>
>      <role-name>everyone</role-name>
>    </security-role>
>    <method-permission>
>      <role-name>everyone</role-name>
>      <method>
>        <ejb-name>CabinEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <method>
>        <ejb-name>TravelAgentEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>    </method-permission>
>    <method-permission>
>      <role-name>everyone</role-name>
>      <method>
>        <ejb-name>ShipEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>    </method-permission>
>    <container-transaction>
>      <method>
>        <ejb-name>CabinEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <method>
>        <ejb-name>ShipEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <method>
>        <ejb-name>TravelAgentEJB</ejb-name>
>        <method-name>*</method-name>
>      </method>
>      <trans-attribute>Required</trans-attribute>
>    </container-transaction>
>  </assembly-descriptor>
> </ejb-jar>
> 
> /---------------open EJB jar.xml----------
> <?xml version="1.0"?>
> 
 
        at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java
:1332)
        at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java
:367)
        at java.lang.Throwable.writeObject(Throwable.java:648)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:80
9)
        at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:12
96)
        at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
a:1247)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
eFields(ObjectOutputStream.java
:1332)
        at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java
:367)
        at java.lang.Throwable.writeObject(Throwable.java:648)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:80
9)
        at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:12
96)
        at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
a:1247)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
OutputStream.java:13
04)
        at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
a:1247)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
>    <ejb-deployment ejb-name="CabinEJB" deployment-id="titan/CabinEJB" 
> container-id="Default CMP Container">
>        <resource-link res-ref-name="jdbc/titanDB" res-id="Default JDBC 
> Database"/>
>    </ejb-deployment>
>    <ejb-deployment ejb-name="ShipEJB" deployment-id="titan/ShipEJB" 
> container-id="Default BMP Container">
>        <resource-link res-ref-name="jdbc/titanDB" res-id="Default JDBC 
> Database"/>
>    </ejb-deployment>
>    <ejb-deployment ejb-name="TravelAgentEJB" 
> deployment-id="titan/TravelAgentEJB" container-id="Default Stateless 
> Container"/>
> </openejb-b.client.EJBResponse.writeExternal(EJBResponse.java:176)
        at org.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHa
ndler.java:259)
        at org.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:135)
        at org.openejb.server.ejbd.EjbServer.service(EjbServer.java:84)
        at org.openejb.server.ejbd.EjbServer$$FastClassByCGLIB$$d379d2ff.invoke(
<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
Invoker.java:38)
        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
n.java:118)
        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
java:710)
        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
7)
        at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
ionInvoker.java:36)
        at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
xyMethodInterceptor.java:92)
        at org.openejb.server.ServerService$$EnhancerByCGLIB$$8c43612f.service(<
generated>)
        at org.openejb.server.ServicePool$2.run(ServicePool.java:106)
        at org.openejb.server.ServicePool$3.run(ServicePool.java:129)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown So
urce)
        at java.lang.Thread.run(Thread.java:534)
jar>
> 
> _________________________________________________________________
> Acepta el reto MSN Premium: Correos m�s divertidos con fotos y textos 
> incre�bles en MSN Premium. Desc�rgalo y pru�balo 2 meses gratis. 
> http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_correosmasdivertidos