Well, we should make it smarter but....

Anyway you should also define a @ejb:pk class="full-pk-classname" for
the ejb. That's because you're using a <prim-key-field/> and if you
don't put a ejb:pk ejbdoclet tries to use the default name from default
values of <entitypk/> subtask.

Ara.

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:xdoclet-user-
> [EMAIL PROTECTED]] On Behalf Of Michael Delamere
> Sent: Friday, May 10, 2002 10:41 PM
> To: [EMAIL PROTECTED]
> Subject: [Xdoclet-user] Error when deploying...
> 
> Hi,
> 
> Everything seems to be working fine until I deploy my EJB-Jar.  The
> problem
> seems to have something to do with my primary key.  I�m not exactly
sure
> what I�m doing wrong as I have looked at the examples fairly closely.
> Could
> someone possibly point me in the right direction?
> 
> =============== ERROR ===============================
> 2002-05-10 19:31:44,908 ERROR [org.jboss.ejb.EjbModule] Initialization
> failed
> org.jboss.deployment.DeploymentException: primkey-field must be the
same
> type as prim-key-class
>         at
>
org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCCMPFieldMetaData.<init>(JDBC
CM
> PF
> ieldMetaData.java:130)
>         at
>
org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCEntityMetaData.<init>(JDBCEn
ti
> ty
> MetaData.java:270)
>         at
>
org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCApplicationMetaData.<init>(J
DB
> CA
> pplicationMetaData.java:117)
>         at
>
org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCXmlFileLoader.load(JDBCXmlFi
le
> Lo
> ader.java:52)
>         at
>
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadJDBCEntityMetaData(J
DB
> CS
> toreManager.java:595)
>         at
>
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.create(JDBCStoreManager.
ja
> va
> :322)
>         at
>
org.jboss.ejb.plugins.CMPPersistenceManager.create(CMPPersistenceManager
.j
> av
> a:155)
>         at
org.jboss.ejb.EntityContainer.create(EntityContainer.java:337)
>         at org.jboss.ejb.Container.invoke(Container.java:790)
>         at
org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1055)
>         at
> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
>         at
>
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController
.j
> av
> a:867)
>         at $Proxy0.create(Unknown Source)
> ====================================================================
> 
> gbEntry.java
> ==================================================================
> package com.morelogs.guestbook.xdoclets;
> 
> import javax.ejb.*;
> import com.morelogs.guestbook.interfaces.*;
> 
> /**
>  * This is an gbEntry bean. It is an example of how to use the
>  * EJBDoclet tags.
>  *
>  * @see Customer gbEntries are owned by gbUsers, and a gbUser can
>  * have many gbEntries.
>  *
>  * @ejb:bean   name="guestbook/gbEntry"
>  *             type="CMP"
>  *             jndi-name="ejb/guestbook/gbEntry"
>  *             primkey-field="entry_id"
>  * @ejb:finder signature="Collection findAll()"
>  *             unchecked="true"
>  * @ejb:interface
remote-class="com.morelogs.guestbook.interfaces.gbEntry"
>  *
>  * @jboss:table-name gbEntries
>  * @jboss:data-source-name ejbGuestbookDS
>  * @jboss:persistence
>  */
> public abstract class gbEntry implements javax.ejb.EntityBean {
> 
>    private javax.ejb.EntityContext _entityContext;
> 
>    /**
>     * @param entry_id of this gbEntry
>     */
>    public abstract void setEntry_id(java.lang.Integer entry_id);
> 
>    /**
>     * @return id of this gb entry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @ejb:pk-field
>     */
>    public abstract java.lang.Integer getEntry_id();
> 
> 
>    /**
>     * @param name author_id of this gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name author_id
>     */
>    public abstract void setAuthor_id(java.lang.Integer author_id);
> 
>    /**
>     * @return author_id of this gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name author_id
>     */
>    public abstract java.lang.Integer getAuthor_id();
> 
> 
>    /**
>     * @param entry_subject of gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_subject
>     */
>    public abstract void setEntry_subject(java.lang.String
entry_subject);
> 
>    /**
>     * @return subject of this gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_subject
>     */
>    public abstract java.lang.String getEntry_subject();
> 
> 
>    /**
>     * @param text of gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_text
>     */
>    public abstract void setEntry_text(java.lang.String entry_text);
> 
>    /**
>     * @return text of this gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_text
>     */
>    public abstract java.lang.String getEntry_text();
> 
> 
>    /**
>     * @param date of gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_date
>     */
>    public abstract void setEntry_date(java.lang.String entry_date);
> 
>    /**
>     * @return date of this gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_date
>     */
>    public abstract java.lang.String getEntry_date();
> 
> 
>    /**
>     * @param views of gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_views
>     */
>    public abstract void setEntry_views(java.lang.Integer entry_views);
> 
>    /**
>     * @return views of this gbEntry
>     *
>     * @ejb:interface-method both
>     * @ejb:persistent-field
>     * @jboss:column-name entry_views
>     */
>    public abstract java.lang.Integer getEntry_views();
> 
>     /**
>     * Create gbEntry.
>     *
>     * @ejb:create-method
>     * @ejb:permission role-name="Administrator"
>     */
>    public gbEntryPK ejbCreate(Integer entry_id) throws CreateException
{
>       setEntry_id(entry_id);
> 
>       return null;
>    }
> 
>    public void ejbPostCreate(Integer entry_id) throws CreateException
{
>    }
> 
>    public void setEntityContext(javax.ejb.EntityContext entityContext)
{
>       _entityContext = entityContext;
>    }
> 
>    public void unsetEntityContext() {
>       _entityContext = null;
>    }
> 
>    public void ejbLoad() {
>    }
> 
>    public void ejbActivate() {
>    }
> 
>    public void ejbPassivate() {
>    }
> 
>    public void ejbRemove() throws javax.ejb.RemoveException {
>    }
> 
>    public void ejbStore() {
>    }
> }
> ==============================================================
> 
> ejb-jar.xml
> ==============================================================
>       <!-- Entity Beans -->
>       <entity >
>          <description><![CDATA[This is an gbEntry
bean.]]></description>
> 
>          <ejb-name>guestbook/gbEntry</ejb-name>
> 
>          <home>com.morelogs.guestbook.interfaces.gbEntryHome</home>
>          <remote>com.morelogs.guestbook.interfaces.gbEntry</remote>
> 
>
<ejb-class>com.morelogs.guestbook.beans.gbEntryCMP</ejb-class>
>          <persistence-type>Container</persistence-type>
> 
> <prim-key-class>com.morelogs.guestbook.interfaces.gbEntryPK</prim-key-
> class>
>          <reentrant>False</reentrant>
>          <cmp-version>2.x</cmp-version>
>
<abstract-schema-name>guestbook/gbEntry</abstract-schema-name>
>          <cmp-field >
>             <description><![CDATA[]]></description>
>             <field-name>entry_id</field-name>
>          </cmp-field>
>          <cmp-field >
>             <description><![CDATA[]]></description>
>             <field-name>author_id</field-name>
>          </cmp-field>
>          <cmp-field >
>             <description><![CDATA[]]></description>
>             <field-name>entry_subject</field-name>
>          </cmp-field>
>          <cmp-field >
>             <description><![CDATA[]]></description>
>             <field-name>entry_text</field-name>
>          </cmp-field>
>          <cmp-field >
>             <description><![CDATA[]]></description>
>             <field-name>entry_date</field-name>
>          </cmp-field>
>          <cmp-field >
>             <description><![CDATA[]]></description>
>             <field-name>entry_views</field-name>
>          </cmp-field>
>          <primkey-field>entry_id</primkey-field>
> 
>       </entity>
> ===================================================================
> I would appreciate any help on this matter.
> 
> Many thanks
> 
> Michael
> 
> 
> _______________________________________________________________
> 
> Have big pipes? SourceForge.net is looking for download mirrors. We
supply
> the hardware. You get the recognition. Email Us:
[EMAIL PROTECTED]
> _______________________________________________
> Xdoclet-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/xdoclet-user


_______________________________________________________________

Have big pipes? SourceForge.net is looking for download mirrors. We supply
the hardware. You get the recognition. Email Us: [EMAIL PROTECTED]
_______________________________________________
Xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user

Reply via email to