Mostrando entradas con la etiqueta Error. Mostrar todas las entradas
Mostrando entradas con la etiqueta Error. Mostrar todas las entradas

viernes, 11 de noviembre de 2011

System.Web.HttpRequestValidationException: A potentially dangerous Request

El Error:
System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client (Trama="<?xml version='1.0' ...").
   at System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection)
   at System.Web.HttpRequest.ValidateNameValueCollection(NameValueCollection nvc, RequestValidationSource requestCollection)
   at System.Web.HttpRequest.get_Form()
   at System.Web.Services.Protocols.HtmlFormParameterReader.Read(HttpRequest request)
   at System.Web.Services.Protocols.HttpServerProtocol.ReadParameters()
   at System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()


Ocurrió cuando trate de invocar un Método Web en modo POST
donde Trama era una cadena XML con etiquetas de apertura y cierre.

La solución es simplemente agregar al web.config las siguientes lineas:
Por cierto: El servicio fue hecho con Visual Studio 2010.





miércoles, 9 de noviembre de 2011

Error HTTP 500.21 - Internal Server Error

Error HTTP 500.21 - Internal Server Error
El controlador "WebServiceHandlerFactory-Integrated" tiene una condicion previa incorrecta "ManagedPipelilneHandler" en su lista de modulos

Este error ocurrió cuando trate de publicar un aplicativo web sobre mi PC con windows 7.
Para lo cual teniendo previamente instalado el Visual Studio 2010, instale el IIS 7.0, a través del panel de control agregando características de Windows.
El error obtenido al hacer la publicación fue el siguiente.
Hago la aclaración que antes de este error obtenía este error:
Este error ya fue resulto en otro post.

Solución Erro HHTP 500.21:
Luego de verificar que el sitio esta trabajando con correcto pool de aplicaciones.

Tal como se ve en la imagen, el sitio esta correctamente configurado para trabajar con .Net Framework 4.0
Y si el error persiste.
Entonces es necesario ejecutar el comando: aspnet_regiis -i
Para lo cual accedermos a Command Prompt de Visual Studio 2010.

Y ejecutamos el comando.
Demás esta decirles que deben ejecutarse como administrador.
En en el caso que esto ocurra en el servidor donde generalmente no instalamos Visual Studio 2010, tenemos que buscar la ubicación de aspnet_regiis.exe y ejecutar el comando.

jueves, 19 de noviembre de 2009

InfoPath cannot start Microsoft Visual Studio Tools for Applications

Cuando trate de programar un boton de un formulario infopath obtuve este error


Ocurre porque al momento de instalar el Infopath 2007 dejamos la configuracion por defecto, esta no incluye VSTA (Visual Studio Tools for Applications)
Para solucionarlo solo debemos instalar este complemento: Colocar el CD del office seleccionar agregar o quitar complementos y seleccionar la opcion de VSTA, tal como se muestra en la imagen.

Esto soluciona el problema.

miércoles, 28 de octubre de 2009

Error: No se puede establecer una relación de confianza para el canal seguro SSL/TLS

Hace unos dias, empezamos los trabajos de construccion para un proyecto en que estoy, basicamente, aplicaciones que se ejecutaran sobre un entorno HTTPS y tuvimos un problema al tratar de acceder a una lista del Sharepoint que se encuentra en ese Site que trabaja con certificados.
El Error que obteniamos era el siguiente

System.Net.WebException: Se ha terminado la conexión: No se puede establecer una relación de confianza para el canal seguro SSL/TLS. --->
System.Security.Authentication.AuthenticationException: El certificado remoto no es válido según el procedimiento de validación.

Este es el codigo que yo uso para acceder a una lista y sacar sus valores:

XmlDocument xmlDoc = new System.Xml.XmlDocument();
XmlElement viewFields = xmlDoc.CreateElement("ViewFields");
viewFields.InnerXml = "";
portal.Lists listService = null;
listService = new portal.Lists();
listService.Credentials = new System.Net.NetworkCredential("user", "password", "dominio");
listService.PreAuthenticate = true;
string listGuid = (string)"{AE348D4B-D88C-46B3-A809-B4663C4C7CB0}";
XmlNode itemCollection = listService.GetListItems(listGuid, string.Empty, null, viewFields, "0", null, string.Empty);
return itemCollection;


Para esto portal es un referencia Web al webservice del Sharepoint.
Algo como esto: https://MyServer/_vti_bin/lists.asmx


Bueno sin mas vueltas que dar, agreguemos esta linea

ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate);
CredentialCache cache = new CredentialCache();



Este codigo se coloca antes de hacer una llamada a webservices.
Ademas debemos agregar es funcion, al agregar debemos agrregar algunos imports.

public static bool ValidateServerCertificate(Object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
return true;
}



Espero que esto soluciona sus problemas.
Saludos

lunes, 19 de octubre de 2009

Microsoft.SharePoint.SPUser is not marked as serializable

Escenaro: Este es un error muy interesante.
Se presento en un WorkFlow muy simple, donde en el evento load del WorkFlow se guardaba los datos del usuario al que se le estaba asignado la tarea, para poder usarlo al final del proceso, los datos del usuario eran guardados en un SPUser.

Detalle :

Type 'Microsoft.SharePoint.SPUser' in Assembly 'Microsoft.SharePoint,
Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' is not
marked as serializable. Type 'Microsoft.SharePoint.SPUser' in Assembly
'Microsoft.SharePoint, Version=12.0.0.0

Solucion: Esto pasa cuando se hace public un variable del tipo SPUser o SPListItem. En el proceso de Hidratacion/Desidratacion estos tipos se vuelven no serializables. Es Preferible crear una clase alterna a estos objetos y usarlos, tomando las consideraciones necesarias para poder serializarlas, como contructor vacio por ejemplo.
Espero les sea de ayuda.

Event ID: 5343 ('Microsoft.SharePoint.dll' or one of its dependencies. The system cannot find the file specified)

Escenario: Este error se presento cuando se implemento un formalario infopath con codigo personalizado donde se agrego como regerencia Sharepoint.dll que nos permite acceder a los datos de Lista, Librerias y otros recursos de Sharepoint.

Detalle:

Event Type: Error
Event Source: Office SharePoint Server
Event Category: Forms Services Runtime - Business Logic
Event ID: 5343
Date: 7/17/2009
Time: 11:14:07 AM
User: N/A
Computer: PC-Marco
Description:
An exception occurred during loading of business logic. (User: Dominio\Mdiaz, Form Name: SCWFPuestoAprobacionAssociationForm, IP: , Request: http://Server2003/_layouts/CstWrkflIP.aspx?List={xxxxxx-xxxx-xxxx-xxxx-xxxxxxxx}, Form ID: urn:schemas-microsoft-com:office:infopath:SCWFPuestoAprobacionAssociationForm:-myXSD-2009-07-17T15-36-56, Type: FileNotFoundException, Exception Message: Could not load file or assembly 'file:///C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\SCWFPuestoAprobacion\Forms\Microsoft.SharePoint.dll' or one of its dependencies. The system cannot find the file specified.)

Solucion:
Cuando agregemos la DLL debemos asegurarnos de poner Copy Local = False.
Tal como se muestran las imagenes.