Discussion:
Error: Name cannot begin with the '0' character, hexadecimal value
(too old to reply)
Atul Saxena
2007-10-12 03:50:00 UTC
Permalink
Dear All,

I am working exchange server & fetching task of outlook 2007
through MSXML2.XMLHTTP30 now I am facing the following error
"Name cannot begin with the '0' character, hexadecimal value
0x30. Line 1, position 564" while reading XML. Please help me to
solve this problem. I am also mentioning the code below:

Private Function ReadTask(ByVal stURI As System.String)

Dim sQuery As String
Dim status As Integer

Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.


sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _

"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"

' Set up request headers.
oXMLHttp.setRequestHeader("Content-Type", "text/xml")

' oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)

status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then

Call ParseTaskXML(oXMLHttp.responseText)
End If

Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function

Private Function ParseTaskXML(ByVal responseText As
System.String)
Dim reader As New XmlNodeReader(xmlDoc)
Try
xmlDoc.LoadXml(responseText)

While reader.Read()
If reader.Name.ToLower() = "d:subject" Then
strSubject = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "e:textdescription"
Then
Me.strDescription = reader.ReadInnerXml

End If
If reader.Name.ToLower() = "f:0x00008102" Then
Me.dbTasksCompletedPercent reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "g:0x8516" Then
Me.dtTasksStartDate = reader.ReadInnerXml

End If
If reader.Name.ToLower() = "g:0x8517" Then
Me.dtTasksDueDate = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "f:0x00008101" Then
' reader.ReadInnerXml
End If

End While
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
reader = Nothing
End Try

End Function
Henning Krause [MVP - Exchange]
2007-10-12 05:42:55 UTC
Permalink
Hello,

that error is a standard XML error message - Exchange requires you to sent
invalid xml to the server.

You can work around this by escaping the 0 in the front. See
http://www.infinitec.de/articles/exchange/creatingwebdavrequestswithxmlreaderwriter.aspx.

If I recall it correctly, a:0x must be written <h:0x8102/> must be written
as <h:_x0030_x8102>

Kind regards,
Henning
Post by Atul Saxena
Dear All,
I am working exchange server & fetching task of outlook 2007
through MSXML2.XMLHTTP30 now I am facing the following error
"Name cannot begin with the '0' character, hexadecimal value
0x30. Line 1, position 564" while reading XML. Please help me to
Private Function ReadTask(ByVal stURI As System.String)
Dim sQuery As String
Dim status As Integer
Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.
sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _
"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
' oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)
status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
Call ParseTaskXML(oXMLHttp.responseText)
End If
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function
Private Function ParseTaskXML(ByVal responseText As
System.String)
Dim reader As New XmlNodeReader(xmlDoc)
Try
xmlDoc.LoadXml(responseText)
While reader.Read()
If reader.Name.ToLower() = "d:subject" Then
strSubject = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "e:textdescription"
Then
Me.strDescription = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "f:0x00008102" Then
Me.dbTasksCompletedPercent reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "g:0x8516" Then
Me.dtTasksStartDate = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "g:0x8517" Then
Me.dtTasksDueDate = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "f:0x00008101" Then
' reader.ReadInnerXml
End If
End While
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
reader = Nothing
End Try
End Function
Atul Saxena
2007-10-15 07:24:00 UTC
Permalink
Dear Henning,

After applying the said method it is now not giving me any error but in
response it shows like this :

<?xml version="1.0"?><a:multistatus
xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
xmlns:e="urn:schemas:httpmail:" xmlns:d="urn:schemas:mailheader:"
xmlns:f="http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/"
xmlns:c="xml:"
xmlns:g="http://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/"
xmlns:a="DAV:"><a:response><a:href>http://192.168.111.10/Exchange/***@ccrindia.com/Tasks/</a:href><a:propstat><a:status>HTTP/1.1
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AAAAAAAAAAAAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-26T11:40:51.484Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
Found</a:status><a:prop><d:subject/><e:textdescription/><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response><a:response><a:href>http://192.168.111.10/Exchange/***@ccrindia.com/Tasks/Already%20Solve%20XML%20Error..EML</a:href><a:propstat><a:status>HTTP/1.1
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgQAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-10T08:37:15.921Z</a:getlastmodified><d:subject>Already
Solve XML Error. </d:subject><e:textdescription>Solve the error “Name cannot
begin with the ‘0’ character, hexadecimal value 0x30” & If it is not solving
then discuss with Rajeev sir.

Atul Saxena

</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
Found</a:status><a:prop><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response><a:response><a:href>http://192.168.111.10/Exchange/***@ccrindia.com/Tasks/Working%20on%20Exchange%20Server%20Project.EML</a:href><a:propstat><a:status>HTTP/1.1
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgMAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-05T09:42:29.562Z</a:getlastmodified><d:subject>Working
on Exchange Server Project</d:subject><e:textdescription>Today is the last
day of Exchange Server Project. So give all the feedback to your supervisor.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
Found</a:status><a:prop><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response><a:response><a:href>http://192.168.111.10/Exchange/***@ccrindia.com/Tasks/No%20Subject.EML</a:href><a:propstat><a:status>HTTP/1.1
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgEAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-24T07:18:10.640Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
Found</a:status><a:prop><d:subject/><e:textdescription/><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response></a:multistatus>

Please tell me how to solve "HTTP/1.1 404 Resource Not Found" error.

Thanks & regards,

Atul Saxena
Post by Henning Krause [MVP - Exchange]
Hello,
that error is a standard XML error message - Exchange requires you to sent
invalid xml to the server.
You can work around this by escaping the 0 in the front. See
http://www.infinitec.de/articles/exchange/creatingwebdavrequestswithxmlreaderwriter.aspx.
If I recall it correctly, a:0x must be written <h:0x8102/> must be written
as <h:_x0030_x8102>
Kind regards,
Henning
Post by Atul Saxena
Dear All,
I am working exchange server & fetching task of outlook 2007
through MSXML2.XMLHTTP30 now I am facing the following error
"Name cannot begin with the '0' character, hexadecimal value
0x30. Line 1, position 564" while reading XML. Please help me to
Private Function ReadTask(ByVal stURI As System.String)
Dim sQuery As String
Dim status As Integer
Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.
sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _
"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
' oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)
status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
Call ParseTaskXML(oXMLHttp.responseText)
End If
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function
Private Function ParseTaskXML(ByVal responseText As
System.String)
Dim reader As New XmlNodeReader(xmlDoc)
Try
xmlDoc.LoadXml(responseText)
While reader.Read()
If reader.Name.ToLower() = "d:subject" Then
strSubject = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "e:textdescription"
Then
Me.strDescription = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "f:0x00008102" Then
Me.dbTasksCompletedPercent reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "g:0x8516" Then
Me.dtTasksStartDate = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "g:0x8517" Then
Me.dtTasksDueDate = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "f:0x00008101" Then
' reader.ReadInnerXml
End If
End While
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
reader = Nothing
End Try
End Function
Henning Krause [MVP - Exchange]
2007-10-15 15:49:08 UTC
Permalink
Hello,

a 404 error indicates that those properties are not set on the instance.
There is no way to fix this... other by populating it with some data...

Are you sure those properties are populated in Outlook?

Kind regards,
Henning Krause
Post by Atul Saxena
Dear Henning,
After applying the said method it is now not giving me any error but in
<?xml version="1.0"?><a:multistatus
xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
xmlns:e="urn:schemas:httpmail:" xmlns:d="urn:schemas:mailheader:"
xmlns:f="http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/"
xmlns:c="xml:"
xmlns:g="http://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/"
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AAAAAAAAAAAAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-26T11:40:51.484Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgQAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-10T08:37:15.921Z</a:getlastmodified><d:subject>Already
Solve XML Error. </d:subject><e:textdescription>Solve the error “Name cannot
begin with the ‘0’ character, hexadecimal value 0x30” & If it is not solving
then discuss with Rajeev sir.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgMAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-05T09:42:29.562Z</a:getlastmodified><d:subject>Working
on Exchange Server Project</d:subject><e:textdescription>Today is the last
day of Exchange Server Project. So give all the feedback to your supervisor.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgEAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-24T07:18:10.640Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
Found</a:status><a:prop><d:subject/><e:textdescription/><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response></a:multistatus>
Please tell me how to solve "HTTP/1.1 404 Resource Not Found" error.
Thanks & regards,
Atul Saxena
Post by Henning Krause [MVP - Exchange]
Hello,
that error is a standard XML error message - Exchange requires you to sent
invalid xml to the server.
You can work around this by escaping the 0 in the front. See
http://www.infinitec.de/articles/exchange/creatingwebdavrequestswithxmlreaderwriter.aspx.
If I recall it correctly, a:0x must be written <h:0x8102/> must be written
as <h:_x0030_x8102>
Kind regards,
Henning
Post by Atul Saxena
Dear All,
I am working exchange server & fetching task of outlook 2007
through MSXML2.XMLHTTP30 now I am facing the following error
"Name cannot begin with the '0' character, hexadecimal value
0x30. Line 1, position 564" while reading XML. Please help me to
Private Function ReadTask(ByVal stURI As System.String)
Dim sQuery As String
Dim status As Integer
Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.
sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _
"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
' oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)
status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
Call ParseTaskXML(oXMLHttp.responseText)
End If
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function
Private Function ParseTaskXML(ByVal responseText As
System.String)
Dim reader As New XmlNodeReader(xmlDoc)
Try
xmlDoc.LoadXml(responseText)
While reader.Read()
If reader.Name.ToLower() = "d:subject" Then
strSubject = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "e:textdescription"
Then
Me.strDescription = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "f:0x00008102" Then
Me.dbTasksCompletedPercent reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "g:0x8516" Then
Me.dtTasksStartDate = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "g:0x8517" Then
Me.dtTasksDueDate = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "f:0x00008101" Then
' reader.ReadInnerXml
End If
End While
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
reader = Nothing
End Try
End Function
Atul Saxena
2007-10-16 11:26:01 UTC
Permalink
Dear Henning,

