Skip to content

Instantly share code, notes, and snippets.

@makuk66
Created November 22, 2011 21:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save makuk66/1387047 to your computer and use it in GitHub Desktop.
Save makuk66/1387047 to your computer and use it in GitHub Desktop.
a simple solrj with basic authentication example
/*
* Simple SolrJ with basic auth example
*
* wget http://apache.mirrors.timporter.net//lucene/solr/3.4.0/apache-solr-3.4.0.tgz
* tar xvzf apache-solr-3.4.0.tgz
*
* CLASSPATH=apache-solr-3.4.0/dist/apache-solr-solrj-3.4.0.jar:apache-solr-3.4.0/dist/solrj-lib/commons-codec-1.4.jar:apache-solr-3.4.0/dist/solrj-lib/commons-httpclient-3.1.jar:apache-solr-3.4.0/dist/solrj-lib/commons-io-1.4.jar:apache-solr-3.4.0/dist/solrj-lib/jcl-over-slf4j-1.6.1.jar:apache-solr-3.4.0/dist/solrj-lib/slf4j-api-1.6.1.jar:.
*
* javac -cp $CLASSPATH solrj.java
* java -cp $CLASSPATH solrj
*/
import org.apache.solr.client.solrj.*;
import org.apache.solr.client.solrj.impl.CommonsHttpSolrServer;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.*;
import java.lang.String;
import java.util.*;
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.auth.AuthScope;
public class solrj {
public static void main(String[] args) {
try {
test();
} catch (Exception e) {
e.printStackTrace(System.err);
}
}
public static void test() throws Exception {
String USERNAME = "x";
String PASSWORD = "x";
String HOSTNAME = "x";
String ROUTEID = "x";
CommonsHttpSolrServer server = new CommonsHttpSolrServer("http://" + USERNAME + ":" + PASSWORD + "@" + HOSTNAME + "/" + ROUTEID + "/solr/collection1");
Credentials defaultcreds = new UsernamePasswordCredentials(USERNAME, PASSWORD);
server.getHttpClient().getState().setCredentials(new AuthScope(HOSTNAME, 80, AuthScope.ANY_REALM), defaultcreds);
server.getHttpClient().getParams().setAuthenticationPreemptive(true);
SolrInputDocument doc1 = new SolrInputDocument();
doc1.addField("id", "id123");
doc1.addField("body", "some body");
Collection<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
docs.add(doc1);
server.add(docs);
server.commit();
SolrQuery query = new SolrQuery();
query.setQuery("*:*");
QueryResponse rsp = server.query(query);
SolrDocumentList resultDocs = rsp.getResults();
Iterator<SolrDocument> iter = resultDocs.iterator();
while (iter.hasNext()) {
SolrDocument resultDoc = iter.next();
String id = (String) resultDoc.getFieldValue("id");
System.out.println("id=" + id);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment