ubicación tras sintaxis raíz raiz mal lectura incorrecto formado error encuentra elemento documento contenido asp.net

asp.net - tras - error de lectura xml: no se encuentra el elemento raíz ajax



¿Qué podría estar causando un error de análisis XML: no se ha encontrado ningún elemento? (13)

Hace poco migré un sitio ASP de mi máquina de desarrollo a un servidor en vivo. Todas las páginas, excepto mi página de preguntas frecuentes, funcionan bien, pero aparecen mis preguntas frecuentes:

XML Parsing Error: no element found Location: http://geniusupdate.com/GSHelp/faq.aspx Line Number 1, Column 1:

Los únicos cambios que hice fueron cambiar la cadena de conexión en mi página de SQL de local a la cadena especificada por mi servicio de alojamiento. ¿Algún consejo sobre lo que puedo hacer para encontrar la raíz de este problema?

aquí está la fuente de mi página de preguntas frecuentes:

<%@ Page Language="VB" MasterPageFile="~/theMaster.master" AutoEventWireup="false" CodeFile="faq.aspx.vb" Inherits="faq" Title="Untitled Page" %> <%@ Import Namespace="sqlstuff" %> <%@ Import Namespace="functions" %> <asp:Content ContentPlaceHolderID="page_title" ID="theTitle" runat="server"> FAQ</asp:Content> <asp:Content ContentPlaceHolderID="column1_title" ID="col1Title" runat="server"> <%=faqPageTitle(Request.QueryString("cid"))%></asp:Content> <asp:Content ContentPlaceHolderID="column1" ID="columnContent" runat="server"> <p>Click on a question to expand it to see the answer!</p> <p><% If cID >= 0 Then Dim theFaq As New List(Of faqContent), iterate As Integer = 0 theFaq = sqlStuff.getFaqs(cID) For Each oFaq As faqContent In theFaq Response.Output.WriteLine("<h4 id={0} class={1}>Q: {2}</h4>", _ addQuotes("gsSwitch{0}-title", iterate), _ addQuotes("handCursor"), _ oFaq.Content.Question) Response.Output.WriteLine("<div id={0} class={1}><string>A: </strong>{2}</div>", _ addQuotes("gsSwitch{0}", iterate), _ addQuotes("gsSwitch"), _ oFaq.Content.Answer) iterate += 1 Next Else Response.Output.Write("Here you can find a lot of information about eTHOMAS and how to expedite your office tasks.{0}", ControlChars.NewLine) End If %></p> <script type="text/javascript"> var gsContent = new switchcontent("gsSwitch", "div") var eID = ''<%= expandID %>'' gsContent.collapsePrevious(true) // TRUE: only 1; FALSE: any number gsContent.setPersist(false) if(eID >= 0){ gsContent.defaultExpanded(eID) // opens the searched FAQ document.getElementById(''gsSwitch'' + eID + ''-title'').scrollIntoView(true) // scrolls to selected FAQ } gsContent.init() </script> </asp:Content> <asp:Content ContentPlaceHolderID="subcolumn_right_title" ID="rSideColTitle" runat="server"></asp:Content> <asp:Content ContentPlaceHolderID="subcolumn_right" ID="rSideColContent" runat="server"></asp:Content> <asp:Content ContentPlaceHolderID="subcolumn_left_title" ID="lSideColTitle" runat="server"></asp:Content> <asp:Content ContentPlaceHolderID="subcolumn_left" ID="lSideColContent" runat="server"></asp:Content> <asp:Content ContentPlaceHolderID="sidecolumn_title" ID="sideColtitle" runat="server"> </asp:Content> <asp:Content ContentPlaceHolderID="sidecolumn" ID="sideCol" runat="server"> <% If cID >= 0 Then Response.Write(constructFaqSideMenu(CInt(Request.QueryString("cid")))) Else Response.Write(constructFaqSideMenu()) End If %> </asp:Content>

Encontré esto en otro enlace del foro:

Bueno, parece que es un poco de ambos. El mensaje es generado por Firefox, pero es causado por el framework. Por alguna razón, .NET genera un tipo de respuesta de "aplicación / xml" cuando crea una página vacía. Firefox analiza el archivo como XML y al no encontrar ningún elemento raíz, escupe el mensaje de error.

IE no representa la página, punto. Aquí es de donde viene el XML.

Aquí está la función constructFaqSideMenu ():

