3 messages in org.apache.ws.axis-c-userRe: adb with base64Binary and xmime.x...
FromSent OnAttachments
Mark NüßlerSep 26, 2007 5:56 am.zip
Royston DaySep 26, 2007 8:29 am 
Mark NüßlerSep 26, 2007 9:33 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: adb with base64Binary and xmime.xsd - little howtoActions...
From:Royston Day (rd@mpc-data.co.uk)
Date:Sep 26, 2007 8:29:21 am
List:org.apache.ws.axis-c-user

Hi all,

hello users,

because i concentrate on codegeneration and and sending files, i just want to give back some of my knowlegde, since it's working.

i don't explain how to generate and implement, i just explain, how i create a wsdl for this purpose.

thx to Dimuthu Chathuranga this little howto was possible, hope some of you will find this useful.

mfg derMark

I've been using the axutil base64 libraries recently and came across a issue in the base64.c source file (located in .../util/src/base64.c), in the following function which is used by the axutil base64 binary library to calculate the number of encoded bytes:

AXIS2_EXTERN int AXIS2_CALL axutil_base64_decode_len(const char *bufcoded) { int nbytesdecoded; register const unsigned char *bufin; register int nprbytes;

bufin = (const unsigned char *) bufcoded; while (pr2six[*(bufin++)] <= 63);

nprbytes = (bufin - (const unsigned char *) bufcoded) - 1;

nbytesdecoded = ((nprbytes + 3) / 4) * 3;

return nbytesdecoded + 1; }

I believe that this calculation of the number of encoded bytes is incorrect and have applied a quick fix as follows:

AXIS2_EXTERN int AXIS2_CALL axutil_base64_decode_len(const char *bufcoded) { int nbytesdecoded; register const unsigned char *bufin; register int nprbytes;

bufin = (const unsigned char *) bufcoded; while (pr2six[*(bufin++)] <= 63);

nprbytes = (bufin - (const unsigned char *) bufcoded) - 1;

nbytesdecoded = ((nprbytes >> 2) * 3);

if (nprbytes & 0x03) nbytesdecoded += (nprbytes & 0x03) - 1;

return nbytesdecoded; }

I hope this is of some help.

Best regards,

Royston

- - -

Royston Day, Software Engineer MPC Data Limited e-mail: rd@mpc-data.co.uk web: www.mpc-data.co.uk tel: +44 (0) 1225 710600 fax: +44 (0) 1225 710601 ddi: +44 (0) 1225 710634

MPC Data Limited is a company registered in England and Wales with company number 05507446

Registered Address: County Gate, County Way, Trowbridge, Wiltshire, BA14 7FJ VAT no: 850625238