SPSearch.asmx doesn’t return results when integrated with Search server 2008

Last week I came across a very weird issue that the client application for Search using the SPSearch.asmx web service is not returning any result in WSS 3.0 environment. I investigated the client application and the Query Packet built within it and for my bad everything is perfect and I couldn’t find any breakthrough or the root cause which is causing it. The OOB search is working fine and giving me the result. During the investigation I had the turning point in this mystery story and the truth is that the WSS 3.0 environment is integrated with the “Search Server 2008”… ALAS !!!

 

WSS 3.0 only installation has the “SPSearch.asmx” Web Service to use the Search and query against the Windows SharePoint Search Service Engine.

 

But When the Search Server 2008 is integrated with the WSS 3.0 then the WSS 3.0 will start using the Enterprise Office Search Service and all the DLL’s and the services related to it will be available with the WSS 3.0 Environment. As well the “Search.asmx” web service is also installed which uses the Enterprise Office Search Service.

 

When you develop client application is such a environment (WSS 3.0 integrated with the Search Server 2008) for the Search please make sure that you are adding reference to the “Search.asmx” Web Service and not to the “SPSearch.asmx” Web service. I just changed the reference to the "Search.asmx" and hurray the search started returing the results.

 

If you use the “SPSearch.asmx” web service by just remembering the WSS 3.0 environment then you will not get any results returned as the WSS 3.0 environment integrated with the Search Server 2008 will be using the “Enterprise Office Search Service”.

 

So if you have a standalone WSS 3.0 installation then you need to use the “SPSearch.asmx” web service for querying in the client application ( As well the “Search.asmx” will not be available with the Standalone WSS 3.0 installation). If you have the search server 2008 configured with the WSS 3.0 then you need to work with the “Search.asmx” web service for querying in the client application.

 

Hope this helps someone to come out of this frustration quicker than me J