Coldfusion verity search indexes duplicates
When I use the built in vertiy search engine, everything works fine except my resul
ts page provides duplicates of every result. I am using coldfusionMX7, does anyone know how to stop this from happeining?
Here is my search code:
<cfsearch
name = "GetResults"
collection="Operations_FieldOperations"
criteria="#form.Criteria#">
pretty basic.
I imagine it's because you've got the docs in your index twice. Reindex your collection.
Adam
Similar Messages
-
ColdFusion Verity Search Float Problem
I have a database full of products. One of the fields for each product in the database is a minimum price. I'm trying to create a search that says something like "find all products with a minimum price between X and Y." However, when it returns results, it includes numbers that are out of the range. For instance, if I say between 2 and 3 dollars, it will return the correct results but will include numbers like 25.00 and 245.00, and when I do something like "between 4 and 5 dollars" it returns the correct results with additional numbers like "40.00" and "434.00." So it seems to me that ColdFusion can't process the floating number correctly...It sees a number like "40.00" and assumes its in the range between 4 and 5. Here is my code for the indexing:
<cfquery name="v_qryProductInfo" datasource="#application.DSN#">
SELECT DISTINCT SP.pk_storeProductID,
P.productName,
C.categoryName,
P.prodTimeMin,
P.prodTimeMax,
PD.miniDesc,
PD.keywords,
CONVERT(float, (dbo.getMinPrice(pk_storeProductID))) AS minPrice
FROM tblProduct P
INNER JOIN tblProductDescription PD ON P.pk_productID = PD.fk_productID
INNER JOIN tblStoreProduct SP ON P.pk_productID = SP.fk_productID
INNER JOIN tblProductSubCategory PSC ON SP.pk_storeProductID = PSC.fk_productID
INNER JOIN tblSubCategory SC ON SC.pk_subCategoryID = PSC.fk_subCategoryID
INNER JOIN tblCategory C ON C.pk_categoryID = SC.fk_categoryID
WHERE (SP.blnStoreActive = 1)
AND (SP.fk_storeID = #application.storeID#)
</cfquery>
<cfdump var="#v_qryProductInfo#">
<h1>Indexing data...</h1>
<cfindex
action="refresh"
collection="#application.vcCollection#"
key="pk_storeProductID"
type="custom"
title="productName"
query="v_qryProductInfo"
body="miniDesc, keywords, pk_storeProductID, minPrice"
Custom1="minPrice"
Custom2="prodTimeMin"
Custom3="prodTimeMax"
Custom4="categoryName"
>
My cfsearch tag criteria looks like this:
<cfsearch
criteria="CF_CUSTOM1 >= #priceRangeMin# <AND> CF_CUSTOM1 <= #priceRangeMax#"
name="qryFoundProducts"
collection="#application.vcCollection#">
I've made the Custom1 column for the indexing the "minPrice" which is calculated as a function in my database. I've even tried making sure the number that is being entered in the Custom1 index is a float by using the CONVERT function in my SQL code. Any ideas why ColdFusion can't properly relate a float? It seems like it's trying to compare a string and a float, which isn't working too well.
Any info would be greatly apprecaited.Well, firstly: don't blame Adobe for Verity... Verity is (well: was) a separate product, and I don't think Verity as a company has even existed during Adobe's tenure at the helm (to mix metaphors awkwardly) of CF.
That said, one perhaps can blame Adobe for any disconnect between Verity and CF's support thereof, if Verity does actually support numeric processing, and CF mungs that somehow. I'm not saying this is the case, but who knows?
What Adobe perhaps didn't do is ditch or deprecate Verity earlier than it did. Lucene's been around for ages, and has been solid for ages, so I don't know why they didn't revise their search engine support earlier than they did. Oh well.
Now: your issue.
First thing, this won't work:
<cfset keyList = #Val(ValueList(qryFoundProducts.key))#>
val() returns the value of a number, whereas valueList() returns... a list. So it val() works at all, the result will just be the value of the first number in the list. You also don't need the pound-signs there, but either way, it won't affect your situation.
Second, as CF is loosely typed, it doesn't matter if you pass a numeric string or an actual number to a <cfqueryparam> tag, if you've said the value is supposed to be an integer (CF_SQL_INTEGER), then CF will automatically convert it to an integer if it can. So provided the values in your query column can be expressed as integers, they will convert with no intervention on your part.
So, in that light, I'm not sure your problem is necessarily what you think it is..?
But you say there's a problem in your WHERE clause, but you don't actually say what the problem actually is. Are you getting an error? Or just no records? The wrong records?
What do you see if you dump the query out? If you take the values output by valueList() and execute the query with those values in a different DB client (like MS SQL Studio or whatever), do you get the results you expect?
What sort of data is in the Verity collection btw? Are they documents, or DB data, or a mix, or what? If there are PKs coming out of the collection, it sounds like the data came from a DB in the first place. Can you not use full-text searching in your DB, and leave Verity out of the equation?
Adam -
Hi all,
We've setup verity collections on our internet site. It has a
dynamic updating facility for when the site authors add new records
(including pdf files). Every record entry (and updates) also
updates the dynamic verity collection.
Recently, we started getting an error:
An error occurred while performing an operation in the Search
Engine library. The collection is not available:
com.verity.coll.VCollectionNotAvailableException: Collection down
after opening. (10)
Can't seem to figure out what the problem is. Anyone got any
ideas?
cheers,
-ajayoh this is the code
<CFINDEX
collection="collectcmi "
action="refresh"
type="PATH"
key="D:\www\"
extensions=".html, .htm, .cfm, .cfml"
language="spanish"
recurse="yes"
urlPath="
http://mywebsite"
> -
Verity search engine or Google Mini?
Im setting up a website for a medium sized business and havnt
implemented the Coldfusion Verity search into the site yet... but I
was looking over the Google Mini and seems like an nice/intuitive
nice little box.
Should I go with the $2000 mini price tag if the company
wants effecient search results?Do a malware check with some malware scan programs.<br />
You need to scan with all programs because each program detects different malware.<br />
Make sure that you update each program to get the latest version of the database before doing a scan.<br />
* http://www.malwarebytes.org/mbam.php - Malwarebytes' Anti-Malware
* http://www.superantispyware.com/ - SuperAntispyware
* http://www.microsoft.com/windows/products/winfamily/defender/default.mspx - Windows Defender: Home Page
* http://www.safer-networking.org/en/index.html - Spybot Search & Destroy
* http://www.lavasoft.com/products/ad_aware_free.php - Ad-Aware Free
See also "Spyware on Windows": http://kb.mozillazine.org/Popups_not_blocked and [[Searches are redirected to another site]] -
Verity Search Server on Macintosh
I was intending to use the ColdFusion Verity Search Service but the service is unable in the ColdFusion Administrator. It would seem the server needs to be installed separately but the link in LiveDocs is unavailable, I’m using CF8 developer on a Macintosh, if anyone knows where I can find the installation software that would be appreciated. Thanks.
I don't know about that, pwizzard. Here's something else to consider. While there's no "Mac" installer, there is a Linux one. I think that will work for you. Note that you do need to have a license key for CF to get to it. (In other words, this won't work if you're using the Developer edition, because it has no license key.)
Short answer:
Go to the page, https://www.adobe.com/cfusion/entitlement/index.cfm?e=verity, enter your CF license key (standard or enterprise), and download the installer (for Linux) from there. Let us know if it works
It's also unfortunate that the /go/verity/ link fails. While we can't change the CF8 licvedocs page you found, I did change the corresponding CF9 page to offer the link above.
Long answer:
As for how I figured out that this may be what you need, here's what I did, in case any of it may help you or others in the future.
First, I recalled that there was a page of installers that went along with CF. I couldn't remember the link, but I trusted that the Adobe CF site would get me there.
- I went to the CF front page (can be found via google): http://www.adobe.com/products/coldfusion/
- choose link in lower right of right nav bar for CF8: http://www.adobe.com/products/coldfusion/coldfusion8/
- choose link to download trial
- log in (if you don't want to login, just keep reading).
- choose link for "related ColdFusion downloads": http://www.adobe.com/support/coldfusion/downloads.html
- and note that you could also just visit that link directly, now that you know it, without needing to log in
- there, it offers a section on "Verity (language packs and standalone installer)", and it has the link I offered above
Admittedly, that page says that the installer is meant for installing Verity on a machine separate from CF, so I wondered if it was what you really needed. I decided to search google for help (coldfusion install verity) and found this http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=othertechnologies_06.htm l. I guess that's the page you had found, because it offers a link to get to the installer, as http://www.adobe.com/go/verity, which fails (and because this is the CF8 docs, we can't even update it with a corrected link if we find one.)
But note that these help pages offer a popup box that offers a link to the CF9 docs: http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/index.html. Unfortunately, that goes to the front page of the docs. You need to note where you were on the previous page (bummer). At the top of the CF8 doc page, we see that the page was within "Installing and Using ColdFusion / Installing Integrated Technologies". We can select that from the CF docs front page, which opens to http://help.adobe.com/en_US/ColdFusion/9.0/Installing/WSc3ff6d0ea77859461172e0811cdec18c28 -7ff1.html.
The link for the verity page itself is http://help.adobe.com/en_US/ColdFusion/9.0/Installing/WSc3ff6d0ea77859461172e0811cdec18969 -7ffd.html. Sadly, that page (almost identical to the CF8 one) also has that failing link, but at least we can update the page with the proper one.
I wasn't positive that it was the right link, until I did some more digging. (FWIW, I tried to find any old version of the go/verity page at archive.org, but no luck. Returning to the google search results list, I did find this, though: http://www.adobe.com/support/coldfusion/verity_reg/register/index.cgi. That looked just like the first link offered above, though only for CF7, so I was more confident that the first link I offered is indeed what you need.)
I thought to search google for the specific phrase "adobe.com/go/verity", and there it found a couple of other CF9 doc pages, and one of them (https://www.adobe.com/cfusion/entitlement/index.cfm?e=verity) did also have the bad /go/verity link, and someone offered in a comment a link to (again) the original download page I offered (https://www.adobe.com/cfusion/entitlement/index.cfm?e=verity). So that really seems the right page, and I have added a comment to http://help.adobe.com/en_US/ColdFusion/9.0/Installing/WSc3ff6d0ea77859461172e0811cdec18969 -7ffd.html.
One last thing: while the download page doesn’t have an OS X-specific installer, the help page does mention OS X and says getting this installer is the solution, and it does offer a Linux installer to look for, so I suppose that's what you are supposed to you. One thing that still has me a little suspect of things is that I did use a key to get to that download page, and I see the filename offered for the Linux installer is "coldfusion-search-lin.bin", not the "ColdFusion_9_Verity_linux.bin name offered". But maybe it's just a doc inconsistency.
Anyway let us know if it helps.
/charlie -
Verity Search Service in JBoss
Hi All,
Good morning!
Here my question is about Verity Search Service. I'm using Windows OS in my local machine and my DEV system is using Linux OS. In both these machines, Verity Search is working properly and our code works good. When we to do the same thing on the Client server its not working. We are always getting a message that the Coldfusion Verity Search service is not started/ not there.
Our Client server is built in JBoss and Coldfusion.
Can you please guide me how to start the Verity Search Service in the JBoss?
Here is the error message we are getting.
On Windows, you may need to start the ColdFusion Search Server from the services control panel.
On Unix, you may need to run the search startup script in the ColdFusion bin directory.
Error: java.io.IOException: unable to obtain from connection pool: cannot make connection to server at: k2://localhost:9953"
Thanks in advance!Hi Amar,
Thank you for the quick response
regards
Nicolai -
How to configure and use verity search peoplesoft?
Hi All,
I have installed Veirty on pshome..Now how to configure it to use for searching in peoplesoft environment.
Our environment is,
Peopletools 852(app server) and Oracle 10g on Solaris Sparc10
HCM 9.1FP2 application
Thanks in advance.There is an entire chapter in PeopleBooks devoted to Verity Search
PeopleBooks > PeopleTools 8.52: System and Server Administration > Configuring Verity Search and Building Verity Search Indexes
PeopleBooks > PeopleTools 8.52: PeopleCode API Reference > Verity Search Classes
I would strongly advise you to have a look at Secure Enterprise Search that was introduced in PeopleTools 8.52. More powerful, out of the box integration with PeopleSoft for global search and search pages and full declaratie from PeopleSoft pages.
PeopleBooks > PeopleTools 8.52: PeopleSoft Search Technology > Understanding PeopleSoft Search Framework -
I have recently upgraded to coldfusion 8. I reworked my
verity searches but the main one of the website times out. I have
gotten it to complete a couple of times but this time it will not
complete. I have no clue what to change to make it index. I would
appreciate any help.
ThanksThis is the error "The request has exceeded the allowable
time limit Tag: cfoutput " It is a verity search of my website
"www.archives.alabama.gov" there are over 26,000 documents. It has
always worked fine until the upgrade to v.8 and it worked the first
several times but now it is timing out with the above message
everytime. I do not know where that tag is or how to change it.
That is what I need to know. -
Verity Search - exclude html tags when indexing?
I have a table I want to index, but some data stored in the
table contains HTML.
I want to index the content, but I want all HTML tags to be
excluded.
This is a problem, say you had a table storing all retail
stores, there's some HTML in the data, and you do a Verity search
for "Target" (as in the Target retail store). You will return a lot
of irrelevant results if there's a
target="blank" attribute in an A HREF tag, for example. Can
you strip these out during the <CFINDEX> ?
Any idea on how to accomplish this?Hi user494326,
I'm actually having trouble getting html into a CLOB. It sounds like you were able to do this successfully. What did you do to get it in as far as escaping characters, etc. I'd love to see how you handled that, it would be greatly appreciated! -
How to start Verity Search Service in Coldfusion with JBoSS on LINUX OS?
Hi,
On Windows, you may need to start the ColdFusion Search Server from the services control panel.
On Unix, you may need to run the search startup script in the ColdFusion bin directory.
The above is the error message we are getting it when we run Verity Search code.
The code which is actually working fine in Windows(Local Environment).
Its not working in our Client System, the configuration is Coldfusion 9.0 with JBoss installation on LINUX Operating System.
Your help is highly appreciated.
Thanks in advance!service generally manages the lower level services on the system.
High level services such as Apache are managed via serveradmin:
serveradmin status web
serveradmin start web -
Hi,
I've been playing around with verity and was wondering if
there is a way to modify the way verity does its ranking.
Say I'm looking for Foo Bar, but I'd like to include those
with just Foo and those with just Bar, but those should be right at
the end (low score). How can I achieve this?
Using OR will give documents with Foo, documents with Bar,
and documents with both Foo and Bar the same score (0.7967). And if
I do an ANDed search I only get the last one (which I'd expect). Is
there a way express my request better, or configure verity to index
around my own personal taste.
Search Term:
Foo Bar
Order I'd like:
documents with both Foo and Bar (score ~1.0)
documents with just Foo (score ~0.5)
documents with just Bar (score ~0.5)
Thanks,
J_C_CIn my understanding enterprise can index 1 location. That can
either be the localhost or another server. Not both. If it is on
another server you must install verity from the Coldfusion disc.
Then in the admin look under "Data & Services" -> Verity K2
Server to set the server name.
I am unsure if this can be done with standard edition. -
Verity search results return application.cfm
We've got a couple of sites using verity collections to
search cfml, html, and some mime documents. This is generally
successful. However, we do see coldfusion script-only pages
returning in the search results, including application.cfm, and
other cfm pages that do not display content to the end-user. Since
there is no HTML renderable content in these pages, why do they get
included in the results?
How can I control this behavior? I've looked at the verity
documentation, and am trying to use the mkvdk utility to delete
application.cfm from the collection documents, but am getting an
error. If I can get the syntax down correctly, is this the proper
way of addressing the problem?
For instance, I am using the command string:
mkvdk -delete -collection
C:\CFusionMX\verity\collections\intranet\file application.cfm
on my local development machine to try and test this, but get
an error BadKeys: application.cfm
I don't understand why these types of files get included in
the collection in the first place. Oh, we are running CFMX6.1.
Thanks for any help.
KrisThe issue is not how to remove all CFM files from the
collection. We just want CFM files that do not output anything to
the user to be excluded from the search index. Most of the files in
this site are CFM files. Most importantly would be application.cfm,
form action pages, and other included files.
Certainly we could parse the results for a filename in a
predefined list, but we are trying to avoid defining this
programmatically; thinking that it is odd that these files get
included in the results at all. In the past we have segmented sites
using .cfm and .cfml as a way of excluding specific files from the
index (in the collection definition, we would not include the
specific extension as required). But this site has been in
production for some time, and is just now adding a search feature.
We don't want to rename files, and have to recheck every single
page and link in the entire site.
Does that explain what we're trying to do better?
Cheers,
Kris -
I just started a Verity search engine for a very large site,
and have gotten the following error message a couple of times:
There was a problem while attmpting to perform a search.
Query has a parsing error. (-40)
at com.verity.k2.K2Search.receive(Unknown Source)
at com.verity.search.ProcessSearch.processNormal(Unknown
Source)
at com.verity.search.ProcessK2Operation.submit(Unknown
Source)
at com.verity.search.VSearch.getPSearch(Unknown Source)
at com.verity.search.VSearch.getResult(Unknown Source)
at
coldfusion.tagext.search.SearchTag.doSearch(SearchTag.java:260)
at
coldfusion.tagext.search.SearchTag.doStartTag(SearchTag.java:157)
at
coldfusion.runtime.CfJspPage._emptyTag(CfJspPage.java:1908)
at cfsearch2ecfm246570528._factor0(...\search.cfm:36)
at cfsearch2ecfm246570528._factor5(...\search.cfm:30)
at cfsearch2ecfm246570528.runPage(...\search.cfm:1)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:152)
at
coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:343)
at
coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
at
coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.ja...
<br>The error occurred on line 36.
The tag for the search is as follows:
<cfsearch collection="#form.collect#" language="English"
type="SIMPLE" criteria="#Session.searchTerm#"
name="Session.results">
on line 36.
I have not been able to reproduce the error, and there isn't
anything strange about the search terms submitted.
This is the first time I've used Verity, and would appreciate
any words of wisdom as to what might be the cause of this error,
and how to eliminate it.ok the value is 0
but i am not sure what that means, i havnt used verity
before?
can you help
just to let you know what i need to do,
i have a results page which show 1 surname with all that
persons information, on the same page there is a search by surname
text box, when this is submited i need to move to the first recoed
that matches the text box, so then i can still use the next and
previous buttons to navigate through.
so really what i need to do is get all the records order them
by surname then give each of them a id number
so Abbot = 1, Adcock= 2 etc
then i should be able to use the next and previous to go
through them?
i am just not sure how i can do this?
hope you can usnderstand what i am trying to do.
many thanks -
Verity search results showing SQL code
This site is still in development and that's why the domain
hasn't transferred yet:
http://financial-strategist.dataride-previews.com/index.cfm.
If you perform a search for the word
business, for example, some of the search results display
the SQL query code. How can I eliminate this from being included in
the search results?
My results page is as follows:
<cfsearch
name = "fs_search"
collection = "fsdocs, affdocs, bodocs, profdocs, wibdocs"
criteria = "#Form.Criteria#"
maxrows = "35">
<CFOUTPUT QUERY="fs_search">
<a
href="#url#"><strong>#Title#</strong></a>
<br>
#Summary# <br />
<br />
</CFOUTPUT>There are two ways Verity can index your CF pages (that I know of). One is to do it through the CF Admin Verity Collection and the other is the command line vspider.exe. I believe only the vspider will actually process your CF pages (processing your SQL as well) and the Verity Collection method in the CF Admin will only "read" your CF pages, this "reading" will just display what's in the pages (minus CF includes, etc.).
I could be wrong in this of course because I've learned by trial and error. My experience has been the CF community sites (this one, HOF and Dev Shed) are very slim on Verity help. So I'd say RTFM as much as you can. HTH -
Hello all,
This is my first attempt to use Verity on my localhost and
I've run into a problem trying to create a collection via the CF
Administrator pages. Whenever I click on Data & Services >
Verity Collections I see the following error:
"Unable to retrieve collections from the Search Service.
Please verify that the ColdFusion Search Server is installed and
running."
I've taken the following troubleshooting steps:
- Checked to make sure Verity was installed
- Stopped and started the ColdFusion 8 Search Server services
- Ran the verity-install.bat again. When I did this I
recieved the following error: OpenService Failed: Access is Denied
I'm running Windows Visa Home Premium.
Any thoughts on how I can get Verity working on my local
machine would be most appreciated.
DHello all,
This is my first attempt to use Verity on my localhost and
I've run into a problem trying to create a collection via the CF
Administrator pages. Whenever I click on Data & Services >
Verity Collections I see the following error:
"Unable to retrieve collections from the Search Service.
Please verify that the ColdFusion Search Server is installed and
running."
I've taken the following troubleshooting steps:
- Checked to make sure Verity was installed
- Stopped and started the ColdFusion 8 Search Server services
- Ran the verity-install.bat again. When I did this I
recieved the following error: OpenService Failed: Access is Denied
I'm running Windows Visa Home Premium.
Any thoughts on how I can get Verity working on my local
machine would be most appreciated.
D
Maybe you are looking for
-
Widget: Flash Slideshow (Image Viewer) - Modifications Help!
I created a Flash photo slideshow using Dreamweaver CS3's Insert > Media > Image Viewer. It can be seen here: http://cba.ua.edu/~ckent/ImageViewer/imageviewer.html. All and only relevant files can be found in the following directory: http://cba.ua.ed
-
When I send a mail with a picture I get from 4 to 17 in return to my trash can.
What ca I do to avoid having from 4 to 17 copies of one mail sent with a photo added, returning to my trash basket in addition to one filed as a draft?
-
Search option in catalog selection in maintenance notification item, object
Dear Experts, I have a problem to search & choose the relevent catalog codes in maintenance notification item, in catalog selection pop up when F4 done on object part. Is there any setting to find the relevent codes from the cataloge selection scree
-
Need to display Internal table records on screen without using table contro
Hi Experts, I have a requirement to display internal table on screen which is having three columns (Material no, Serial No and quantity). But I can't use table control as it is not supported by hand held devices. They are going to use this transactio
-
Prerequisites for archiving the sales order
Hi , What are the prerequisites for archiving a sales order? What is the last business transaction from which the archiving process is triggered? Is it necessary to set status CLSD on the sales order for archiving ? what are the other system statuses