Hi sesques, thanks for replying twise,

in ejb-jar.xml

I removed the cmp field declarion for  id, <primkey-field>id</primkey-field> declaration and i  made  
primary kay class of type ava.lang.Object

<enterprise-beans>
        <entity >
         <description><![CDATA[]]></description>
         <ejb-name>Employee</ejb-name>
         <home>com.emp.empdata.EmployeeHome</home>
         <remote>com.emp.empdata.Employee</remote>
         <ejb-class>com.emp.empdata.EmployeeCMP</ejb-class>
         <persistence-type>Container</persistence-type>
         <prim-key-class>java.lang.Object</prim-key-class>
         <reentrant>False</reentrant>
         <cmp-version>2.x</cmp-version>
         <abstract-schema-name>mytestSchema</abstract-schema-name>
        <!-- <cmp-field >
            <description><![CDATA[Returns the id]]></description>
            <field-name>id</field-name>
         </cmp-field> -->

         <cmp-field >
            <description><![CDATA[Returns the empFirstName]]></description>
            <field-name>empFirstName</field-name>
         </cmp-field>
         <cmp-field >
            <description><![CDATA[Returns the  empLastName]]></description>
            <field-name>empLastName</field-name>
         </cmp-field>
          <security-identity><use-caller-identity/></security-identity>
      </entity>
   </enterprise-beans>

In jboss-cmp-jdbc i made few changes

I removed cmp declaration for field name id

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jbosscmp-jdbc PUBLIC
   "-//JBoss//DTD JBOSSCMP-JDBC 3.2//EN"
   "http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_3_2.dtd">
   
<jbosscmp-jdbc>
   <defaults>
      <datasource>java:/MySqlDS</datasource>
      <datasource-mapping>mySQL</datasource-mapping>
      <create-table>true</create-table>
      <remove-table>true</remove-table>
   </defaults>

   <enterprise-beans>
      <entity>
         <ejb-name>Employee</ejb-name>
 
        <!--  <cmp-field>
            <field-name>id</field-name>
            <column-name>emp_id</column-name>
         <jdbc-type>INTEGER</jdbc-type>
        <sql-type>INTEGER</sql-type>
       <auto-increment></auto-increment>
         </cmp-field> -->

   
         <cmp-field>
            <field-name>empFirstName</field-name>
            <column-name>emp_firstname</column-name>
         <jdbc-type>VARCHAR</jdbc-type>
        <sql-type>VARCHAR(25)</sql-type>

        </cmp-field>
         <cmp-field>
            <field-name>empLastName</field-name>
            <column-name>emp_lastname</column-name>
         <jdbc-type>VARCHAR</jdbc-type>
        <sql-type>VARCHAR(25)</sql-type>
        </cmp-field>
    
   <unknown-pk>
    <unknown-pk-class>java.lang.Integer</unknown-pk-class>
    <field-name>id</field-name>
    <column-name>emp_id</column-name>
    <jdbc-type>INTEGER</jdbc-type>
    <sql-type>INTEGER</sql-type>
    <auto-increment/>
     </unknown-pk>
   <entity-command name="mysql-get-generated-keys">
    </entity-command>
      </entity>
   </enterprise-beans>
</jbosscmp-jdbc>

After these changes i deployed successfully ,but when i run
my client i got below error

run.client_empdata:
     [java] javax.ejb.CreateException: Could not create entity:java.lang.ClassNotFoundException: com.mysql.jdbc.PreparedStatement
     [java]     at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractVendorCreateCommand.insertEntity(JDBCAbstractVendorCreateCommand.java:136)
     [java]     at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractVendorCreateCommand.execute(JDBCAbstractVendorCreateCommand.java:76)
     [java]     at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createEntity(JDBCStoreManager.java:569)
     [java]     at org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManager.java:225)
     [java]     at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.createEntity(CachedConnectionInterceptor.java:270)
     [java]     at org.jboss.ejb.EntityContainer.createHome(EntityContainer.java:725)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     [java]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     [java]     at java.lang.reflect.Method.invoke(Method.java:324)
     [java]     at org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContainer.java:998)
     [java]     at org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
     [java]     at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySynchronizationInterceptor.java:188)
     [java]     at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invokeHome(CachedConnectionInterceptor.java:215)
     [java]     at org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:88)
     [java]     at org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:91)
     [java]     at org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:61)
     [java]     at org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:28)
     [java]     at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:88)
     [java]     at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:243)
     [java]     at org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:74)

Please tell me the problem whether should i include any jar.
Once again Thanks for your cooperation

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3831903#3831903

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3831903



Reply via email to