Sharepoint 2010 自定义WebService 找不到网站应用程序
2012-11-20 11:38
288 查看
错误描述:Net 开发WebService调用Microsoft.SharePoint.dll的服务器端对象模型,出现找不到网站的应用程序,或者出现500错误。
错误截图:
[Webservice调用页错误]
[完整的错误提示]
[测试代码,获取WebID]
最初以为是备用访问映射,或者修改Host文件的问题,因为找不到应用程序么,然后在浏览器里打开url,发现可以打开;再考虑是不是权限不够,因为是net调用sharepoint的dll,然后提权进行操作,发现也不能解决问题。
查了很久,后来发现,代码预览有问题,但是发布以后,调用WebService却没有问题,感觉很奇怪,但是没有办法进行调试了。后来查资料,发现说VS的iis对64位支持有问题,虽然自己并不清楚是不是这里的问题,但是发布以后,调试本机的iis,发现问题不存在了(感谢这位博主的文章,参考博文地址附后)。
解决方法: 把自己建的项目发布到本地iis,然后 属性 – web – 使用本地iis web服务器,填写格式[url:port/网站名称],然后可以调试了。
修改以后,发现调用的时候,还有抛黄页的现象[“拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))”],后来,经朋友提醒,发现木有提权,菜鸟就是菜鸟,之前调试的晕头转向,居然忽略了提权。
提权代码:
再有就是,有人说写控制台,也会出现找不到应用程序的情况,将生成的目标平台调成64位,或者调成[Any cpu],自己到没有遇到过,不过这些对WebService调用sharepoint.dll是不管用的。
参考网址: http://blog.csdn.net/yun_liang1028/article/details/6116146
错误截图:
[Webservice调用页错误]
System.IO.FileNotFoundException: 找不到位于 http://localhost 的 Web 应用程序。请确认正确键入了此 URL。如果此 URL 需要提供现有内容,则系统管理员可能需要添加到指定应用程序的新请求 URL 映射。 在 Microsoft.SharePoint.SPSite..ctor(SPFarm farm, Uri requestUri, Boolean contextSite, SPUserToken userToken) 在 Microsoft.SharePoint.SPSite..ctor(String requestUrl) 在 WebApplication1.WebService1.GetWebID(String SiteUrl) 位置 C:\Users\Administrator\Documents\Visual Studio 2010\Projects\WebApplication1\WebApplication1\WebService1.asmx.cs:行号 26 |
[WebMethod(Description = "获取WebID")] public string GetWebID(string SiteUrl) { SPSite site = null; SPWeb web = null; site = new SPSite(SiteUrl); web = site.OpenWeb(); return "ID:" + web.ID.ToString(); } |
最初以为是备用访问映射,或者修改Host文件的问题,因为找不到应用程序么,然后在浏览器里打开url,发现可以打开;再考虑是不是权限不够,因为是net调用sharepoint的dll,然后提权进行操作,发现也不能解决问题。
查了很久,后来发现,代码预览有问题,但是发布以后,调用WebService却没有问题,感觉很奇怪,但是没有办法进行调试了。后来查资料,发现说VS的iis对64位支持有问题,虽然自己并不清楚是不是这里的问题,但是发布以后,调试本机的iis,发现问题不存在了(感谢这位博主的文章,参考博文地址附后)。
解决方法: 把自己建的项目发布到本地iis,然后 属性 – web – 使用本地iis web服务器,填写格式[url:port/网站名称],然后可以调试了。
修改以后,发现调用的时候,还有抛黄页的现象[“拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))”],后来,经朋友提醒,发现木有提权,菜鸟就是菜鸟,之前调试的晕头转向,居然忽略了提权。
提权代码:
SPSecurity.RunWithElevatedPrivileges(delegate() { 代码段…. }); |
参考网址: http://blog.csdn.net/yun_liang1028/article/details/6116146
相关文章推荐
- Sharepoint 2010 自定义WebService 找不到网站应用程序
- Sharepoint 2010 自定义WebService 找不到网站应用程序
- Sharepoint 2010 自定义WebService 找不到网站应用程序
- SharePoint 2010 创建SPSite对象出错,提示“找不到位于 http://xxxx 的 Web 应用程序。请确认正确键入了此 URL
- SharePoint 2010 工作流解决方案:创建自定义网站工作流活动
- SharePoint 2010 工作流解决方案:创建自定义网站工作流活动
- sharepoint 2010 根据自定义网站模板创建网站error解决方法
- 在使用直观升级升级到 SharePoint 2010 的自定义搜索页面上显示服务器功能区和“网站操作”菜单
- 以编程方式自定义 SharePoint 2010 网站导航
- sharepoint 2010 控制台应用程序 找不到位于 http://xxx 的 Web 应用程序
- 控制台应用程序,SharePoint 2010 创建SPSite对象出错,提示“找不到位于 http://xxxx 的 Web 应用程序
- sharepoint 2010 网站集定期备份
- 打SharePoint 2010 SP1后访问用户配置文件同步服务应用程序出错的解决办法
- SharePoint 2010应用程序生命周期管理
- SharePoint 2010 用户自定义编辑Meta标签的OOB方法
- sharepoint 2010 使用自定义列表模版创建列表(1)
- SharePoint 2010升级到sharePoint 2013后,人员失去对网站的权限的原因及解决方法。The reason and solution for permission lost after the upgrading
- SharePoint 2010 网站集通过计算机名能访问,用IP地址访问出错
- Sharepoint网站创建自定义导航全记录
- SharePoint 2010 自定义Ribbon实现文档批量下载为Zip文件(转)