lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexandre Rafalovitch <arafa...@gmail.com>
Subject Re: Reading a prameter set in browser in request handler
Date Sun, 02 Oct 2016 16:28:04 GMT
You've got Parameter Substitution:
https://cwiki.apache.org/confluence/display/solr/Parameter+Substitution

I think this should do the trick. Perhaps combined with switch query
parser as https://cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-SwitchQueryParser
(like in an example here:
https://gist.github.com/arafalov/5e04884e5aefaf46678c )

Regards,
   Alex.
----
Newsletter and resources for Solr beginners and intermediates:
http://www.solr-start.com/


On 2 October 2016 at 23:19, Mark Robinson <mark123learns@gmail.com> wrote:
> Thanks Alex for the reply.
>
> Yes. in this context I want to determine the weather of the country passed
> from browser which will go into another function query.
>
> If I do the above directly from the browser it works great. I am trying to
> move this to the requesthandler so that I need to pass only the country
> name which is what varies.
> If all parameters in the browser itself:-
> &country=USA&climate=if (weatherDetermine, weather_${country},
> defaultField).
>
> Basically  I am trying to configure most of my params in request handler so
> that I need to pass only one param that actually varies, reducing my query
> url length.
>
> So baseically was trying to find out *how I can access a parameter passed
> from the browser in a request handler to determine on a field dynamically
> using the info passed from browser.*
>
> Thanks!
> Mark
>
>
> On Sun, Oct 2, 2016 at 11:46 AM, Alexandre Rafalovitch <arafalov@gmail.com>
> wrote:
>
>> The variable substitution in the solrconfig.xml happens when that file
>> is loaded, right at the start of core initialization. Your request
>> variable comes much later. I don't think you can expand it this way.
>>
>> Could you explain a bit more what you are trying to achieve in
>> business terms. E.g. 'weather' term needs to feed into something else
>> in query I am guessing.
>>
>> Regards,
>>     Alex.
>> ----
>> Newsletter and resources for Solr beginners and intermediates:
>> http://www.solr-start.com/
>>
>>
>> On 2 October 2016 at 22:29, Mark Robinson <mark123learns@gmail.com> wrote:
>> > Hi,
>> >
>> > I pass a parameter *&country=USA* from the browser as part of my query.
>> > (I have fields *weather_USA*, *weather_UK* etc... in my document).
>> > How do I retrieve the parameter "country" in my requesthandler.
>> >
>> > I tried in my requesthandler:-
>> >
>> >     <lst name="defaults">
>> >         <str name="country">storeId</str>
>> >         <str name="weather">weather_${country}</str>
>> >
>> >         ...but it is not working.  Even tried:-
>> >              <str name="weather">weather_$country</str>
>> >
>> >         I am trying to set my weather field based on the *country
>> *passed.
>> >
>> >   Any suggestionsis is highly appreciated.
>> >
>> > Thanks!
>> > Mark
>>

Mime
View raw message