You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Xiaofan Zhou <Xi...@businessobjects.com> on 2006/03/23 02:47:24 UTC
RE: NetAccessorException
Alberto,
I tried to port the fix in 2.7 back to 1.7 (the SocketJanitor stuff), but seems it did not solve my problem. I am still getting NetAccessorException after my application called the schema parser a few times. And same again, after re-start my application, I am able to import the schema that previously failed to import. On the other front, I am actually trying to upgrade my application to use Xerces 2.7, and in that environment, I do see that I am not getting the NetAccessorException. But I still need to support the old version though!
Any thoughts? Thanks in advance.
Frank
-----Original Message-----
From: Alberto Massari [mailto:amassari@datadirect.com]
Sent: 2006年1月16日 12:32
To: c-dev@xerces.apache.org
Subject: Re: NetAccessorException
Xerces 2.7 has a fix in the NetAccessor, where a socket was leaked if an exception was thrown while trying to reach a web server; if you need to stay on Xerces 1.7 you can try to backport the changes found at http://svn.apache.org/viewcvs.cgi?rev=231009&view=rev
Alberto
At 11:03 AM 1/16/2006 -0800, David Bertoni wrote:
>Xiaofan Zhou wrote:
>>Dave,
>>Thanks much for the reply. The error message is like this:
>> XML parser failed: error <An exception occurred!
>>Type:NetAccessorException, Message:Could not connect to the socket for
>>URL '{0}'. Error {1}> at line <0> char <0> in <<xsd:schema ...blabla...
>>>.
>>So it does look like having something to do with socket. I haven't
>>tried to use newer version of XERCES-c, because it requires lots of
>>code in my application.
>
>Well, the error message isn't very helpful, is it?
>
>I suggest you take a look at the source code for Xerces-C 1.7 to see if
>there's a leak. A leak-detection tool might also help find the problem.
>
>Dave
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>For additional commands, e-mail: c-dev-help@xerces.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
RE: NetAccessorException
Posted by Alberto Massari <am...@datadirect.com>.
Hi Frank,
unfortunately I don't have any other suggestion on where is the code
that yields the different behavior. You will have to start debugging
the 1.7 code base.
Just a suggestion: the message "Could not connect to the socket" is
generated by this code
if (connect(s, (struct sockaddr *) &sa, sizeof(sa)) < 0)
{
ThrowXML(NetAccessorException,
XMLExcepts::NetAcc_ConnSocket);
}
You may want to change it to be
int errCode=connect(s, (struct sockaddr *) &sa, sizeof(sa));
if (errCode < 0)
{
ThrowXML(NetAccessorException,
XMLExcepts::NetAcc_ConnSocket,
urlSource.getURLText(), errCode);
}
so that you get the connect() error code in the message.
Hope this helps,
Alberto
At 05:47 PM 3/22/2006 -0800, Xiaofan Zhou wrote:
>
>Alberto,
>
>I tried to port the fix in 2.7 back to 1.7 (the SocketJanitor
>stuff), but seems it did not solve my problem. I am still getting
>NetAccessorException after my application called the schema parser a
>few times. And same again, after re-start my application, I am able
>to import the schema that previously failed to import. On the other
>front, I am actually trying to upgrade my application to use Xerces
>2.7, and in that environment, I do see that I am not getting the
>NetAccessorException. But I still need to support the old version though!
>
>Any thoughts? Thanks in advance.
>
>Frank
>
>
>-----Original Message-----
>From: Alberto Massari [mailto:amassari@datadirect.com]
>Sent: 2006$BG/(J1$B7n(J16$BF|(J 12:32
>To: c-dev@xerces.apache.org
>Subject: Re: NetAccessorException
>
>Xerces 2.7 has a fix in the NetAccessor, where a socket was leaked
>if an exception was thrown while trying to reach a web server; if
>you need to stay on Xerces 1.7 you can try to backport the changes
>found at http://svn.apache.org/viewcvs.cgi?rev=231009&view=rev
>
>Alberto
>
>At 11:03 AM 1/16/2006 -0800, David Bertoni wrote:
> >Xiaofan Zhou wrote:
> >>Dave,
> >>Thanks much for the reply. The error message is like this:
> >> XML parser failed: error <An exception occurred!
> >>Type:NetAccessorException, Message:Could not connect to the socket for
> >>URL '{0}'. Error {1}> at line <0> char <0> in <<xsd:schema ...blabla...
> >>>.
> >>So it does look like having something to do with socket. I haven't
> >>tried to use newer version of XERCES-c, because it requires lots of
> >>code in my application.
> >
> >Well, the error message isn't very helpful, is it?
> >
> >I suggest you take a look at the source code for Xerces-C 1.7 to see if
> >there's a leak. A leak-detection tool might also help find the problem.
> >
> >Dave
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
> >For additional commands, e-mail: c-dev-help@xerces.apache.org
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>For additional commands, e-mail: c-dev-help@xerces.apache.org
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>For additional commands, e-mail: c-dev-help@xerces.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org