Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Solr Wiki" for change 
notification.

The "SolrGlassfish" page has been changed by knaak.
The comment on this change is: initial commit.
http://wiki.apache.org/solr/SolrGlassfish?action=diff&rev1=1&rev2=2

--------------------------------------------------

  
  Look for Enterprise Service on the left hand side and click on it.  Look for 
"System Properties" tab along the top, click on it.  Here you will setup your 
Solr home and data directories.  Click on "Add Property" and in the name field 
put:
  
- ''solr.solr.home'' and in the value put the fully qualified path to your solr 
folder.  Example in Linux would be /opt/solr. 
+ ''solr.solr.home'' and in the value put the fully qualified path to your solr 
folder.  Example in Linux would be ''/opt/solr''. 
  
- ''solr.data.dir'' and add the location of your data directory, an example 
might be /var/solrdata/
+ ''solr.data.dir'' and add the location of your data directory, an example 
might be ''/var/solrdata/''  You will need to ensure that the permissions are 
set here, consult Solr installation documentation for assistance.
  
  Then click on "Save" button in the upper right hand corner.  I then restarted 
my Glassfish server to ensure the properties were set by clicking on the 
"General" tab and then "Restart".
  
  Once this is done, you may deploy the war.  For apache-solr-1.4.0, you should 
copy apache-solr-1.4.0/dist/apache-solr-1.4.0.war to your 
$GLASSFISHHOME/glassfishv3/domains/''domainname''/autodeploy.  You can then 
verify that Solr deployed by going to that folder and you should see 
apache-solr-1.4.0.war.deployed.
  
- Check the logs directory 
($GLASSFISHHOME/glassfishv3/domains/''domainname''/logs) and you should see the 
Solr start up including it finding the solr.solr.hom and solr.data.dir 
parameters.  Goto http://'servername':8080/apache-solr-1.4.0/  to confirm 
successful installation.
+ Check the logs directory 
($GLASSFISHHOME/glassfishv3/domains/''domainname''/logs) and you should see the 
Solr start up including it finding the solr.solr.home and solr.data.dir 
parameters.  Goto http://'servername':8080/apache-solr-1.4.0/  to confirm 
successful installation.
  
+ 
+ == Glassfish and UTF-8 ==
+ 
+ Solr and Glassfish appear to have a problem similar to Tomcat with UTF-8 and 
using GET to make thee requests.  Glassfish accepts the URL to contain UTF-8, 
but seems to fail with the query parameters.  This is how I handled this 
problem, I am sure there is a better way.  Here is how the problem shows itself:
+ 
+ Goto to http://localhost:8080/apache-solr-1.4.0/admin/form.jsp and search for 
num'''é'''ro.  Then check the glassfish server.log and you will see:
+ 
+ {{{INFO: [] webapp=/apache-solr-1.4.0 path=/select 
params={indent=on&version=2.2&q=numéro&fq=&start=0&rows=10&fl=*,score&qt=standard&wt=standard&explainOther=&hl.fl=}
 hits=0 status=0 QTime=16}}}
+ 
+ Note how Glassfish handled the encoding, it converted the single double-byte 
to two single-bytes.
+ 
+ I happen to be using Solrj for my application, and so my solution was to 
switch to POST rather than GET.  I did this here:
+ 
+ {{{
+             return server.query(new solrQuery().setQuery(query), METHOD.POST);
+ }}}
+ 
+ Note the '''METHOD.POST''' which obviously POSTs the data as parameters which 
Glassfish does seem to support.  That bypasses the issue of running a 
non-Embedded Solr instance on Glassfish with UTF-8 queries under Solrj.
+ 

Reply via email to