Solució: System.io.FileNotFoundException en “SPSite = nou SPSite(URL)”

ACTUALITZACIÓ: He publicat aquesta pregunta a MSDN aquí (http://forums.microsoft.com/Forums/ShowPost.aspx?PostID=2808543&SiteID=1&mode=1) i Michael Washam de Microsoft va respondre amb una resposta concisa.

He creat un servei web per actuar com un Façana del BDC amistós a una llista del SharePoint. Quan utilitzava això del meu entorn de desenvolupament, funcionava bé. Quan això migrar a un nou servidor, He trobat aquest error:

System.IO.FileNotFoundException: L'aplicació Web a http://localhost/sandbox no es podria trobar. Comproveu que heu escrit l'URL correctament. Si l'URL ha servint continguts existents, l'administrador del sistema pot necessitar afegir una nova cartografia URL de petició a l'aplicació desitjada. a Microsoft.SharePoint.SPSite...ctor(SPFarm granja, URI requestUri, ContextSite booleana, SPUserToken userToken) a Microsoft.SharePoint.SPSite...ctor(Corda requestUrl) a Conchango.xyzzy.GetExistingDocument(Corda minId, Corda maxId, Corda titleFilter) en C:\Documents i SettingsPaulMy DocumentsVisual estudi 2005ProjectsxyzzyBDC_DocReviewBDC_DocReviewDocReviewFacade.asmx.cs:línia 69

Aquí està la línia 69:

utilitzant (Lloc SPSite = SPSite nou("http://localhost/sandbox"))

He provat diferents variacions en l'URL, incloent l'ús de nom real del servidor, la seva adreça IP, barra inclinada final a l'URL, etc. Sempre tenia aquell error.

He utilitzat El Google per investigar-lo. Moltes persones enfronten a aquest problema, o variacions de la mateixa, però ningú semblava tenir-ho resolt.

Tricksy MOSS proporcionat tal una detallada error que no se me per comprovar la 12 rusc de registres. Amb el temps, sobre 24 hores després el meu col lega es recomana que fer-ho, Vaig revisar el 12 rusc de registre i trobava això:

S'ha produït una excepció en intentar adquirir la granja local:
System.Security.SecurityException: Accés registre sol·licitat no està permès.
a System.ThrowHelper.ThrowSecurityException(ExceptionResource recurs) a Microsoft.Win32.RegistryKey.OpenSubKey(Nom de corda, Booleà writable) a Microsoft.Win32.RegistryKey.OpenSubKey(Nom de corda) a Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_RegistryConnectionString() a Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_Local() a Microsoft.SharePoint.Administration.SPFarm.FindLocal(SPFarm& granja, Booleà& isJoined)
La zona de l'Assemblea que no era:  MiPC

Això va obrir noves vies de recerca, Així que va ser a The Google. Que em va portar a aquest correu de fòrum: http://forums.codecharge.com/Posts.php?post_id = 67135. Que realment no ajudar-me però va començar fent-me pensar que hi havia un problema de base de dades i/o seguretat. Jo soldiered i De Andrew Connell publicar finalment ha disparat la idea que jo hauria assegureu-vos que el compte d'identitat del conjunt d'aplicacions tenia accés adequat a la base de dades. Vaig pensar que ja va fer. No obstant això, el meu col lega va anar i va donar l'app piscina identitat compte ple accés a SQL.

Tan aviat com va fer que el canvi, tot va començar a treballar.

El millor és el que va succeir següent expressada com una Haiku poema:

Problemes alça les seves mans.
Vostè swing i es perdi. Torneu.
Èxit! Però, com? Per què?

Ella no volia deixar les coses sola com allò, prefereix donar el permís necessari mínim (i probablement amb un ull escriure una entrada de blog; Em va colpejar a la perforació, muhahahahaha!).

Es va treure els permisos successives del compte identitat app piscina fins … hi havia ja cap permís explícit per al compte d'identitat app piscina gens. El servei web continuar treballant just bé.

Ens vam anar i tornat a arrencar els servidors. Tot va seguir treballant bé.

Així, per recapitular: ens va donar la app piscina identitat accés complet i després va prendre distància. El servei web va començar a treballar i mai no deixà. Estranya.

Si algú sap per què que han treballat, Si us plau deixar un comentari.

</final>

Etiquetas de Technorati:

11 comentaris a "Solució: System.io.FileNotFoundException en “SPSite = nou SPSite(URL)”

  1. Fernando Gómez Flores

    Correu de Niça, Gràcies. En el meu cas, el meu problema es resolia canviant apppool de la webservice perquè coincideixi amb la de la col·lecció de llocs del sharepoint.

    Alegries,
    Fernando A. Gómez F.

    Resposta
  2. Edgar Wilson

    Hola, Jo també tenia el mateix problema. Mentre desenvolupava a la mateixa màquina amb el servidor del sharepoint, Estava utilitzant Asp desenvolupament servidor amb diferents permisos no certament no corrent sota una mateixa identitat com a sharepoint (més informació sobre aquest: http://msdn.microsoft.com/en-us/library/58wxa9w5(VS.80).aspx) i què, Jo he de crear un lloc nou de l'IIS (Portuària 8080) amb una mateixa identitat com del sharepoint.. i voila.
    Esperança que això ajudi

    Resposta
  3. Zac Boyle
    Hi ha una bona probabilitat que la funció de servidor de SQL securityadmin arreglat el problema que estava tenint una vegada va ser funcionava. Que seria una bona explicació continua treballant.
    Resposta
  4. País de les fades

    Niça writeup. Estem tenint exactament el mateix problema ara mateix. Aquest tipus de problema i comportament inesperat/inexplicable és exactament per què un munt de desenvolupadors no puc suportar treballant amb SharePoint!

    Resposta
  5. Markus

    Aquesta part de l'article….”donà la app piscina identitat compte ple accés a SQL”, es pot elaborar? “identitat del conjunt d'app” Suposo que vol dir la piscina d'app de lloc del sharepoint, però “accés complet a SQL”, com que dóna? Crear una connexió al servidor db per a la identitat del conjunt d'app que crec que no és suficient…Així és en el db contingut sharepoint on arriba la nova connexió dbo (?) accés? O de altre sharepoint db així, com la config db? Per a mi que és difícil, perquè el meu db contingut sp aparentment no és manejat per sql server a la instància, aparentment és sota “/Microsoft Office Servers/14.0/Data”, de totes maneres jo ho veig en servidor de sql mgr….algunes idees en com donar- “accés complet a SQL” en aquest cas? S'apreciaria qualsevol resposta…Jo sóc amable enganxa aconseguint el meu app de consola per crear un objecte spsite!!

    Resposta

Deixi una contestació a Benjamin Cancel resposta

no es publicarà la seva adreça de correu electrònic. Els camps necessaris estan marcats *