You'll *not* write a servlet. You'll write implement the Filter interface http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/Filter.html
In the doFilter method, you'll create a ServletRequestWrapper which changes the incoming param. Then you'll call chain.doFilter with the new request object. You'll need to add this filter before the SolrRequestFilter in Solr's web.xml Look at http://www.onjava.com/pub/a/onjava/2001/05/10/servlet_filters.html?page=1for more details. On Mon, May 12, 2008 at 8:51 PM, Umar Shah <[EMAIL PROTECTED]> wrote: > On Mon, May 12, 2008 at 8:42 PM, Shalin Shekhar Mangar < > [EMAIL PROTECTED]> wrote: > > > ServletRequest and ServletRequestWrapper are part of the Java > servlet-api > > (not Solr). Basically, Koji is hinting at writing a ServletFilter > > implementation (again using servlet-api) and creating a wrapper > > ServletRequest which modifies the underlying request params which can > then > > be used by Solr. > > > > sorry for the silly question, basically i am new to servlets. > Now If my understanding is right , I will need to create a servlet/wrapper > that would listen the user facing queries and then pass the processed text > to solr request handler and I need to pack this servlet class file into > Solr > war file. > > But How would I ensure that my servlet is called instead of solr request > handler? > > > > On Mon, May 12, 2008 at 8:36 PM, Umar Shah <[EMAIL PROTECTED]> wrote: > > > > > On Mon, May 12, 2008 at 2:50 PM, Koji Sekiguchi <[EMAIL PROTECTED]> > > > wrote: > > > > > > > Hi Umar, > > > > > > > > You may be able to preprocess your request parameter in your > > > > servlet filter. In the doFilter() method, you do: > > > > > > > > ServletRequest myRequest = new MyServletRequestWrapper( request ); > > > > > > > > > Thanks for your response, > > > > > > Where is the ServletRequest class , I am using Solr 1.3 trunk code > > > found SolrServletm, butit is depricated, which class can I use instead > > of > > > SolrRequest in 1.3 codebase? > > > > > > > > > I also tried overloading Standard request handler , How do I re write > > > queryparams there? > > > > > > Can you point me to some documentation? > > > > > > > > > > : > > > > chain.doFilter( myRequest, response ); > > > > > > > > And you have MyServletRequestWrapper that extends > > ServletRequestWrapper. > > > > Then you can get|set q* parameters through getParameter() method. > > > > > > > > Hope this helps, > > > > > > > > Koji > > > > > > > > > > > > > > > > Umar Shah wrote: > > > > > > > > > Hi, > > > > > > > > > > Due some requirement I need to transform the user queries before > > > passing > > > > > it > > > > > to the standard handler in Solr, can anyone suggest me the best > way > > > to > > > > > do > > > > > this. > > > > > > > > > > I will need to use a transfomation class that would provide > > functions > > > to > > > > > process the input query 'qIn' and transform it to the resultant > > query > > > > > 'qOut' > > > > > and then pass it to solr handler as if qOut were the original user > > > > > query. > > > > > > > > > > thanks in anticipation, > > > > > -umar > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > Regards, > > Shalin Shekhar Mangar. > > > -- Regards, Shalin Shekhar Mangar.