Fazer busca OJB com SQL? alguem sabe?

pessoal, tenho o seguinte código::


    public String montaQuery(Vector vetor){
        String query = "select tit_01 from alx_tit where tit_01 like ";
        String queryTemp = "";
        int i;
        for(i = 0;i < vetor.size(); i++){
            int j = i;
            if(j+1 < vetor.size()){
                queryTemp = queryTemp + "'% " + vetor.get(i) + " %' or tit_01 like " + "'%" + vetor.get(i) + "' or tit_01 like " + "'" + vetor.get(i) + "%'  or tit_01 like ";
            }
            else if(j+1 == vetor.size()){
                queryTemp = queryTemp + "'% " + vetor.get(i) + " %' or tit_01 like " + "'%" + vetor.get(i) + "' or tit_01 like " + "'" + vetor.get(i) + "%'";
            }   
        }
       
        query = query + queryTemp;
        return query;
    }

ele recebe um vector e retorna uma String query, que contem o select que eu estou precisando fazer, até ai tudo bem.

o problema é, como posso fazer para rodar esse select no ojb?


Vector listaDeTermo; // vetor para receber a listaTermo da classe MotorPesquisa
                String termoPesqAvancada = request.getParameter("text1"); // pega oque estiver no campo de pesquisa do pesquisacombinada.jsp
                listaDeTermo = envia.processaTermo(termoPesqAvancada); // envia a var text1 para o processaTermo do MotorPesquisa
                query = envia.montaQuery(listaDeTermo);
                PersistenceBroker broker = null;
                try {
                    broker = PersistenceBrokerFactory.defaultPersistenceBroker();
                    Criteria crit1 = new Criteria();
                    crit1.addSql(query);
                    Query q = QueryFactory.newQuery(br.com.alexandria.ojbalex.Biblioteca.class, crit1, true);
                    Collection someArticles = broker.getCollectionByQuery(q);
                    java.util.Iterator iter = someArticles.iterator();
                    while (iter.hasNext()) {
                        br.com.alexandria.ojbalex.Biblioteca biblioteca = (br.com.alexandria.ojbalex.Biblioteca)iter.next();
                        out.println(biblioteca.getCodigo() + " - " + biblioteca.getNome() + "<br>");
                    }
                } catch (Throwable t) {
                   t.printStackTrace();
                   
                }

            }

não sei se esse addSql(query) esta correto, estou uma lida na api do ojb e fala assim desse addSql:

será q é esse o meu problema?
no criteria eu devo usar oque para rodar essa minha query?
Obrigado.[/quote]