it also works with cmp. If you don't have a compound key there is no need
for an extra PK class

    <entity>
      <description />
      <display-name />
      <small-icon />
      <large-icon />
      <ejb-name>StructureFolder</ejb-name>
      <home>com.ceag.dms.server.StructureFolderHome</home>
      <remote>com.ceag.dms.server.StructureFolder</remote>
      <ejb-class>com.ceag.dms.server.StructureFolderBean</ejb-class>
      <persistence-type>Container</persistence-type>
      <prim-key-class>java.lang.String</prim-key-class>
      <reentrant>False</reentrant>
      <cmp-field>
        <description />
        <field-name>path</field-name>
      </cmp-field>
      <cmp-field>
        <description />
        <field-name>description</field-name>
      </cmp-field>
      <cmp-field>
        <description />
        <field-name>name</field-name>
      </cmp-field>
      <cmp-field>
        <description />
        <field-name>oid</field-name>
      </cmp-field>
      <primkey-field>oid</primkey-field>
      <ejb-ref>
        <description />
        <ejb-ref-name>ejb/docspace</ejb-ref-name>
        <ejb-ref-type>Entity</ejb-ref-type>
        <home>com.ceag.dms.server.DocSpaceHome</home>
        <remote>com.ceag.dms.server.DocSpace</remote>
        <ejb-link>DocSpace</ejb-link>
      </ejb-ref>
      <resource-ref>
        <description />
        <res-ref-name>StructureFolderDB</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>
    </entity>

Ulf Gohde


> -----Original Message-----
> From: Stefan Hanenberg [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, June 29, 2000 4:30 PM
> To: [EMAIL PROTECTED]
> Subject: Re: How to create SQL statements within J2eeSdk if there
> isnoPrimary Key?
>
>
> Hi Nail,
>
> thank you for your answer...but maybe I have to add that my Bean is a
> container-managed one (sorry, I forgot to say).
>
> Stefan
>
>
>
> "Nail A." schrieb:
> >
> > Hi Stefan,
> > at first: the finder methods are defined in the home-interfaces
> > (see section 8.3.2 of the EJB-Spec.1.1.)
> >
> > for example:
> >         public Account findByPrimaryKey(String user_id)
> >         throws FinderException, RemoteException;
> >         public Collection findByLastName(String name)
> >         throws FinderException, RemoteException;
> >         public Collection findInRange(double low, double high)
> >         throws FinderException, RemoteException;
> >
> > The Entity-EJB has to define one ejbFind[...]-method for
> each of this methods.
> > That means, that this methods contain calls to special methods with
> > SQL-Queries.
> >
> > example:
> >
> >       public String ejbFindByPrimaryKey(String primaryKey)
> >       throws FinderException
> >     {
> >       System.out.println("ejbFindByPrimaryKey method");
> >       try {
> >          if (selectByPrimaryKey(primaryKey)) {
> >             return primaryKey;
> >          }
> >          else {
> >             throw new ObjectNotFoundException
> >                ("Row for id " + primaryKey + " not found.");
> >          }
> >        } catch (Exception ex) {
> >            throw new EJBException("ejbFindByPrimaryKey: " +
> >               ex.getMessage());
> >        }
> >     }
> >
> > last but not least:
> >
> >         private boolean selectByPrimaryKey(String primaryKey) throws
> > java.sql.SQLException
> >       {
> >          System.out.println(" selectByPrimaryKey method");
> >          String selectStatement = "SELECT ID FROM TABLE
> WHERE USER_ID = ? ";
> >       PreparedStatement prepStmt =
> > (PreparedStatement)con.prepareStatement(selectStatement);
> >           prepStmt.setString(1, primaryKey);
> >           prepStmt.executeQuery();
> >           ResultSet rs = (ResultSet)prepStmt.executeQuery();
> >           boolean result = rs.next();
> >           prepStmt.close();
> >           return result;
> >     }
> >
> > Hope, this helps you to solve your problems.
> > regards
> > Nail
> >    - Dep.of CS -
> >   Univ. Hamburg
> >
> >
> **************************************************************
> *****************************
> >
> > Stefan Hanenberg wrote:
> >
> > > Hi,
> > >
> > > I have a question: I have an EntityBean without a primary
> key-class. How
> > > can I use it within the j2eesdk and cloudscape? The main
> problem is:
> > > What are the SQL-statements for ejbRemove() and
> findByPrimaryKey()?
> > >
> > > Regards,
> > > Stefan
> > >
> > >
> ==============================================================
> =============
> > > To unsubscribe, send email to [EMAIL PROTECTED] and
> include in the body
> > > of the message "signoff EJB-INTEREST".  For general help,
> send email to
> > > [EMAIL PROTECTED] and include in the body of the
> message "help".
> >
> >
> ==============================================================
> =============
> > To unsubscribe, send email to [EMAIL PROTECTED] and
> include in the body
> > of the message "signoff EJB-INTEREST".  For general help,
> send email to
> > [EMAIL PROTECTED] and include in the body of the message "help".
>
> --
> ***************************************************************
> Dipl.-Wirt.Inform. Stefan Hanenberg
> Mathematics & Computer Science
> University of Essen
> Sch�tzenbahn 70
> D-45117 Essen
> Germany
>
> email: mailto:[EMAIL PROTECTED]
> www: http://www.cs.uni-essen.de/shanenbe/
> phone: ++49-201-183-2168
> fax: (+49) 201-183 2419
> ***************************************************************
>
> ==============================================================
> =============
> To unsubscribe, send email to [EMAIL PROTECTED] and
> include in the body
> of the message "signoff EJB-INTEREST".  For general help,
> send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
>

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to