更新: 我发布这一问题到 MSDN 在这里 (http://forums.microsoft.com/Forums/ShowPost.aspx?PostID=2808543&SiteID=1&mode=1) Michael Washam 的微软用一个简明的答案进行了回击.
创建 web 服务,以作为 BDC 便利门面 到 SharePoint 列表. 当我用这个从我的开发环境, 它能正常工作. 当我这迁移到新的服务器, 我遇到这个错误:
System.IO.FileNotFoundException: 在 Web 应用程序 http://localhost/sandbox 找不到. 请验证您已正确键入 URL. 如果现有的内容,应该服务的 URL, 系统管理员可能需要添加一个新请求 URL 映射到目标应用程序. 在 Microsoft.SharePoint.SPSite...ctor(SPFarm 农场, Uri requestUri, 布尔 contextSite, SPUserToken userToken) 在 Microsoft.SharePoint.SPSite...ctor(字符串 requestUrl) 在 Conchango.xyzzy.GetExistingDocument(字符串 minId, 字符串 maxId, 字符串 titleFilter) 在 C 中:\文档和 SettingsPaulMy DocumentsVisual 工作室 2005ProjectsxyzzyBDC_DocReviewBDC_DocReviewDocReviewFacade.asmx.cs:行 69 |
这里是行 69:
使用 (SPSite 站点 = 新 SPSite("http://localhost/sandbox"))
尝试了不同的 url 的变异, 包括使用服务器的真实姓名, 它的 IP 地址, 在 URL 上斜线结尾, 等. 我总是得到该错误.
我用 谷歌 它的研究. 很多人面临着这个问题, 或它的变化, 但似乎没有人出钱解决.
恶作剧的; 苔藓提供详细错误,没想到我要检查 12 蜂巢日志. 最终, 关于 24 小时后 我的同事 建议我这样做, 我查了一下 12 蜂巢日志,发现了这个:
尝试获取本地农场时出现异常: System.Security.SecurityException: 不允许请求的注册表访问. 在 System.ThrowHelper.ThrowSecurityException(ExceptionResource 资源) 在 Microsoft.Win32.RegistryKey.OpenSubKey(字符串名称, 布尔值可写) 在 Microsoft.Win32.RegistryKey.OpenSubKey(字符串名称) 在 Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_RegistryConnectionString() 在 Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_Local() 在 Microsoft.SharePoint.Administration.SPFarm.FindLocal(SPFarm& 农场, 布尔值& 种矛盾又掺杂) 失败的程序集的区域是: 我的电脑 |
这开辟了新途径的研究, 所以它又回到了谷歌. 我被引到这 论坛帖子: http://forums.codecharge.com/posts.php?post_id = 67135. 这真的帮不了我,但它确实开始让我觉得那里是一个数据库和/或安全的问题. 我受尽折磨和 安德鲁 · 康奈尔 最后触发后说我要确保应用程序池标识帐户有权访问数据库的思想. 我以为它已经打了. 不过, 我的同事去和给 SQL 应用程序池标识帐户完全访问.
为她做了这种变化, 一切都开始工作.
下面发生的事情是最好的表示为 俳句 诗:
问题举手.
你摆动和小姐. 再试一次.
成功! 但如何? 为什么?
她并不想这样独自一人离开的事情, 更倾向于给最低所需的权限 (可能着眼写博客条目; 毒打冲到, muhahahahaha!).
她从应用程序池标识帐户之前删除连续的权限 … 已不再有任何显式权限的应用程序池标识帐户在所有. Web 服务继续工作得很好.
我们去和重新启动服务器. 一切继续做工精细.
所以, 重述一遍: 我们给应用程序池标识完全访问权限,然后把它拿走了. Web 服务开始工作,永远不会停止工作. 奇怪.
如果有人知道为什么应该会起作用, 请留下评论.
</结束>
花花公子 , 我爱你 , 让我那天的 u , 我的工作对它几乎一天 , 和你刚刚保存我的时间
好帖子, 谢谢你. 以我为例, 我的问题被解决通过更改 web 服务的 apppool,以匹配的 sharepoint 网站集合.
欢呼,
费尔南多 · A. 戈麦斯 F.
我有被受审 4 小时. 最后,它帮助我。. 感谢很多杰弗里 · 奈特
你好, 我也有同样的问题. 在发展与 sharepoint 服务器在同一机器上的同时, 使用不同的权限不肯定不下运行相同的标识作为 sharepoint 的 Asp 开发服务器 (更多关于此这里: http://msdn.microsoft.com/en-us/library/58wxa9w5(VS.80).aspx) 那又怎样, 我已经在 IIS 中创建一个新的站点 (端口 8080) 具有作为 sharepoint 相同的标识。. 哇塞.
希望这会有助于
感谢您的职位. 此修复程序,为我工作:
http://www.rootsilver.com/2008/10/the-web-application-at-httploc
好交上来. 我们现在有完全相同的问题. 这种问题和不明原因的意外/行为是为什么很多开发商不能忍受与 SharePoint 工作!
文章的这部分….”给 SQL 的应用程序池标识帐户的完全访问”, 你能详细吗? “应用程序池标识” 我猜就意味着该 sharepoint 站点的应用程序池, 但 “对 SQL 的完全访问权限”, 你如何给那? 在我的应用程序池标识 db 服务器上创建登录不过瘾…那么,在那里新登录获取 dbo sharepoint 内容数据库上 (?) 访问? 或其他 sharepoint db 的一样好, 像配置 db? 对我来说那很难, 因为我 sp 内容 db 显然并不由 sql server 实例处理, 显然,这是在下 “/Microsoft Office Servers/14.0/Data”, 反正觉得在 sql 服务器经理….如何让任何想法 “对 SQL 的完全访问权限” 在这种情况下? 任何答复,不胜感激…我是困得我的控制台应用程序来创建 spsite 对象!!
道歉并不响应. 我假设你得到它的所有工作. 🙂