Public Shared Function constructFaqSideMenu(ByVal oSelID As Integer) As String Dim oCatList As New List(Of faqCategory) Dim oRet As New StringBuilder Dim iterate As Integer = 1, extraTag As String = "" oCatList = sqlStuff.getFaqCats oRet.AppendFormattedLine("<ul id={0}>", addQuotes("submenu")) oRet.AppendFormattedLine(" <li id={0}>FAQ Categories</li>", addQuotes("title")) For Each category As faqCategory In oCatList If iterate = oSelID Then extraTag = String.Format(" id={0}", addQuotes("active")) Else extraTag = "" End If oRet.AppendFormattedLine(" <li{0}><a href={1}>{2}</a></li>", extraTag, addQuotes("faq.aspx?cid={0}", iterate), StrConv(category.Title, VbStrConv.ProperCase)) iterate += 1 Next oRet.AppendLine("</ul>") Return oRet.ToString End Function

Y aquí está la fuente de la página en blanco IE devuelve:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=Content-Type content="text/html; charset=windows-1252"></HEAD> <BODY></BODY></HTML>


¿Tal vez algunos problemas de codificación, una "secuencia unicode" corrupta al comienzo de su archivo o algo de esta naturaleza?


El sitio está desarrollado en ASP.NET, no en XML. ¿Esto tiene alguna relación con el problema?


No sé nada sobre ASP.NET, pero a partir de mi experiencia genérica con frameworks web, parece que tu aplicación no produjo ningún resultado. Por lo general, eso significa que hubo una excepción antes de que se realizara cualquier representación de salida, así que intente revisar los registros para descubrir qué lo causó ...


Tal vez no hay XML (XML es una cadena en blanco)?


sin declaración xml al principio

<? xml version = "1.0"?>


Este es un hilo muy antiguo, pero lo encontré mientras busqué en Google el mismo problema y quise aportar una respuesta definitiva para cualquier persona que busque esto en el futuro.

Obtuve este error cuando se lanzó una excepción mientras se analizaban las directivas de página. Actualicé los archivos aspx del control de código fuente y el desarrollador que los revisó tenía una versión diferente de una biblioteca de controles de terceros. Las directivas de la página Registrar conjunto hace referencia a una versión que no tenía, por lo que se lanzó la excepción en este punto. Supongo que este error aparece en el cliente cuando se lanza una excepción tan temprano en el ciclo de vida de la solicitud de la página que no se envía nada al cliente.

Estamos registrando todas las excepciones en el nivel de aplicación en Global.Application_Error , así que pude obtener esta información de los registros. Tomamos la última excepción con el siguiente código:

Server.GetLastError().GetBaseException()


hey el mismo error ocurrió para mí y la solución para este error es abrir primero iis manager y luego en el administrador de iis bajo el nombre del servidor hacer doble clic en la extensión del servicio web y en que si las páginas del servidor activo están "prohibidas" cambiarlo a "permitir" y ahora tu página asp se ejecutará.


Si llama a un script .vb o .cs desde una página .aspx y obtiene este error, agregue el siguiente código a la página .aspx. FireFox necesita una apariencia de marcado válido aparentemente. Esto funcionó para mí.

<html> <body></body> </html>



Tuve este problema en todas mis páginas cuando implementé IIS. Resultó que la cuenta en la que se ejecutaba el grupo de aplicaciones no tenía suficientes privilegios para conectarse y ejecutar consultas en la base de datos.


Tuve el mismo problema. Fue causado porque manejé excepciones en global.asax, y llamé Server.ClearError (), sin llamar a Response.Redirect o similar. Supongo que el código falló y se eliminó el error, por lo que asp.net no pudo mostrar un mensaje de error, ni pudo mostrar la página solicitada.

También recibí este error porque anulé el método de representación de la página y olvidé llamar a base.render (writer), enviando así una página vacía al navegador.


Encontré este problema porque la URL estaba redireccionando a una ubicación diferente. Corregir eso resolvió el problema.

Estaba redireccionando a http://localhost/forms/abc.aspx , sin embargo, debería haber sido redirigido a http://localhost/projectname/forms/abc.aspx


Me encontré con este problema al instalar mis servicios en una máquina virtual nueva. (es decir, todavía no se han ejecutado otros servicios de WCF en esta máquina).

Necesita instalar y agregar una asignación para WCF Services en IIS. La forma más fácil de hacerlo es la siguiente:

  1. Ejecutar un símbolo del sistema con privilegios de administrador elevados

  2. En el símbolo del sistema, vaya a C: / Windows / Microsoft.NET / Framework / v3.0 / Windows Communication Foundation

  3. Ejecute el comando ServiceModelReg.exe -i

  4. Reinicie IIS ejecutando el comando iisreset