miércoles, 21 de octubre de 2009

Problema con servicio WCF y sitio web con nombres multiples.

Sintomas:
Al publicar un servicio web y llamar a la página en el explorador recibimos el error.
Esta colección ya contiene una dirección con el esquema http. Sólo puede haber una dirección por esquema en esta colección. Nombre del parámetro: item
Causa:
Se debe a que el sitio web esta configurado para responder a multiples nombres de host.
Resolución:
Modificar el Web.config:
<servicehostingenvironment aspnetcompatibilityenabled="false">
<baseaddressprefixfilters>
<add prefix="net.tcp://carpanta.ascer.org:8000">
<add prefix="http://www.ascer.es">
</baseaddressprefixfilters>
</servicehostingenvironment>

Referencias:
http://blogs.msdn.com/rampo/archive/2008/02/11/how-can-wcf-support-multiple-iis-binding-specified-per-site.aspx
http://rilaros.blogspot.com/2009/06/wcf-this-collection-already-contains.html

Configurar WCF

Sintomas
Prefieres un UI a editar XML para configurar WCF
Solución
Lee este post:
http://eljuanlu.blogspot.com/2007/12/windows-communication-foundation-wcf.html

jueves, 8 de octubre de 2009

DCDIAG y PTR record query for the 1.0.0.12 7.in-addr.arpa. failed on the DNS server

Sintomas:
Ocurre cuando intentas pasar el test dcdiag /test:dns a tus DNS, por ejemplo para crear un DC w2k8 en un dominio w2k3.
Te asustas con errores múltiples con la frase:
PTR record query for the 1.0.0.12 7.in-addr.arpa. failed on the DNS server
Seguidos de los servidores en forwarder o en root hints.
Solución:
Si todo esta funcionando bien, ignora este error.
Se debe a que esa verificicación solo funcionaría en servidores dns Ms y los forwarders y root no los son.
http://social.technet.microsoft.com/Forums/en-US/winserverDS/thread/65dfc19f-9606-437c-bfea-752c59516bdf

jueves, 1 de octubre de 2009

Problema instalación SQL Server 2008 MSXML 6.0 Parser

Problema:
No puedes instalar SQL Server 2008, en el registro de instalación del motor de base de datos aparece un error relativo a MSXML 6.0 Parser
Resolución:
Instalar con el SP1 añadido.
Ver KB
Otras soluciones

viernes, 28 de agosto de 2009

GridView linq paginado

Planteamiento:
Queremos establecer el origen de datos de un grid view desde los valores en una serie de combos.
Los combos contienen un listitem "(todos)" con valor "0" y descripciones y codigos desde una base de datos o pueden contener criterios que cambian el orden o establecen un filtro mas complicado.
Y ademas queremos paginar.
Y lo haremos sin el control web visual de linq.

Solucion
Podemos construir el origen de datos mediante una variable system.linq.iqueryable (of datos)
Sobre esta variable vamos a realizar restricciones sucesivas y al final una asignación al grid:
Sub actualizaListaTextos()
Dim Query = From tx In bd.Texto
If cmbPlantilla.SelectedValue <> "0" Then
Dim plan = bd.Plantilla.Single(Function(p As Plantilla) p.idPlantilla = CInt(cmbPlantilla.SelectedValue))
Dim listaIdTextos = From id In plan.TextosPlantilla Select id.idTexto
Query = From tx In bd.Texto Where listaIdTextos.Contains(tx.idTexto)
End If
Select Case cmbPosicion.SelectedValue
Case "0"
Query = From q In Query Order By q.Nombre
Case "1"
Query = From q In Query Where q.OpcionCabeza = True Order By q.OrdenCabeza
Case "2"
Query = From q In Query Where q.OpcionPie = True Order By q.OpcionPie
Case "3"
Query = From q In Query Where q.OpcionCabeza = False And q.OpcionPie = False Order By q.Nombre
End Select
GridTextos.DataSource = From q In Query Select q.idTexto, q.Nombre
GridTextos.DataBind()
End Sub


Cada vez cambia un combo llamamos a este sub:

Protected Sub cmbPlantilla_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles cmbPlantilla.SelectedIndexChanged, cmbPosicion.SelectedIndexChanged
actualizaListaTextos()
End Sub


Nos falta el paginado:

Private Sub GridTextos_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles GridTextos.PageIndexChanging
GridTextos.PageIndex = e.NewPageIndex
actualizaListaTextos()
End Sub


E voilaaa.

lunes, 8 de junio de 2009

Problema de ñ y acentos en página web

Sintomas:
Las ñ y acentos se visualizan con los clásicos chinos en una página asp editada con Visual Studio.
Solución:
Es trivial, a la hora de guardar en lugar de guardar usar guardar como y utilizar la codificación: Europeo Occidental (windows).
Comentario:
Parece tonto pero es algo que se te olvida.

viernes, 5 de junio de 2009

Formato CRON en Scheduler de Cumulus de Canto

Sintomas:
Cuando intentas utilizar el formato CRON para programar tareas en el scheduler el servicio se detiene y no se ejecutan las tareas
Resolución
Hay que utilizar el comodin ? en lugar del * para los dias del mes y de la semana
Ejemplos:
Si escribes 0 0/10 * * 2-6 no funcionará, y en el registro wrapper.log tendrás el error:

java.lang.UnsupportedOperationException: Support for specifying both a day-of-week AND a day-of-month parameter is not implemented.

Tienes que escribir 0 0/19 ? * 2-6