Die einfachste Möglichkeit, eine Suchabfrage zu erstellen, besteht in der Verwendung der Methode RAMSession.createAssetQuery(String). Sie können jede Zeichenfolge übergeben, die Sie in das Sucheingabefeld im Web- oder Eclipse-Client eingeben würden. Sie können auch einen Direktaufruf zur Suche einfügen, den Sie aus dem Textfeld 'Suchen' im Web-Client übernommen haben.

Im Eclipse-Client können Sie einen Direktaufruf zur Suche über die Option 'In Zwischenablage kopieren' des Dropdown-Menüs in der Sicht 'Assetsuche' abrufen.
Die Methode createAssetQuery gibt ein Objekt RAMAssetQueryBuilder zurück, das in das vereinfachte Objekt SeachQuery umgesetzt wurde. Dieses Objekt kann an die Methode RAMSession.getAssets(SearchQuery) übergeben werden und gibt ein Objekt RAMSearchResult zurück, das in das allgemeine Objekt SearchResult umgesetzt wurde. Aus dem Objekt SearchResult können Sie die Gesamtanzahl Assets abrufen, die diese Suchabfrage erfüllen, sowie eine Liste der Objekte RAMAsset für diese Ergebnisseite.
Nachfolgend ein Beispiel für eine einfache Suche nach allen Assets, die mit den Wörtern "Rational Asset Manager" und "javadoc" übereinstimmen:
SearchQuery query = session.createAssetQuery("Rational Asset Manager javadoc");
SearchResult searchResult = session.getAssets(query);
RAMAssetSearchResult[] assets = (RAMAssetSearchResult[])searchResult.getAssetSearchResults();
Sie können die synchronisierte Suche (oder Echtzeitsuche) verwenden, um sicherzustellen, dass die Suchergebnisse mit der Datenbank synchronisiert sind. Verwenden Sie das Flag SYNCHRONIZED_SEARCH_FLAG, um die Echtzeitsuche zu ermöglichen.
Wenn Sie die synchronisierte Suche verwenden, stimmen die Ergebnisse, die vom Index zurückgegeben werden, mit dem Inhalt der Datenbank zum Zeitpunkt der Abfrageübergabe überein. Eine synchronisierte Suche kann länger dauern als ein normaler Suchvorgang, weil die Anforderung warten muss, bis der Index mit der Datenbank synchronisiert ist, wenn kurz zuvor Aktualisierungen am System vorgenommen wurden.
Es folgt ein Beispiel für eine synchronisierte Suche:
RAMAssetQueryBuilder query = (RAMAssetQueryBuilder)session.createAssetQuery("Synchronized Search Test");
query.setSearchModes(SearchQuery.SYNCHRONIZED_SEARCH_FLAG);
SearchResult searchResult = session.getAssets(query);