I have been tasked with implementing EPiServer Find on an older site that runs CMS6 R2.
Most of the information about version 1 of Find seems to be removed, and I havent really found a good "Getting started" page with the basics on how to get things rolling. I get an error while trying to index the site by the scheduled task, and at the moment I am not sure if its due to some properties in the site, or if my implementation of Find is wrong. The scheduled task throws the following error:
An exception occured while indexing (Batch): Max serialization depth exceeded while serializing object of type ArtPageTypeProxy. The depth was 26. This indicates that there might be a circular reference in the object. Ensure that the serialized object does not return itself or has a property that returns itself or the serialized object. If no circular reference exists and you want to serialize deeper object structures you may set the MaxDepth property of the serializer. The created JSON so far is:
{ "index": { "$type": "EPiServer.Find.Api.BulkAction+BulkActionAndMeta, EPiServer.Find", "_index": "indexutv_myutvindex", "_type": "MyProject_Core_PageTypes_ArtPageType", "_id": "_6b38b7be-5f97-4675-8fa5-bb274794de1a_sv" } } { "$type": "MyProject_Core_PageTypes_ArtPageType, MyProject_Core", "Artist$$string": "Thomas Nordström", "Year$$string": "2008", "Area$$string": "Hammarby Sjöstad", "Address$$string": "Heliosgatan/Hammarby Allé", "MainBody$$string": "\r\nOm konstverket\r\nTvå okända djur, besläktade med insekter, en slags lysande skalbaggar i glas och järn med extremt långa ben har gjort gården till sin boplats och revir. De skiljer så något i skala och kulör men de bildar par och har en viss relation. Är de utvalda för ett speciellt syfte? Är de mer än bara vänner?Baggarnas sköld är fasetterad och tillverkad av transparent färgat, laminerat, tjockt glas. Övriga delar är i rostfritt stål. Benen är cirka tre meter långa och belysningen sitter innanför skölden.\r\nMaterial: Rostfritt borstat stål, laminerat färgat glas, LED-ljus\r\nOm konstnären\r\nThomas Nordström har sedan examen i huvudsak varit verksam med utställningar och ett omfattande antal uppdrag i offentliga miljöer. Ofta i samarbete med konstnär Annika Oskarsson. 2006 var Thomas No
The site uses PageTypeBuilder, and I cannot see any property on this page that should cause and issue. The JSON is cut in the middle of MainBody which is an xhtml-field. Besides that the other properties are just strings.
I have done the following in the project so far:
Added references in the web-project (pagetypes are managed in another project) to:
Added the shell-config, and the serviceUrl in web.confing
Added some trial-code in global.asax:
PageIndexer.Instance.Conventions .ForInstancesOf() .ShouldIndex(x => x is IShouldIndexWithFind);
Right now only 1 page in the pagetree has a pagetype which implements the interface above.
I have added searchable = false to properties that should not be indexed, and used [JsonIgnore] on those properties aswell. I read in a forum-post that dates declared in PTB should use nullable datetime as type, and I have checked that all dates are of that type.
In Adminmode if I open the Find tab and look on overview the Index group looks OK, the Types group contain 0 types, and below that I get another error: Value cannot be null. Parameter name: stream
I am not sure if thats due to an implementationerror or just an error due to that there is no index yet.
I have tried using other pagetypes but I get the same error regardless.
Hello
I have been tasked with implementing EPiServer Find on an older site that runs CMS6 R2.
Most of the information about version 1 of Find seems to be removed, and I havent really found a good "Getting started" page with the basics on how to get things rolling. I get an error while trying to index the site by the scheduled task, and at the moment I am not sure if its due to some properties in the site, or if my implementation of Find is wrong. The scheduled task throws the following error:
An exception occured while indexing (Batch): Max serialization depth exceeded while serializing object of type ArtPageTypeProxy. The depth was 26. This indicates that there might be a circular reference in the object. Ensure that the serialized object does not return itself or has a property that returns itself or the serialized object. If no circular reference exists and you want to serialize deeper object structures you may set the MaxDepth property of the serializer.
The created JSON so far is:
{
"index": {
"$type": "EPiServer.Find.Api.BulkAction+BulkActionAndMeta, EPiServer.Find",
"_index": "indexutv_myutvindex",
"_type": "MyProject_Core_PageTypes_ArtPageType",
"_id": "_6b38b7be-5f97-4675-8fa5-bb274794de1a_sv"
}
} {
"$type": "MyProject_Core_PageTypes_ArtPageType, MyProject_Core",
"Artist$$string": "Thomas Nordström",
"Year$$string": "2008",
"Area$$string": "Hammarby Sjöstad",
"Address$$string": "Heliosgatan/Hammarby Allé",
"MainBody$$string": "\r\nOm konstverket\r\nTvå okända djur, besläktade med insekter, en slags lysande skalbaggar i glas och järn med extremt långa ben har gjort gården till sin boplats och revir. De skiljer så något i skala och kulör men de bildar par och har en viss relation. Är de utvalda för ett speciellt syfte? Är de mer än bara vänner?Baggarnas sköld är fasetterad och tillverkad av transparent färgat, laminerat, tjockt glas. Övriga delar är i rostfritt stål. Benen är cirka tre meter långa och belysningen sitter innanför skölden.\r\nMaterial: Rostfritt borstat stål, laminerat färgat glas, LED-ljus\r\nOm konstnären\r\nThomas Nordström har sedan examen i huvudsak varit verksam med utställningar och ett omfattande antal uppdrag i offentliga miljöer. Ofta i samarbete med konstnär Annika Oskarsson. 2006 var Thomas No
The site uses PageTypeBuilder, and I cannot see any property on this page that should cause and issue. The JSON is cut in the middle of MainBody which is an xhtml-field. Besides that the other properties are just strings.
I have done the following in the project so far:
Added references in the web-project (pagetypes are managed in another project) to:
EPiServer.Find (1.0.0.343)
EPiServer.Find.CMS
EPiServer.Find.Framework
NewtonSoft.Json
Added the shell-config, and the serviceUrl in web.confing
Added some trial-code in global.asax:
PageIndexer.Instance.Conventions()
.ForInstancesOf
.ShouldIndex(x => x is IShouldIndexWithFind);
Right now only 1 page in the pagetree has a pagetype which implements the interface above.
I have added searchable = false to properties that should not be indexed, and used [JsonIgnore] on those properties aswell.
I read in a forum-post that dates declared in PTB should use nullable datetime as type, and I have checked that all dates are of that type.
In Adminmode if I open the Find tab and look on overview the Index group looks OK, the Types group contain 0 types, and below that I get another error: Value cannot be null.
Parameter name: stream
I am not sure if thats due to an implementationerror or just an error due to that there is no index yet.
I have tried using other pagetypes but I get the same error regardless.
Any help would be appreciated =)
/T