I'm not following exactly what you're after here in detail, but I think this 
will help:

   <http://www.slideshare.net/erikhatcher/rapid-prototyping-with-solr-5675936>

See slides 24 and 25.  Note the use of $id in the /document request handler 
definition using parameter substitution, a really cool technique.

        Erik

On Feb 1, 2012, at 17:17 , Yuhao wrote:

> Like the title says, I want to create a "page" to display a bunch of document 
> attributes.  I accomplished this by creating a new handler and a template for 
> it.  However, I'm having trouble pulling up the details of the document in 
> the new handler.  Here's my code.  Is this a good way to do it?  I first pass 
> the doc ID to the handler, which I then use to pull up the details.  
> 
> 
> ********************************* BEGIN *******************************
> #set($id = $params.get("id"))
> ## Note: id is the same thing as "Entrez ID"
> 
> 
> #foreach ($doc in $response.results)
>   #if ($doc.getFieldValue('Entrez ID') == $id) ## Only show attrs for the 
> current doc
>     #foreach ($field_name in $doc.getFieldNames())
>       <b>$field_name</b>: $doc.getFieldValue($field_name)<br/><br/>
>     #end
>   #end
> #end
> ********************************* END *******************************
> 
> 
> This approach requires the document to be in the search results.  The way I 
> pass the ID to the handler right now, is to simply add "id=$id" to the URL, 
> without the rest of the querystring that was used to conceive the current 
> query.  I need to get the rest of the querystring and pass them along to the 
> handler to ensure the document is in the search result.  However, I don't 
> know of a good way.  I tried the following code:
> 
> #set($querystring = "")
> #foreach ($param in $request.params.getParameterNamesIterator())
>   #set($querystring = $querystring + 
> "&$param=$esc.url($request.params.get($param))" )
> #end
> 
> 
> Unfortunately, the above code returns a lot of unnecessary params that are 
> not part of the querystring, and it fails to put the document in the search 
> result.  Is there a better way to get the URL querystring (and just the 
> querystring, not other environment parameters)?

Reply via email to