• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Propagate primary key questions
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Propagate primary key questions


  • Subject: Re: Propagate primary key questions
  • From: Chuck Hill <email@hidden>
  • Date: Sun, 22 Jul 2007 17:14:52 -0700


On Jul 21, 2007, at 4:45 PM, James Cicenia wrote:

Hello -

I am adding a new table to the database and a new EO object that I want to be created automatically via owns destination and propagate key.

However, this is after the fact. Now, I guess I just don't understand but the following code to add the related record is giving me the following errors.

I must be tired, or blind, but I don't understand the problem.


EOEditingContext ec = session().defaultEditingContext();
EOFetchSpecification fetchPortfolio = new EOFetchSpecification();
fetchPortfolio.setEntityName("Portfolio");
NSArray fetchPortfolios = (ec.objectsWithFetchSpecification (fetchPortfolio)).immutableClone();

Cough.

NSArray fetchPortfolio = EOUtilities.objectsForEntityNamed(session ().defaultEditingContext(), "Portfolio");

Cough.


for(int i=0;i<fetchPortfolios.count();i++){
Portfolio portfolio = (Portfolio) fetchPortfolios.objectAtIndex(i);
PortfolioNotifications pn = (PortfolioNotifications) EOUtilities.createAndInsertInstance(ec, "PortfolioNotifications");

pn.setPortfolio(portfolio);
System.out.println("pn.portfolio.name is "+pn.portfolio().title());
portfolio.setNotifications(pn);

ec.saveChanges();

}


However, when it gets to saveChanges it tells me...


errorcom.webobjects.eoaccess.EOObjectNotAvailableException: No com.tos.eo.PortfolioNotifications found with globalID: _EOIntegralKeyGlobalID[PortfolioNotifications (java.lang.Integer)16]



That happens to be the row-id of the first portfolio...

What am I missing that is so obvious.

I don't think you are missing anything, I think you are messing with EOF's head. I really doubt that EOF is going to step in handle this neatly after the fact. I'd try
- remove owns destination and propagate key
- manually create the global ID using EOKeyGlobalID's globalIDWithEntityName(String, Object[]) and then inserting it using insertObjectWithGlobalID(EOEnterpriseObject, EOGlobalID)
- restore owns destination and propagate key


Chuck

--

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/products/practical_webobjects






_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: Propagate primary key questions
      • From: James Cicenia <email@hidden>
References: 
 >Propagate primary key questions (From: James Cicenia <email@hidden>)

  • Prev by Date: Re: Propagate primary key questions
  • Next by Date: Unable to create page
  • Previous by thread: Re: Propagate primary key questions
  • Next by thread: Re: Propagate primary key questions
  • Index(es):
    • Date
    • Thread