Created
November 22, 2011 21:32
-
-
Save makuk66/1387047 to your computer and use it in GitHub Desktop.
a simple solrj with basic authentication example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* 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