axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Damien Bouchet" <dbouc...@dictao.com>
Subject [AXIS C++ 1.6b] : Deserialization problems
Date Tue, 04 Apr 2006 08:56:34 GMT
Hello,
 
We have developped a web service based on Axis CPP 1.6b but are now
facing two anomalies during the deserialization of incoming requests : 

*	
	Empty elements

	When one of the elements in the incoming SOAP request is empty,
a sigsegv fault occurs, and the request is not processed by the web
service. We managed to get the service to work with the following
workaround :
	 
	In SoapDeSerializer.cpp, at line 1911 (in the getElement Method)
:
	 
	
	<    else if (END_ELEMENT == m_pNode->m_type)    // We have an
empty string - Jira AXISCPP-93
	<    {
	<     pSimpleType->deserialize("");
	<     m_pNode = m_pParser->next();
	<     return;
	<    }
	 
	>    else if (END_ELEMENT == m_pNode->m_type)    // We have an
empty string - Jira AXISCPP-93
	>    {
	>     pSimpleType->deserialize("");
	>     //Proposed  Fix : We already have read the end element, no
need to skip it
	>     //m_pNode = m_pParser->next();
	>     return;
	>    }
	 
	Does this modification seem correct to you, to fix the sigsegv
fault, or do you recommand another way of fixing this behaviour ?

*	
	Text with accents (acute, grave, ...)

	When one of the elements with a "String" type contains any
character with an accent, calling the getElementAsString method returns
an empty String. The position of the accent in the String doesn't seem
to matter. The incoming SOAP requests are encoded in UTF-8.
	Do you have any idea what can cause such a behaviour and how to
fix it ? Could this have anything to do with bug AXISCPP-947 ?

Thank you for your help on this.
 
Regards,
 
Damien,


---------------------------------------------------------------------------------------------------------------
Ce message et tous les fichiers qui y sont attaches contiennent des informations
confidentielles ou appartenant a Dictao. Ils sont destines a l'intention
exclusive de son (ses) destinataire(s). Toute divulgation, utilisation, diffusion ou
reproduction (totale ou partielle) de ce message, ou des informations
qu'il contient, doit etre prealablement autorisee. Tout message electronique
est susceptible d'alteration et son integrite ne peut etre assuree. Dictao decline
toute responsabilite au titre de ce message s'il a ete modifie ou falsifie. Si vous
n'etes pas destinataire de ce message, merci de le detruire immediatement 
et d'avertir l'expediteur de l'erreur de distribution et de la destruction du message.
Dictao - RCS Paris B 429 383 979 - 42, avenue de la Grande Armee - 75017 Paris

This e-mail and all the attached files contain confidential information or information 
belonging to Dictao. They are intended solely for the addressee(s). The unauthorized 
disclosure, use, dissemination or copying (either whole or partial) of this e-mail, or 
any information it contains, is prohibited. E-mails are susceptible to alteration and 
their integrity cannot be guaranteed. Dictao shall not be liable for this e-mail if
modified or falsified. If you are not the intended recipient of this e-mail, please 
delete it immediately from your system and notify the sender of the wrong 
delivery and the mail deletion.
Dictao  - Registered Office : Paris B 429 383 979 - 42, avenue de la Grande Armee - 75017
Paris - France


Mime
View raw message