Great! .. Thanks, and yeah, having the stacktrace is useful, I see you've
already put it.

Cheers,
Anjana.

On Mon, Dec 1, 2014 at 2:32 PM, Chamila De Alwis <chami...@wso2.com> wrote:

> 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 <chami...@wso2.com>
> 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 <anj...@wso2.com> 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 <chami...@wso2.com>
>>> 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 <anj...@wso2.com>
>>>> 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 <chami...@wso2.com>
>>>>> 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
>>>>>> Dev@wso2.org
>>>>>> 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
>>>
>>
>>
>


-- 
*Anjana Fernando*
Senior Technical Lead
WSO2 Inc. | http://wso2.com
lean . enterprise . middleware
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to