Solr instance accessible from browser but not from terminal - solr

I'm working on creating a search engine using Python + Solr. I went through the demo tutorials given here https://lucene.apache.org/solr/guide/7_2/solr-tutorial.html#exercise-1 . I am able to create the solr instance as well as create a collection and add documents to it and perform search. I'm able to open the link http://192.168.0.202:8983/solr/ on my browser. The same is not opening from the terminal. Would anyone here have an idea how to fix this ?
Thanks,
Nilesh.

Related

How to fix or remove Solr configuration?

I'm trying to set up Solr on RHEL as a better search engine for Drupal and admittedly I don't really know what I'm doing. I've installed Solr and am now trying to create a core. While crafting the URL, I accidently clicked on it and now I have a unusable configuration. I'm getting this error:
ylncore-name: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Could not load conf for core ylncore-name: Error loading solr config from /var/solr/data/path/to/dir/conf/solrconfig.xml
I deleted the core via the dashboard and from the command line which didn't help. I've grepped across the drive for files with the path but can't find any. Web searching makes it sound like I have to do something with Zookeeper but I don't know what. How do I fix or delete the config so that I can start over?

SolrJ : Server refused connection

For a customer, I need to write a search engine running on Linux. I am using SolrJ and did not configure anything else so far.
I followed https://lucene.apache.org/solr/guide/7_4/using-solrj.html#common-build-systems and thus added SolrJ in the project pom.xml, and also that tutorial.
The SolR client is instanciated like :
solrClient = new HttpSolrClient.Builder(
GeneralSettings.getRootSolrPath() + "/" + getCollectionName()).
build();
But for any query or commit I keep getting org.apache.solr.client.solrj.SolrServerException: Server refused connection at: http://localhost:8983/solr/test. I read http://lucene.472066.n3.nabble.com/Default-query-error-quot-Server-refused-connection-quot-td4010806.html but I am already using the expected port.
My understanding of the java doc SolrClient ’s handle the work of connecting to and communicating with Solr, and are where most of the user configuration happens. is that I only need to import the jar and then everything will work out of the box.
But as I keep getting this "Server refused connection" error I may have to configure something, but I could not find how to configure SolrJ (use solrconfig.xml or core.properties or call System.setProperty or call an API).
Please note that Apache may be running somewhere because I used to test some sites on it.
So how to get rid of this "Server refused connection" error?
Any help or tutorial to set SolrJ up based on Solr available doc would be very much appreciated,
Edit 2018-08-12 16:10
I thought SolrJ could work like Lucene, without a server, but it looks that I missed one essential piece: installing Solr (see https://www.baeldung.com/apache-solrj). I'll give it a try and post updates.
In case it might help someone else starting with SolrJ here are the steps I did to get rid of the error mentionned in the title (actually I followed https://www.baeldung.com/apache-solrj).
Downloaded the latest binary release of Solr
Extracted it somewhere
CDed into that dir
Lauched bin/solr start from that dir
Created a core with bin/solr create -c coreName (maybe another way exists but I hadn't been able to make it work so far)
Then Solr was running and listening on port 8983, and my Java app could connect to it via SolrJ.

How to set Data Import Handler and Scheduler using solrJ Client

I am new to solr search, i have completed a simple search.
Now I want to index documents directly from Database and want set scheduler or trigger for updating index when there is any change in DB.
I know that I can do it with DataImportHandler but can't understand its flow.
can you help me that from which steps I should have to start this process?
or can anyone just give me pointers to do this ??
I want to do this all things using SolrJ client.
This task requires many parts to work together. Work through https://wiki.apache.org/solr/DataImportHandler
DataImportHandler is a Solr component, which means that it runs inside the Solr instance. All you have to do is configure Solr and than run the DHI through the Dataimport Screen.
On the other hand SolrJ is an API that makes it easy for Java applications to talk to Solr. So you can write your own applications that create, modify, search and delete documents to Solr.
try to do simple edit and delete function on button click event and
send the id with that url in servlet and do your jdbc opertaion
after that successfully commited, call your data import command from solrj and redirect it to your index page
thats it.

Liferay document checkin issue

I'm still new to Liferay and using Liferay 6.2
what i'm doing:
I am trying to add a document manually into my database using insert statement.
I inserted into dlfileentry, dlfileversion and AssertEntry.
Also, i created a folder with the valid name and file.
The issue:
upon entering the Documents and Media portlet, i can see the document name there but when i click on checkout, it will prompt a error saying that Documents and Media is temporarily unavailable. however i am still able to download the valid document.
Am i doing something wrong? Personally, i feel that i am missing one more table for the database but i'm not sure .
Thanks!
Yes, you're doing something wrong: You should never write to Liferay's database with SQL, as there might be more data required than what's directly visible to you. Obviously, you're running into exactly such an issue.
Liferay has an API which you can use locally, from within the same application server, or remotely as JSON or SOAP service. You should exclusively use this for write access to the database.
Alternatively, you might consider WebDAV access to your document repository as the way to add more documents to the document library.

Full Text Search in GAE

I've developing a test app using GAE/J + Objectify and now trying to query my Data with Full Text Search (assuming Full Text Search is same as queries my data with GQL).
When I go to http://localhost:8888/_ah/admin/search it shows me following error:
There are no Full Text Search indexes in the Empty namespace. You need
to add data programatically before you can use this tool to view and
edit it.
I do have some data in my database to test the search.
What should I do enable that to search my data using GQL.
I believe FTS is still under a trusted tester program (I haven't seen any official docs even for the dev environment)
You might want to try signing up here:
https://docs.google.com/a/google.com/spreadsheet/viewform?formkey=dEdWcnRJUXZ2VGR3YmVsT1Q1WVB2Smc6MQ

Resources