I tried replacing 0x8104 is converted to _x0030_x8104 but fails to do so coz
in response text it is replacing all the local name starting like 0x8104 is
replacing it with multistatus.

Please tell me what am i doing wrong:

Delegate Function GiveAdvice() As String
Dim response1 As String
Private Shared ReadOnly _TagNameRegexFinder As Regex = New
Regex("(?<=\</?\w+\:)\w+", RegexOptions.Compiled)

Private Function ReadTask(ByVal stURI As System.String)

Dim sQuery As String
Dim status As Integer

Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias,
Me.Password)
' Set up the query to get subject, from, and to.

sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _

"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
'sQuery = ParsePropfindResponse(sQuery)
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
'oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)

status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
response1 = oXMLHttp.responseText
sQuery = ParsePropfindResponse(oXMLHttp.responseText)
'Call ParseTaskXML(oXMLHttp.responseText)
Call ParseTaskXML(sQuery)
End If

Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function

Private Function ParsePropfindResponse(ByVal response As System.String)
As String
Dim TeenAgeGirl As GiveAdvice = New GiveAdvice(AddressOf fnMatch)

If String.IsNullOrEmpty(response) Then
Throw New ArgumentNullException("response")
End If

response = _TagNameRegexFinder.Replace(response,
fnReturn(TeenAgeGirl))
Return response

End Function
Private Function fnReturn(ByVal word As GiveAdvice) As String
Return (word())
End Function
Private Function fnMatch() As String
Dim match As Match = _TagNameRegexFinder.Match(response1)
Return XmlConvert.EncodeLocalName(match.Value)
End Function

Thanks & regards,

Atul Saxena
Post by Henning Krause [MVP - Exchange]
Hello,
a 404 error indicates that those properties are not set on the instance.
There is no way to fix this... other by populating it with some data...
Are you sure those properties are populated in Outlook?
Kind regards,
Henning Krause
Post by Atul Saxena
Dear Henning,
After applying the said method it is now not giving me any error but in
<?xml version="1.0"?><a:multistatus
xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
xmlns:e="urn:schemas:httpmail:" xmlns:d="urn:schemas:mailheader:"
xmlns:f="http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/"
xmlns:c="xml:"
xmlns:g="http://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/"
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AAAAAAAAAAAAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-26T11:40:51.484Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgQAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-10T08:37:15.921Z</a:getlastmodified><d:subject>Already
Solve XML Error. </d:subject><e:textdescription>Solve the error “Name cannot
begin with the ‘0’ character, hexadecimal value 0x30” & If it is not solving
then discuss with Rajeev sir.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgMAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-05T09:42:29.562Z</a:getlastmodified><d:subject>Working
on Exchange Server Project</d:subject><e:textdescription>Today is the last
day of Exchange Server Project. So give all the feedback to your supervisor.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgEAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-24T07:18:10.640Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
Found</a:status><a:prop><d:subject/><e:textdescription/><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response></a:multistatus>
Please tell me how to solve "HTTP/1.1 404 Resource Not Found" error.
Thanks & regards,
Atul Saxena
Post by Henning Krause [MVP - Exchange]
Hello,
that error is a standard XML error message - Exchange requires you to sent
invalid xml to the server.
You can work around this by escaping the 0 in the front. See
http://www.infinitec.de/articles/exchange/creatingwebdavrequestswithxmlreaderwriter.aspx.
If I recall it correctly, a:0x must be written <h:0x8102/> must be written
as <h:_x0030_x8102>
Kind regards,
Henning
Post by Atul Saxena
Dear All,
I am working exchange server & fetching task of outlook 2007
through MSXML2.XMLHTTP30 now I am facing the following error
"Name cannot begin with the '0' character, hexadecimal value
0x30. Line 1, position 564" while reading XML. Please help me to
Private Function ReadTask(ByVal stURI As System.String)
Dim sQuery As String
Dim status As Integer
Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.
sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _
"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
' oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)
status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
Call ParseTaskXML(oXMLHttp.responseText)
End If
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function
Private Function ParseTaskXML(ByVal responseText As
System.String)
Dim reader As New XmlNodeReader(xmlDoc)
Try
xmlDoc.LoadXml(responseText)
While reader.Read()
If reader.Name.ToLower() = "d:subject" Then
strSubject = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "e:textdescription"
Then
Me.strDescription = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "f:0x00008102" Then
Me.dbTasksCompletedPercent reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "g:0x8516" Then
Me.dtTasksStartDate = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "g:0x8517" Then
Me.dtTasksDueDate = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "f:0x00008101" Then
' reader.ReadInnerXml
End If
End While
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
reader = Nothing
End Try
End Function
Henning Krause [MVP - Exchange]
2007-10-16 15:44:52 UTC
Permalink
Hello Atul,

