29 de marzo de 2009

Configure su Servidor para Silverlight 3

Instalación

Si también quiere desarrollar sus propias aplicaciones con Silverlight Usando Visual Studio 2008 en el servidor, debe descargar e instalar también las siguientes herramientas:

Si Esta instalando en una VPC sin acceso a internet, la solucion la puede encontrar en este post de Tim Heuer.

Configuración

Global Assembly Cache

SharePoint necesita la System.Web.Silverlight.dll disponible en la GAC. Esta DLL es parte del SDK de Silverlight 3 y se encuentra en c:\Program Files\Microsoft SDKs\Silverlight\v3.0\Libraries\Server 

La forma mas simple de cargarla es Ejecutando el siguiente comando: GACUTIL /if “C:\Program Files\Microsoft SDKs\Silverlight\v3.0\Libraries\Server\System.Web.Silverlight.dll”.

Si No tienes Visual Studio 2008 instalado, necesita adicionar las siguientes Secciones al web.config:

1. Navegue con Windows Explorer a la carpeta donde se encuentra el web.config

2. Haga un Backup del archivo.

3. En las Secciones <configuration><configSections> adicione:

  <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">      <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">         <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>         <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">             <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />             <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />             <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />             <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />         </sectionGroup>      </sectionGroup>   </sectionGroup>


4. En <system.web><compilation><assemblies> adicione:



  <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>   <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>   <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>   <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>   <add assembly="System.Web.Silverlight, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />


5. En <system.web><pages><controls> adicione:



   <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>    <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>    <add tagPrefix='asp' namespace="System.Web.UI.SilverlightControls" assembly="System.Web.Silverlight, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 


6. En <system.web><httpHandlers> adicione:



  <remove verb="*" path="*.asmx"/>   <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>   <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>   <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/> 


7. En <system.web><httpModules> adicione:



  <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>


8. Si esta trabajando con ISS7 adicione el siguiente codigo en la seccion <configuration> . No es necesario si ejecuta versiones anteriores de IIS:



  <system.webServer>      <validation validateIntegratedModeConfiguration="false"/>      <modules>         <remove name="ScriptModule" />         <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>      </modules>      <handlers>         <remove name="WebServiceHandlerFactory-Integrated"/>         <remove name="ScriptHandlerFactory" />         <remove name="ScriptHandlerFactoryAppServices" />         <remove name="ScriptResource" />         <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode"              type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>         <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode"              type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>         <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />      </handlers>   </system.webServer>

10. Add an AssemblyBinding element to the <configuration><runtime> node:

   <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">       <dependentAssembly>           <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>           <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>       </dependentAssembly>       <dependentAssembly>           <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>           <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>       </dependentAssembly>    </assemblyBinding>


mime type


Trabajando con IIS 7 los MIME TYPE para Silverlight 3 ya estan configurados, en otro caso debe definir los mime type en forma manua para cada Web Application en la Raiz del IIS




  • Abrir Internet Information Services


  • Boton derecho sobre la aplicacion Web de SharePoint en la Raiz


  • Seleccione Properties


  • Active la tableta HTTP Headers


  • Click en el boton MIME types


  • Click en New 


  • Defina un nuevo MIME type configurando la Extension a .xap y el MIME type a application/x-silverlight.


  • Click en OK y Apply para guardar los cambios.



mimetype

No hay comentarios.: