Hey Antonio

  Let me try to give you some help, and also point you to more DAS
documentation.
  DAS User guide is available at [1] and a test case that exercise
some similar things to what you want to do is available at [2]

  So, if you set the proper XPath index to [1], does it help ? If you
think the problem is with the meta data (I don't have a MS SQL Server
to try), maybe you could try looking at
testSimulateFullOuterJoinRelationshipModification at the followign
test case [3] and the DAS config used on the test case, where
necessary metadata information is defined [4]. More information on
resultset shape definition available at [5]

  Please let me know if this helps, if you have any more details that
could help identify the iissue please let me know.

[1] http://incubator.apache.org/tuscany/rdb-das-user-guide.html
[2] 
https://svn.apache.org/repos/asf/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
[3] 
https://svn.apache.org/repos/asf/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RelationshipTests.java
[4] 
https://svn.apache.org/repos/asf/incubator/tuscany/java/das/rdb/src/test/resources/companyMappingWithResultDescriptor.xml
[5] http://incubator.apache.org/tuscany/explicit-resultset-shape-definition.html

On 6/5/07, António Mota <[EMAIL PROTECTED]> wrote:
I also try the examples using a config.xml file
(http://incubator.apache.org/tuscany/starting-with-das.html) but i get

 Feature 'Command' not found.

or

 Feature 'Table' not found.

if i remove the Commands...


2007/6/5, António Mota <[EMAIL PROTECTED]>:
> Hi Frank:
>
> Thanks for your help here. However, besides that error that i
> corrected, the problem still arises. I look into
>
> ((Property)root.getType().getProperties().get(0)).getName()
>
> and that returns a empty string "".
>
> But there is no problem with the DB, because a simple test
>
>               PreparedStatement sql =
> connection.prepareStatement("select * from PERSON");
>               ResultSet rst = sql.executeQuery();
>
> return the correct result in rst.
>
> Can you give me some more pointers? I'm using now jTDS to connect to a
> SQLServer, could be a problem of the driver not returning Metadata? I
> used also the MS jdbc drivers but that caused another problem, the
> first i described. I'm going to try with Sybase as soon as i can
> because the production bd will be sysbase, but shouldn't this work
> with any db?
>
> I have until the end of the day to prove my point in favor of Tuscany,
> as tomorrow we must choose the technology, so any help will be greatly
> apreciated.
>
> Many thanks.
>
>
>
> 2007/6/5, Frank Budinsky <[EMAIL PROTECTED]>:
> > One thing that's certainly wrong is "Person[0]" because an XPath index
> > must be >= 1. See section 12 of the SDO spec:
> > 
http://osoa.org/download/attachments/36/Java-SDO-Spec-v2.1.0-FINAL.pdf?version=1
> >
> > Note that the code that you said returned what you want is using a
> > property number (i.e., 0):
> >
> > > List l = (List)root.getList(0);
> >
> > To see what the name of this property (number 0) is you can call:
> > ((Property)root.getType().getProperties().get(0)).getName();
> >
> > Whatever name that returns is the name of the property you should be able
> > to use in the getDataObject() call: "Person" or "PERSON" or whatever, in
> > your example.
> >
> > I'd suggest looking at the SDO spec, or some of the examples, to get a
> > better understanding of how SDO works.
> >
> > Frank.
> >
> >
> > "António Mota" <[EMAIL PROTECTED]> wrote on 06/04/2007 06:55:03 PM:
> >
> > > One last note. If i test with
> > >
> > >       List l = (List)root.getList(0);
> > >       DataObject d = (DataObject)l.get(0);
> > >       String name = d.get(0);
> > >
> > > returns the correct value, what i expected that
> > >
> > >       DataObject cust = root.getDataObject("Person[0]");
> > >       String name = cust.getString("LASTNAME");
> > >
> > > will return.
> > >
> > > Is the problem with the jTDS driver not returning Metadata?
> > >
> > > I don't know what to do now...
> > >
> > >
> > >
> > > 2007/6/4, António Mota <[EMAIL PROTECTED]>:
> > > > Hi:
> > > >
> > > > It seems this error was a "feature" of MS sqlserver driver... I
> > > > changed it to jTDS and it works now. BUT...
> > > >
> > > > now i hav a error on the following line (typical...)
> > > >
> > > > DataObject root = readCustomers.executeQuery();       ---> now works
> > > > DataObject cust = root.getDataObject("PERSON[0]");  ----> gives
> > > error!!!!!!!!!!!
> > > >
> > > > and the error is
> > > >
> > > > Class 'DataGraphRoot' does not have a feature named 'PERSON'
> > > >
> > > > If i try
> > > >
> > > > DataObject cust = root.getDataObject(0);
> > > >
> > > > gives
> > > >
> > > > org.eclipse.emf.ecore.util.EcoreEList$Dynamic cannot be cast to
> > > > commonj.sdo.DataObject
> > > >
> > > > With
> > > >
> > > > DataObject cust = root.getDataObject(1);
> > > >
> > > > i got
> > > >
> > > > java.lang.IndexOutOfBoundsException
> > > >
> > > >
> > > > So what's wrong now?
> > > >
> > > > For a simple test case this is working great :(
> > > >
> > > > Thanks all.
> > > >
> > > > 2007/6/4, António Mota <[EMAIL PROTECTED]>:
> > > > > Hi again:
> > > > >
> > > > > My first try with SDo wasn't encoraging. This very simple example
> > > > >
> > > > > das = DASImpl.FACTORY.createDAS(getConnection());
> > > > > Command readCustomers = das.createCommand("select * from PERSON");
> > > > > DataObject root = readCustomers.executeQuery();
> > > > >
> > > > > gives a error on this last line. The connection is ok because the
> > same
> > > > > sql statement works using jdbc directly.
> > > > >
> > > > > The error is as follows:
> > > > >
> > > > > Exception in thread "main" java.lang.AbstractMethodError:
> > > > > com.microsoft.jdbc.sqlserver.SQLServerConnection.
> > > prepareStatement(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
> > > > >         at org.apache.tuscany.das.rdb.impl.ConnectionImpl.
> > > prepareStatement(ConnectionImpl.java:98)
> > > > >         at org.apache.tuscany.das.rdb.impl.Statement.
> > > getPreparedStatement(Statement.java:199)
> > > > >         at org.apache.tuscany.das.rdb.impl.Statement.
> > > executeQuery(Statement.java:53)
> > > > >         at org.apache.tuscany.das.rdb.impl.ReadCommandImpl.
> > > executeQuery(ReadCommandImpl.java:61)
> > > > >
> > > > >
> > > > >
> > > > > Help, anyone?
> > > > >
> > > > > --
> > > > > Melhores cumprimentos / Best regards
> > > > > António Santos Mota
> > > > >
> > > >
> > > >
> > > > --
> > > > Melhores cumprimentos / Best regards
> > > > António Santos Mota
> > > >
> > >
> > >
> > > --
> > > Melhores cumprimentos / Best regards
> > > António Santos Mota
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
> --
> Melhores cumprimentos / Best regards
> António Santos Mota
>


--
Melhores cumprimentos / Best regards
António Santos Mota

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to