I find your code somehow confusing.

I've just converted the relevant portion of the C# code from my article to
VB:

Private Shared Function ParsePropfindResponse(ByVal response As String) As
XmlReader
If String.IsNullOrEmpty(response) Then
Throw New ArgumentNullException("response")
End If
response = Program._TagNameRegexFinder.Replace(response, Function
(ByVal match As Match)
Return XmlConvert.EncodeLocalName(match.Value)
End Function)
Return XmlReader.Create(New StringReader(response))
End Function


' Fields
Private Shared ReadOnly _TagNameRegexFinder As Regex = New
Regex("(?<=\</?\w+\:)\w+", RegexOptions.Compiled)

Btw, why are you using the XmlHttpRequest object from .NET? You should
consider using the HttpWebRequest object, since it's far more powerful.

Kind regards,
Henning Krause
Post by Atul Saxena
Dear Henning,
I tried replacing 0x8104 is converted to _x0030_x8104 but fails to do so coz
in response text it is replacing all the local name starting like 0x8104 is
replacing it with multistatus.
Delegate Function GiveAdvice() As String
Dim response1 As String
Private Shared ReadOnly _TagNameRegexFinder As Regex = New
Regex("(?<=\</?\w+\:)\w+", RegexOptions.Compiled)
Private Function ReadTask(ByVal stURI As System.String)
Dim sQuery As String
Dim status As Integer
Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.
sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _
"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/" & _
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/" & _
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
'sQuery = ParsePropfindResponse(sQuery)
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
'oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)
status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
response1 = oXMLHttp.responseText
sQuery = ParsePropfindResponse(oXMLHttp.responseText)
'Call ParseTaskXML(oXMLHttp.responseText)
Call ParseTaskXML(sQuery)
End If
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function
Private Function ParsePropfindResponse(ByVal response As System.String)
As String
Dim TeenAgeGirl As GiveAdvice = New GiveAdvice(AddressOf fnMatch)
If String.IsNullOrEmpty(response) Then
Throw New ArgumentNullException("response")
End If
response = _TagNameRegexFinder.Replace(response,
fnReturn(TeenAgeGirl))
Return response
End Function
Private Function fnReturn(ByVal word As GiveAdvice) As String
Return (word())
End Function
Private Function fnMatch() As String
Dim match As Match = _TagNameRegexFinder.Match(response1)
Return XmlConvert.EncodeLocalName(match.Value)
End Function
Thanks & regards,
Atul Saxena
Post by Henning Krause [MVP - Exchange]
Hello,
a 404 error indicates that those properties are not set on the instance.
There is no way to fix this... other by populating it with some data...
Are you sure those properties are populated in Outlook?
Kind regards,
Henning Krause
Post by Atul Saxena
Dear Henning,
After applying the said method it is now not giving me any error but in
<?xml version="1.0"?><a:multistatus
xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
xmlns:e="urn:schemas:httpmail:" xmlns:d="urn:schemas:mailheader:"
xmlns:f="http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/"
xmlns:c="xml:"
xmlns:g="http://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/"
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AAAAAAAAAAAAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-26T11:40:51.484Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgQAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-10T08:37:15.921Z</a:getlastmodified><d:subject>Already
Solve XML Error. </d:subject><e:textdescription>Solve the error “Name cannot
begin with the ‘0’ character, hexadecimal value 0x30” & If it is not solving
then discuss with Rajeev sir.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgMAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-10-05T09:42:29.562Z</a:getlastmodified><d:subject>Working
on Exchange Server Project</d:subject><e:textdescription>Today is the last
day of Exchange Server Project. So give all the feedback to your supervisor.
Atul Saxena
</e:textdescription></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1 404
Resource Not
200
OK</a:status><a:prop><a:id>AQEAAAAAAEZ6AgAAAAAoGgEAAAAA</a:id><a:getlastmodified
b:dt="dateTime.tz">2007-09-24T07:18:10.640Z</a:getlastmodified></a:prop></a:propstat><a:propstat><a:status>HTTP/1.1
404 Resource Not
Found</a:status><a:prop><d:subject/><e:textdescription/><f:0x00008102/><f:0x00008104/><f:0x00008101/><g:0x8516/><g:0x8517/></a:prop></a:propstat></a:response></a:multistatus>
Please tell me how to solve "HTTP/1.1 404 Resource Not Found" error.
Thanks & regards,
Atul Saxena
Post by Henning Krause [MVP - Exchange]
Hello,
that error is a standard XML error message - Exchange requires you to sent
invalid xml to the server.
You can work around this by escaping the 0 in the front. See
http://www.infinitec.de/articles/exchange/creatingwebdavrequestswithxmlreaderwriter.aspx.
If I recall it correctly, a:0x must be written <h:0x8102/> must be written
as <h:_x0030_x8102>
Kind regards,
Henning
Post by Atul Saxena
Dear All,
I am working exchange server & fetching task of outlook 2007
through MSXML2.XMLHTTP30 now I am facing the following error
"Name cannot begin with the '0' character, hexadecimal value
0x30. Line 1, position 564" while reading XML. Please help me to
Private Function ReadTask(ByVal stURI As System.String)
Dim sQuery As String
Dim status As Integer
Try
' Open the item.
oXMLHttp.open("PROPFIND", stURI, False, Me.UserNameAlias, Me.Password)
' Set up the query to get subject, from, and to.
sQuery = "<?xml version='1.0' encoding = 'utf-8'?>" & _
"<a:propfind xmlns:a='DAV:'
xmlns:m='urn:schemas:mailheader:' " & _
"xmlns:b='urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/' " & _
"xmlns:g='urn:schemas:httpmail:' " & _
"xmlns:i='http://schemas.microsoft.com/mapi/id/"
&
_
"{00062008-0000-0000-C000-000000000046}/' " & _
"xmlns:h='http://schemas.microsoft.com/mapi/id/"
&
_
"{00062003-0000-0000-C000-000000000046}/'> " & _
"<a:prop>" & _
"<m:subject/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:id/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<g:textdescription/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008102/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008104/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<h:0x00008101/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8516/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<a:getlastmodified/>" & _
"</a:prop>" & _
"<a:prop>" & _
"<i:0x8517/>" & _
"</a:prop>" & _
"</a:propfind>"
' Set up request headers.
oXMLHttp.setRequestHeader("Content-Type", "text/xml")
' oXMLHttp.setRequestHeader("Brief", "t")
' Send the query.
oXMLHttp.send(sQuery)
status = CheckStatus(oXMLHttp.status)
If status = En.enStatus.Multi_Status Then
Call ParseTaskXML(oXMLHttp.responseText)
End If
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
sQuery = Nothing
status = Nothing
End Try
End Function
Private Function ParseTaskXML(ByVal responseText As
System.String)
Dim reader As New XmlNodeReader(xmlDoc)
Try
xmlDoc.LoadXml(responseText)
While reader.Read()
If reader.Name.ToLower() = "d:subject" Then
strSubject = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "e:textdescription"
Then
Me.strDescription = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "f:0x00008102" Then
Me.dbTasksCompletedPercent reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "g:0x8516" Then
Me.dtTasksStartDate = reader.ReadInnerXml
End If
If reader.Name.ToLower() = "g:0x8517" Then
Me.dtTasksDueDate = reader.ReadInnerXml()
End If
If reader.Name.ToLower() = "f:0x00008101" Then
' reader.ReadInnerXml
End If
End While
Catch ex As Exception
Throw New Exception(ex.Message, ex.InnerException)
Finally
reader = Nothing
End Try
End Function
Loading...