

![]() | Start a set with this search |
![]() | Include this search in one of my sets |
![]() | Exclude this search from one of my sets |
![]() | Permalink to these results Paste this link in email or IM: |
| Atom feed for tracking future search results Paste this URL into your reader: |
3 messages in org.apache.ws.axis-c-userRe: adb with base64Binary and xmime.x...| From | Sent On | Attachments |
|---|---|---|
| Mark Nüßler | Sep 26, 2007 5:56 am | .zip |
| Royston Day | Sep 26, 2007 8:29 am | |
| Mark Nüßler | Sep 26, 2007 9:33 am |

![]() | Permalink for this message Paste this link in email or IM: |
![]() | Permalink for this thread 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 howto | Actions... |
|---|---|---|
| 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
The information in this email and in the attached documents is confidential and may be legally privileged. Any unauthorized review, copying, disclosure or distribution is prohibited and may be unlawful. It is intended solely for the addressee. Access to this email by anyone else is unauthorized. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. When addressed to our clients any opinions or advice contained in this email is subject to the terms and conditions expressed in the governing contract.








.zip