title: Very strange behaviour with cfhttp an cfhttpparam
body: <p>Happy New Year,</p>
  
  <p>The New Year found me wrestling with a coding problem. I am using ColdFusion and as for CFML engine “openBD”. I have a CFC that handles requests for the search engine that I use (SOLR search engine). I am “feeding” that CFC with some arguments. The CFC performs as it should. But when I am trying to pass a specific argument (#apofasi_taxonomy #) the CFC doesn’t returns nothing (If I pass the above argument directly to the search engine –not using CFC- I can see return/search results)</p>
  
  <p><strong>Part of CFC:</strong>
  
  
  </p>
  
  <pre><code>  &lt;cffunction name="searchP" access="remote" returnFormat="json"&gt;         
        &lt;cfargument name="q" type="string" default="" required="yes"&gt; 
        &lt;cfargument name="apofasi_taxonomy" type="string" default="apofasi_taxonomy:(*)" required="yes"&gt;
        &lt;cfargument name="apofasi_tmima" type="string" default="apofasi_tmima:(*)" required="yes"&gt;
        &lt;cfargument name="apofasi_date" type="string" default="apofasi_date:(*)" required="yes"&gt;  
        &lt;cfargument name="apofasi_number" type="string" default="apofasi_number:(*)" required="yes"&gt; 
        &lt;!---&lt;cfargument name="apofasi_taxonomy" type="string" default="*"&gt;
        &lt;cfargument name="apofasi_tmima" type="string" default="*"&gt;
        &lt;cfargument name="apofasi_date" type="string" default="*"&gt;  
        &lt;cfargument name="apofasi_number" type="string" default="*"&gt;---&gt;
  
        &lt;cfset theUrl = 'http://localhost/solr/areios_pagos/select/?'&gt;
  
        &lt;cfhttp method="get" url="#theUrl#" port="8090" result="rs" username="abcd" password="********"&gt;
          &lt;cfhttpparam type="url" name="q" value="#q#"&gt;
          &lt;cfhttpparam type="url" name="fq" value="#apofasi_taxonomy#+#apofasi_tmima#+#apofasi_date#+#apofasi_number#"&gt;
          &lt;!---&lt;cfhttpparam type="url" name="fq" value="apofasi_taxonomy:(3068 || ΠΟΙΝΙΚΕΣ) AND apofasi_date:(2010)"&gt;---&gt;        
          &lt;!---&lt;cfhttpparam type="url" name="fq" value="apofasi_taxonomy:(3068) AND apofasi_date:(*) AND apofasi_number:(*)"&gt;---&gt;
          &lt;cfhttpparam type="url" name="rows" value="120"&gt;
          &lt;cfhttpparam type="url" name="wt" value="json"&gt;
          &lt;cfhttpparam type="url" name="sort" value="score desc"&gt;
          &lt;cfhttpparam type="url" name="hl" value="true"&gt;
          &lt;cfhttpparam type="url" name="hl.fl" value="content,title"&gt;
          &lt;cfhttpparam type="url" name="fl" value="grid_title,title,url,ida,model,search_tag,solr_id"&gt;
          &lt;cfhttpparam type="url" name="f.content.hl.alternateField" value="content"&gt;
          &lt;cfhttpparam type="url" name="hl.maxAlternateFieldLength" value="800"&gt;
        &lt;/cfhttp&gt;
  </code></pre>
  
  <p><strong>Notice that the search engine consumes urls like:</strong> </p>
  
  <pre><code>http://localhost/solr/areios_pagos/select/?q=blahblah&amp;fq=apofasi_taxonomy:(3068)+ apofasi_tmima:(Α || Ζ)+ apofasi_date:(2007 || 2012)+apofasi_number:(666)
  </code></pre>
  
  <p>What I have checked until now: The arguments that I am passing to CFC are 100% OK (from html), I have double-checked if the search engine can consume the above url syntax. But I have noticed a very strange behavior. When I exclude the <strong>#apofasi_taxonomy#</strong> or <strong>#apofasi_tmima#</strong> arguments from the url completely the CFC is working (it returns results). 
  The values that <strong>#apofasi_taxonomy#</strong> argument takes are: <code>apofasi_taxonomy:(ΠΟΙΝΙΚΕΣ)</code>, <code>apofasi_taxonomy:(ΠΟΛΙΤΙΚΕΣ)</code>, <code>apofasi_taxonomy:(3068)</code> or <code>apofasi_taxonomy:(ΠΟΙΝΙΚΕΣ || 3068)</code>, <code>apofasi_taxonomy:(ΠΟΙΝΙΚΕΣ || ΠΟΛΙΤΙΚΕΣ)</code> and so on.</p>
  
  <p>I have noticed one more thing, <strong>#apofasi_taxonomy#</strong> argument is working with the values below: <code>apofasi_taxonomy(ΠΟΙΝΙΚΕΣ)</code>, <code>apofasi_taxonomy:(ΠΟΛΙΤΙΚΕΣ)</code>and <code>apofasi_taxonomy:(ΠΟΛΙΤΙΚΕΣ || ΠΟΙΝΙΚΕΣ)</code> but it is not working for <code>apofasi_taxonomy:(3068)</code>, <code>apofasi_taxonomy:(ΠΟΛΙΤΙΚΕΣ || 3068)</code>, <code>apofasi_taxonomy:(ΠΟΛΙΤΙΚΕΣ || 3068)</code> or <code>apofasi_taxonomy:(ΠΟΛΙΤΙΚΕΣ || ΠΟΛΙΤΙΚΕΣ || 3068)</code>. Isn’t that weird?</p>
  
  <p>The values that <strong>#apofasi_tmima#</strong> argument takes are: <code>Α || Α1 || Α2 || Β || Β2 || Γ || Δ || Ε || ΣΤ || Ζ || ΟΛΟΜΕΛΕΙΑ</code> e.g. <code>apofasi_tmima(Β || Β2 || ΟΛΟΜΕΛΕΙΑ)</code>.</p>
  
  <p>Keep in mind that the above values are in Greek language. </p>
  
  <p>Is there anyone out there that can help?</p>
  
  <p>With respect,
  Tom</p>
  
  <p><strong>edit: Moved requested XML provided in comments to the question</strong></p>
  
  <pre><code>&lt;fieldType name="text_areios_pagos" class="solr.TextField" positionIncrementGap="100"&gt;
      &lt;analyzer type="index"&gt;
          &lt;tokenizer class="solr.StandardTokenizerFactory"/&gt;
          &lt;filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_en.txt" enablePositionIncrements="true"/&gt;
          &lt;filter class="solr.LowerCaseFilterFactory"/&gt; 
          &lt;filter class="solr.EnglishPossessiveFilterFactory"/&gt;
          &lt;filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_el.txt" enablePositionIncrements="true"/&gt;
          &lt;filter class="solr.GreekLowerCaseFilterFactory"/&gt;
          &lt;filter class="solr.GreekStemFilterFactory"/&gt;
          &lt;filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/&gt;
          &lt;filter class="solr.PorterStemFilterFactory"/&gt;
      &lt;/analyzer&gt;
      &lt;analyzer type="query"&gt;
          &lt;tokenizer class="solr.StandardTokenizerFactory"/&gt;
          &lt;filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/&gt;
          &lt;filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_en.txt" enablePositionIncrements="true"/&gt;
          &lt;filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_el.txt" enablePositionIncrements="true"/&gt;
          &lt;filter class="solr.GreekLowerCaseFilterFactory"/&gt;
          &lt;filter class="solr.GreekStemFilterFactory"/&gt;
          &lt;filter class="solr.LowerCaseFilterFactory"/&gt;
          &lt;filter class="solr.EnglishPossessiveFilterFactory"/&gt;
          &lt;filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/&gt; 
          &lt;filter class="solr.PorterStemFilterFactory"/&gt;
      &lt;/analyzer&gt;
  &lt;/fieldType&gt;
  </code></pre>