The RDB DAS creates the graph and corresponding Types dynamically from
the database query results.
Frank Budinsky wrote:
>The problem seems to be that the metadata for class DataGraphRoot is not
>registered on the client. Is that the only missing metadata? What about
>the metadata for the rest of the model. I can't provide any more help
>without more details about how the metadata is being defined.
>
>Frank.
>
>"Kevin Williams" <kevincbw@qwest.net> wrote on 08/25/2006 03:30:15 PM:
>
>
>
>>It may be that your remote client has not initialized the SDO/EMF
>>environment properly and I think that we need some help from the SDO
>>team. I have copied this to the dev list since not everyone has
>>registered yet for the user list.
>>
>>--Kevin
>>
>>
>>
>>Luciano Resende wrote:
>>
>>
>>
>>>Hi Scott
>>>
>>> So, here is a quick example from our unit testings :
>>>
>>> /**
>>> * Read a specific customer
>>> */
>>> public void testReadSingle() throws Exception {
>>>
>>> //Create and initialize command to read customers
>>> DAS das = DAS.FACTORY.createDAS(getConnection());
>>> Command readCustomers = das.createCommand("select * from
>>>CUSTOMER where ID = 1");
>>>
>>> //Read
>>> DataObject root = readCustomers.executeQuery();
>>>
>>> //Verify
>>> assertEquals(1, root.getInt("CUSTOMER[1]/ID"));
>>> }
>>>
>>>If you get a reference to root first, then try to access the customer
>>>information, do you still have this problem ?
>>>
>>>Maybe something like this :
>>>
>>>DataObject root = readCust.executeQuery();
>>>cust = root.getDataObject("CUSTOMER")
>>>
>>>Please let me know if this helps...
>>>
>>>- Luciano
>>>
>>>
>>>On 8/24/06, *Scott Kurinskas* <scott.kurinskas@gemstone.com
>>><mailto:scott.kurinskas@gemstone.com>> wrote:
>>>
>>> Hi,
>>>
>>> Now that my DAS example is up and running, I'm trying to move my
>>> example to
>>> a client/server environment and integrate it with my product. My
>>> use-case
>>> is very simple, a client makes a request to the server, the server
>>> fetches
>>> the result from the database and returns the DataObject back to
>>> the client.
>>> The server side code looks like the following:
>>>
>>> das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"),
>>> connection);
>>> String sql = "Select * from customers where
>>> customers.customerNumber = " +
>>> key;
>>> Command readCust = das.createCommand(sql);
>>> DataObject cust = readCust.executeQuery();
>>> return cust;
>>>
>>> The code executes fine on the client but for some reason the
>>> client is
>>> throwing the exception below. The client should be deserializing
>>>
>>>
>the
>
>
>>> response into a DataObject, but for some reason its complaining
>>> about class
>>> DataGraphRoot not found. The same code executing in a app works
>>> great.
>>>
>>> Thoughts?
>>>
>>> Thanks again,
>>> Scott
>>>
>>> Caught unexpected Exception
>>> org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Class
>>> 'DataGraphRoot' not found.
>>> ( file:///C:/Documents%20and%20Settings/skurinsk/workspace/SDO%20
>>> <file:///C:/Documents%20and%20Settings/skurinsk/workspace/SDO%
>>>
>>>
>>20&%20Cache%20
>>
>>
>>> <file:///C:/Documents%20and%20Settings/skurinsk/workspace/SDO%
>>>
>>>
>>20&%20Cache%20>
>>
>>
>>> Client/all.datagraph> &%20Cache%20Client/all.datagraph, 5, 22)
>>> at
>>> org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.
>>>
>>>
>>handleErrors(XMLLoadImpl.java:80)
>>
>>
>>> at
>>> org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java
>>>
>>>
>:189)
>
>
>>> at
>>> org.apache.tuscany.sdo.util.
>>>
>>>
>>DataGraphResourceFactoryImpl$DataGraphResourceIm
>>
>>
>>> pl$LoadImpl.load(DataGraphResourceFactoryImpl.java:452)
>>> at
>>> org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.
>>>
>>>
>>doLoad(XMLResourceImpl.java
>>
>>
>>> :1
>>> 79)
>>> at
>>> org.eclipse.emf.ecore.resource.impl.ResourceImpl.
>>>
>>>
>>load(ResourceImpl.java:1089
>>
>>
>>> )
>>> at
>>> org.apache.tuscany.sdo.impl.
>>>
>>>
>>DataGraphImpl$EDataGraphExternalizable.readExter
>>
>>
>>> nal(DataGraphImpl.java:665)
>>> at
>>>
>>>
>>>
>java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1758)
>
>
>>> at
>>> java.io.ObjectInputStream.
>>>
>>>
>>readOrdinaryObject(ObjectInputStream.java:1716)
>>
>>
>>> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java
>>>
>>>
>:1304)
>
>
>>> at
>>>
>>>
>java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
>
>
>>> at
>>> org.apache.tuscany.sdo.helper.
>>>
>>>
>>HelperProviderImpl$ResolvableImpl.readDataObje
>>
>>
>>> ct(HelperProviderImpl.java:205)
>>> at
>>> org.apache.tuscany.sdo.helper.
>>>
>>>
>>HelperProviderImpl$ResolvableImpl.readExternal
>>
>>
>>> (HelperProviderImpl.java:144)
>>> at
>>> commonj.sdo.impl.ExternalizableDelegator.
>>>
>>>
>>readExternal(ExternalizableDelegato
>>
>>
>>> r.java:80)
>>> at
>>>
>>>
>>>
>java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1758)
>
>
>>> at
>>> java.io.ObjectInputStream.
>>>
>>>
>>readOrdinaryObject(ObjectInputStream.java:1716)
>>
>>
>>> at
>>>
>>>
>java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1304)
>
>
>>> at
>>>
>>>
>java.io.ObjectInputStream.readObject(ObjectInputStream.java:349)
>
>
>>> at
>>>
>>>
>>>
>com.gemstone.gemfire.DataSerializer.readObject(DataSerializer.java:3200)
>
>
>>> at
>>> com.gemstone.gemfire.internal.util.BlobHelper.
>>>
>>>
>>deserializeBlob(BlobHelper.jav
>>
>>
>>> a:55
>>>
>>>
>>>
>>>
>>>--
>>>-----------------------------------------------------
>>>Luciano Resende
>>>SOA Opensource - Apache Tuscany
>>>-----------------------------------------------------
>>>
>>>
>>
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: tuscany-user-unsubscribe@ws.apache.org
>>For additional commands, e-mail: tuscany-user-help@ws.apache.org
>>
>>
>>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tuscany-user-unsubscribe@ws.apache.org
>For additional commands, e-mail: tuscany-user-help@ws.apache.org
>
>
>
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-user-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-user-help@ws.apache.org
|