Erros com Infopath - Unexpected end of file while parsing Name has occurred
Autor: David Sellen | Publicado: 2009-02-10T12:18:00-02:00


 <!--  /* Font Definitions */  @font-face 	{font-family:Wingdings; 	panose-1:5 0 0 0 0 0 0 0 0 0; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1073750139 0 0 159 0;} @font-face 	{font-family:"MS Shell Dlg"; 	panose-1:2 11 6 4 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-520082689 -1073741822 8 0 66047 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-priority:1; 	mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin-top:0cm; 	margin-right:0cm; 	margin-bottom:10.0pt; 	margin-left:0cm; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	mso-bidi-font-size:10.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-bidi-font-size:10.0pt; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoPapDefault 	{mso-style-type:export-only; 	margin-bottom:10.0pt;} @page Section1 	{size:612.0pt 792.0pt; 	margin:70.85pt 3.0cm 70.85pt 3.0cm; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --> 
  

PessoALL

Ultimamente programando com InfoPath venho encontrado um problema muito comentado nos fóruns MS e outros de desenvolvimento na web, a infeliz exceção Unexpected end of file while parsing Name has occurred 

Meu cenário era o seguinte: 

Dois DataSources Secundários apontando para listas do SharePoint cada um ligado à um DropDownList do InfoPath

Ao criar minha regra de negócio no VS e executar os testes com o cliente do InfoPath tudo funciona uma beleza! Porém ao publicar no SharePoint Form Services o mesmo lançou uma exceção desconhecida, a mensagem consegui enxergar nos logs K do SharePoint

%Program Files%\Common Files\Microsoft Shared\Web Server Extensions\12\LOGS

Exceção durante o processamento da solicitação. (Usuário: Dominio\UserName, Nome do Formulário: Formulario, IP: , Solicitação: http://server/_layouts/Postback.FormServer.aspx, ID do Formulário: urn:schemas-microsoft-com:office:infopath:formulario:-myXSD-2009-02-10T11-21-53, Tipo: XmlException, Mensagem de Exceção: Unexpected end of file while parsing Name has occurred. Line 1, position 324.)

 

O problema real é o modelo de objetos não estava gerando o XML corretamente por causa do formato das listas... Mas como? Simples o nome da lista continha caracteres especiais e algumas colunas também! 

Algo do tipo:

Lista de Funcionários

Coluna: Data de Aniversário 

Imaginem que na hora de codificar os acentos o sistema por engano faça o seguinte: Codifique &gt; em seu valor &gt; ou &lt; &lt; ?

As tags do nosso XML ficam corropidas e ele acaba por perceber que ocorreu um Unexpected end of file while parsing Name 

Consegui driblar por esse problema com um “work around” mudando os nomes na definição da lista para outros sem caracteres especiais. 

Existem outras formas de resolver este problema, esta foi a que funcionou no meu ambiente. 

Abraços e até a próxima.



(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));