Hi!

Im emplementing a CMP which uses a compound key as the primary key. If I create 
an entity by calling the create method of the local home interface, the entity 
was succesfully created. But when i call on the method findByPrimaryKey, it 
throws an ObjectNotFoundException. This means that it did not found the data i 
just added. Why it didnt found the data i just added?

Primary Key Class:

  | public class PR_ContentPK implements Serializable {
  | 
  |     public Long getID() {
  |         return ID;
  |     }
  | 
  |     public void setID(Long id) {
  |         ID = id;
  |     }
  | 
  |     public String getLang() {
  |         return lang;
  |     }
  | 
  |     public void setLang(String lang) {
  |         this.lang = lang;
  |     }
  | 
  |     public Long ID;
  | 
  |     public String lang;
  | 
  |     public PR_ContentPK() {
  |     }
  | 
  |     public PR_ContentPK(Long ID, String lang) {
  |         this.ID = ID;
  |         this.lang = lang;
  |     }
  | 
  |     public int hashCode() {
  |         StringBuffer buffer = new StringBuffer();
  |         buffer.append(this.ID.toString());
  |         buffer.append(this.lang);
  |         String key = buffer.toString();
  |         return key.hashCode();
  |     }
  | 
  |     public boolean equals(Object object) {
  |         if (object instanceof PR_ContentPK) {
  |             return ((PR_ContentPK) object).ID.longValue() == this.ID
  |             .longValue() && ((PR_ContentPK) object).lang.equals(this.lang); 
            
  |         } else {
  |             return false;
  |         }
  |     }
  | 
  |     public String toString() {
  |         return new String(this.ID + this.lang).toString();
  |     }
  | 
  | }
  | 

The method on the session bean


  | public void addNewArticle(Date date, String title, String content)
  |             throws RemoteException, UnableToAddNewArticleException {
  | 
  |         try {
  |             Context ctx = new InitialContext();
  |             PR_HeaderLocalHome headerHome = (PR_HeaderLocalHome) ctx
  |                     .lookup(PR_HEADER_JNDI);
  |             PR_HeaderLocal pr_header = headerHome.create(null, date);
  | 
  |             PR_ContentLocalHome contentHome = (PR_ContentLocalHome) ctx
  |                     .lookup(PR_CONTENT_JNDI);
  | 
  |             PR_ContentLocal pr_content = 
contentHome.create(pr_header.getID(),
  |                     "en", title.getBytes(), content.getBytes());
  | 
  |             try {
  |                 pr_content = contentHome.findByPrimaryKey(new 
PR_ContentPK(pr_header.getID(),"en"));
  |             } catch (FinderException e2) {
  |                 e2.printStackTrace();
  |             }
  |         } catch (NamingException e) {
  |             throw new RemoteException(e.getMessage());
  |         } catch (CreateException e1) {
  |             throw new UnableToAddNewArticleException(
  |                     "Unable to create new article.");
  |         }
  |     }
  | 
  | 


Thanks in advance!



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

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


-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to