首先,对于Sharepoint 2007 webpart开发,我是一个非常胖的NOOB,但我正在努力。
现在针对真正的问题,我开发这个webpart并按照各个站点的'Loose'建议来设置如何设置features.xml,.xml,manifest.xml,solution.ddf和solution.build文件。基本上,我有一个一体化的解决方案,我构建webpart,然后在构建后事件中将所有源文件编译到WSP部署包中。
我遇到的问题是我可以将解决方案添加到sharepoint网站,但是当我通过CA-Operations-Solution管理部署它时,我得到了这个错误:
从Sharepoint报告的错误
无法从模块“ChartPartWP”实例化文件“ChartPartWP.webpart”:找不到源路径“ChartPartWP \ ChartPartWP.webpart”。
当我查看文件系统时,ChartPart文件夹在TEMPLATE \ FEATURES中与ChartPartWP.webpart和其他支持文件一起出现。
我需要解决的事情没有发生。
编辑:10/24/2011 @ 11:36 PM
.OPTION EXPLICIT
.Set CabinetNameTemplate=ChartPartWP.wsp
.Set DiskDirectoryTemplate=CDROM
.Set DiskDirectory1=Package
.Set CompressionType=MSZIP
.Set UniqueFiles="ON"
.Set Cabinet=On
.Set SourceDir="\\<fileserver>\common share\Software_Development\MPT\Sharepoint2007\ChartPart\"
Manifest.xml manifest.xml
; binary
bin\release\TCBOE.ChartPart.dll TCBOE.ChartPart.dll
; feature files
TEMPLATE\FEATURES\ChartPartWP\ChartPartWP.xml ChartPartWP\ChartPartWP.xml
TEMPLATE\FEATURES\ChartPartWP\feature.xml ChartPartWP\Feature.xml
; web part files
TEMPLATE\FEATURES\ChartPartWP\ChartPartWP.webpart ChartPartWP\ChartPartWP.webpart
TEMPLATE\FEATURES\ChartPartWP\LockedChartPartWP.webpart ChartPartWP\LockedChartPartWP.webpart
<?xml version="1.0" encoding="utf-8"?>
<Solution xmlns="http://schemas.microsoft.com/sharepoint/"
SolutionId="{0C32EA7F-78C2-4814-A4C9-88256E49E371}">
<FeatureManifests>
<FeatureManifest Location="ChartPartWP\feature.xml" />
</FeatureManifests>
<Assemblies>
<Assembly Location="TCBOE.ChartPart.dll"
DeploymentTarget="GlobalAssemblyCache" />
</Assemblies>
</Solution>
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Module Name="ChartPartWP"
List="113" Url="_catalogs/wp"
Path="ChartPartWP"
RootWebOnly="True">
<File Url="ChartPartWP.webpart" Type="GhostableInLibrary">
<Property Name="Group" Value="ChartParts" />
</File>
<File Url="LockedChartPartWP.webpart" Type="GhostableInLibrary">
<Property Name="Group" Value="ChartParts" />
</File>
</Module>
</Elements>
<?xml version="1.0" encoding="utf-8" ?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/"
Id="47D62F5E-B0E0-4f93-BCD1-081CA794527C" Version="3.5.1.0"
Title="TCBOE ChartPart"
Description="Provides a Chart Web object to be used in Sharepoint 2007."
AutoActivateInCentralAdmin="TRUE"
Scope="Site">
<ElementManifests>
<ElementManifest Location="ChartPartWP.xml" />
<ElementFile Location="ChartPartWP.webpart" />
<ElementFile Location="LockedChartPartWP.webpart"/>
</ElementManifests>
</Feature>
我是否需要制作任何接收器/处理程序才能使安装成为可能?我没有读过关于它的任何内容,但是为了某个目的读了一些关于FeatureReceiver的内容,但是不记得它的生命,为什么你需要FeatureReceiver(SPFeatureReceiver)
答案 0 :(得分:1)
SPFeatureDefinition.AutoActivateInCentralAdmin
Property
获取一个值,该值指定在安装时是在中央管理网站,网站集还是Web应用程序上激活功能。
如果不对整个样品进行测试,请使用此属性。尝试删除它。
更新:您还应该发布.webpart(它是一个xml)。
尝试这些配置:Feature.xml
<?xml version="1.0" encoding="utf-8" ?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/" Id="47D62F5E-B0E0-4f93-BCD1-081CA794527C" Version="3.5.1.0" Title="TCBOE ChartPart" Description="Provides a Chart Web object to be used in Sharepoint 2007." Scope="Site">
<ElementManifests>
<ElementManifest Location="ChartPartWP\ChartPartWP.xml" />
<ElementFile Location="ChartPartWP\ChartPartWP.webpart" />
<ElementFile Location="ChartPartWP\LockedChartPartWP.webpart"/>
</ElementManifests>
</Feature>
webpart.xml
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Module Name="ChartPartWP" List="113" Url="_catalogs/wp">
<File Path="ChartPartWP.webpart" Url="ChartPartWP.webpart" Type="GhostableInLibrary">
<Property Name="Group" Value="ChartParts" />
</File>
<File Path="ChartPartWP.webpart" Url="LockedChartPartWP.webpart" Type="GhostableInLibrary">
<Property Name="Group" Value="ChartParts" />
</File>
</Module>
</Elements>
如果无效,我建议安装并使用VSeWSS 1.3 from Microsoft,创建一个新的webpart,点击F5,进行测试。如果您可以在“添加Web部件”对话框中看到它,请移动文件。这是您将获得最接近SharePoint 2010体验的体验(这是非常好的改进)。
不得不摆弄这些文件,对初学者来说更多,不应该是你的负担。