Hi Anjana, I created an issue on the JIRA. Please find it here[1].
[1] - https://wso2.org/jira/browse/DS-1019 Regards, Chamila de Alwis Software Engineer | WSO2 | +94772207163 Blog: code.chamiladealwis.com On Mon, Dec 1, 2014 at 2:09 PM, Chamila De Alwis <[email protected]> wrote: > Hi Anjana, > > I compared the sample with my service, and noticed I haven't defined a > result tag for the query. And it was the cause of the issue. The working > service is as follows. Thanks for the help! :) > > <data name="testMongoService"> > <config id="capedev-mongo"> > <property name="mongoDB_servers">172.17.0.4:27017</property> > <property name="mongoDB_database">TestDB</property> > <property name="mongoDB_write_concern">NONE</property> > <property name="mongoDB_read_preference">PRIMARY</property> > <property name="mongoDB_autoConnectRetry">true</property> > </config> > <query id="mongo_find" useConfig="capedev-mongo"> > <expression>TestCollection.findOne()</expression> > <result element="Documents" rowName="Document"> > <element column="document" name="Data" xsdType="string"/> > </result> > </query> > <operation name="mongo_find"> > <description>mongo find operation</description> > <call-query href="mongo_find"/> > </operation> > <resource method="GET" path="test"> > <call-query href="mongo_find"/> > </resource> > </data> > > The stack trace for the NPE I got earlier is as follows. Shall I report > this anyway? > > Caused by: java.lang.NullPointerException > at > org.wso2.carbon.dataservices.core.description.query.Query.writeResultEntry(Query.java:396) > at > org.wso2.carbon.dataservices.core.description.query.MongoQuery.runQuery(MongoQuery.java:97) > > > > > Regards, > Chamila de Alwis > Software Engineer | WSO2 | +94772207163 > Blog: code.chamiladealwis.com > > > > On Mon, Dec 1, 2014 at 2:02 PM, Anjana Fernando <[email protected]> wrote: > >> Oh I see .. if we get an NPE, that's anyways a bug then. Can you please >> report this in DSS JIRA [1] (put the log in the console too). Also, do >> check the MongDB sample we have in the product. That should work. You can >> compare that and the one you have. The sample is at >> "$SERVER_ROOT/samples/dbs/mongoDB/MongoDBSampleService.dbs". >> >> [1] https://wso2.org/jira/browse/DS >> >> Cheers, >> Anjana. >> >> On Mon, Dec 1, 2014 at 1:57 PM, Chamila De Alwis <[email protected]> >> wrote: >> >>> Hi Anjana, >>> >>> I tried that too. :) It resulted in an NPE. >>> >>> <soapenv:Fault xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" >>> xmlns:axis2ns43="http://ws.wso2.org/dataservice"> >>> <soapenv:Code> >>> <soapenv:Value>axis2ns43:UNKNOWN_ERROR</soapenv:Value> >>> </soapenv:Code> >>> <soapenv:Reason> >>> <soapenv:Text xml:lang="en-US">DS Fault Message: Error in DS non >>> result invoke. >>> DS Code: UNKNOWN_ERROR >>> Nested Exception:- >>> javax.xml.stream.XMLStreamException: DS Fault Message: Error in >>> MongoQuery.runQuery: null >>> DS Code: UNKNOWN_ERROR >>> Source Data Service:- >>> Name: testMongoService >>> Location: /testMongoService.dbs >>> Description: N/A >>> Default Namespace: http://ws.wso2.org/dataservice >>> Current Request Name: mongo_find >>> Current Params: {} >>> Nested Exception:- >>> java.lang.NullPointerException >>> >>> </soapenv:Text> >>> </soapenv:Reason> >>> <soapenv:Detail> >>> <axis2ns42:DataServiceFault xmlns:axis2ns42=" >>> http://ws.wso2.org/dataservice"> >>> <axis2ns42:current_params>{}</axis2ns42:current_params> >>> >>> <axis2ns42:current_request_name>mongo_find</axis2ns42:current_request_name> >>> >>> >>> <axis2ns42:nested_exception>java.lang.NullPointerException</axis2ns42:nested_exception> >>> <axis2ns42:source_data_service> >>> >>> <axis2ns42:location>/testMongoService.dbs</axis2ns42:location> >>> <axis2ns42:default_namespace>http://ws.wso2.org/dataservice >>> </axis2ns42:default_namespace> >>> <axis2ns42:description>N/A</axis2ns42:description> >>> >>> <axis2ns42:data_service_name>testMongoService</axis2ns42:data_service_name> >>> </axis2ns42:source_data_service> >>> <axis2ns42:ds_code>UNKNOWN_ERROR</axis2ns42:ds_code> >>> </axis2ns42:DataServiceFault> >>> </soapenv:Detail> >>> </soapenv:Fault> >>> >>> >>> Regards, >>> Chamila de Alwis >>> Software Engineer | WSO2 | +94772207163 >>> Blog: code.chamiladealwis.com >>> >>> >>> >>> On Mon, Dec 1, 2014 at 1:54 PM, Anjana Fernando <[email protected]> wrote: >>> >>>> Hi Chamila, >>>> >>>> Just use "TestCollection.findOne()" as the query expression, basically >>>> drop the "db" part. It should work then. >>>> >>>> Cheers, >>>> Anjana. >>>> >>>> On Mon, Dec 1, 2014 at 1:38 PM, Chamila De Alwis <[email protected]> >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> I'm trying to query a mongoDb, using the following data service. >>>>> >>>>> <data name="testMongoService"> >>>>> <config id="capedev-mongo"> >>>>> <property name="mongoDB_servers">172.17.0.4:27017</property> >>>>> <property name="mongoDB_database">*TestDB*</property> >>>>> <property name="mongoDB_write_concern">NONE</property> >>>>> <property name="mongoDB_read_preference">PRIMARY</property> >>>>> <property name="mongoDB_autoConnectRetry">true</property> >>>>> </config> >>>>> <query id="mongo_find" useConfig="capedev-mongo"> >>>>> <expression>*db.TestCollection.findOne()*</expression> >>>>> </query> >>>>> <operation name="mongo_find"> >>>>> <description>mongo find operation</description> >>>>> <call-query href="mongo_find"/> >>>>> </operation> >>>>> <resource method="GET" path="test"> >>>>> <call-query href="mongo_find"/> >>>>> </resource> >>>>> </data> >>>>> >>>>> >>>>> I can't get data from this service, it fails with the following error >>>>> message. However I can execute the same expression on the mongo db browser >>>>> I'm using because I've created the TestDB database and the TestCollection >>>>> collection. >>>>> >>>>> <soapenv:Fault xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" >>>>> xmlns:axis2ns38="http://ws.wso2.org/dataservice"> >>>>> <soapenv:Code> >>>>> <soapenv:Value>axis2ns38:UNKNOWN_ERROR</soapenv:Value> >>>>> </soapenv:Code> >>>>> <soapenv:Reason> >>>>> <soapenv:Text xml:lang="en-US">DS Fault Message: Error in DS non >>>>> result invoke. >>>>> DS Code: UNKNOWN_ERROR >>>>> Nested Exception:- >>>>> javax.xml.stream.XMLStreamException: DS Fault Message: Error in >>>>> MongoQuery.runQuery: DS Fault Message: *Unknown MongoDB operation >>>>> 'TestCollection.findOne'* >>>>> DS Code: UNKNOWN_ERROR >>>>> >>>>> DS Code: UNKNOWN_ERROR >>>>> Source Data Service:- >>>>> Name: testMongoService >>>>> Location: /testMongoService.dbs >>>>> Description: N/A >>>>> Default Namespace: http://ws.wso2.org/dataservice >>>>> Current Request Name: mongo_find >>>>> Current Params: {} >>>>> Nested Exception:- >>>>> DS Fault Message: Unknown MongoDB operation 'TestCollection.findOne' >>>>> DS Code: UNKNOWN_ERROR >>>>> >>>>> >>>>> </soapenv:Text> >>>>> </soapenv:Reason> >>>>> <soapenv:Detail> >>>>> <axis2ns37:DataServiceFault xmlns:axis2ns37=" >>>>> http://ws.wso2.org/dataservice"> >>>>> <axis2ns37:current_params>{}</axis2ns37:current_params> >>>>> >>>>> >>>>> <axis2ns37:current_request_name>mongo_find</axis2ns37:current_request_name> >>>>> <axis2ns37:nested_exception>DS Fault Message: Unknown MongoDB >>>>> operation 'TestCollection.findOne' >>>>> DS Code: UNKNOWN_ERROR >>>>> </axis2ns37:nested_exception> >>>>> <axis2ns37:source_data_service> >>>>> >>>>> <axis2ns37:location>/testMongoService.dbs</axis2ns37:location> >>>>> <axis2ns37:default_namespace> >>>>> http://ws.wso2.org/dataservice</axis2ns37:default_namespace> >>>>> <axis2ns37:description>N/A</axis2ns37:description> >>>>> >>>>> <axis2ns37:data_service_name>testMongoService</axis2ns37:data_service_name> >>>>> </axis2ns37:source_data_service> >>>>> <axis2ns37:ds_code>UNKNOWN_ERROR</axis2ns37:ds_code> >>>>> </axis2ns37:DataServiceFault> >>>>> </soapenv:Detail> >>>>> </soapenv:Fault> >>>>> >>>>> >>>>> Regards, >>>>> Chamila de Alwis >>>>> Software Engineer | WSO2 | +94772207163 >>>>> Blog: code.chamiladealwis.com >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> [email protected] >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Anjana Fernando* >>>> Senior Technical Lead >>>> WSO2 Inc. | http://wso2.com >>>> lean . enterprise . middleware >>>> >>> >>> >> >> >> -- >> *Anjana Fernando* >> Senior Technical Lead >> WSO2 Inc. | http://wso2.com >> lean . enterprise . middleware >> > >
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
