[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Trouble Upgrading to new release



Hi Linda,

I haven't tried it, but I would suspect that you can have an older copy 
of Expat in a different library for your programs to use.  And let 
HTTPAPI use the one in LIBHTTP, which can be a newer one.

If that won't work, let me know, and I'll come up with a better solution.


llandreth@xxxxxxxxx wrote:
> Thank you for a speedy reply late on a Friday afternoon.
> 
> Because so many of our programs use a EXPAT, if I installed the 2.0.0
> version, I would have to recreate them all, right?
> So can I stay at the older EXPAT release, and still install the 1.17
> version of HTTPAI?
> 
> Linda Landreth
> Park University Enterprises, Inc.
> 9757 Metcalf Avenue
> Overland Park, KS  66212
> llandreth@xxxxxxxxx
> (913) 967 - 8321 direct
> 
> 
>                                                                                                                     
>                       Scott Klement                                                                                 
>                       <sk@xxxxxxxxxxxxxxxx>             To:       HTTPAPI and FTPAPI Projects                       
>                       Sent by:                           <ftpapi@xxxxxxxxxxxxxxxxxxxxxx>                            
>                       ftpapi-bounces@xxxxxxxxxxx        cc:                                                         
>                       klement.com                       Subject:  Re: Trouble Upgrading to new release              
>                                                                                                                     
>                                                                                                                     
>                       03/30/2007 02:28 PM                                                                           
>                       Please respond to HTTPAPI                                                                     
>                       and FTPAPI Projects                                                                           
>                                                                                                                     
>                                                                                                                     
> 
> 
> 
> 
> WHY ARE YOU GETTING THIS ERROR?
> 
> On my site, I have two versions of Expat.
> 
> a) Version 2.0.0 is compiled to output UTF-16 Unicode to the handlers.
> b) Version 1.95.8 is compiled to output UTF-8 Unicode to the handlers.
> 
> Now, if you want to re-compile Expat (using the ILE C compiler) you can
> change that behavior if you want.  You can change 2.0.0 to UTF-8, or
> change 1.95.8 to UTF-16.  But if you use the precompiled copies on my
> site, they're configured as (A) and (B), above.
> 
> WHY DID SCOTT CHANGE IT?
> 
> Why did I make that change?  Although UTF-8 worked very well, the ILE
> RPG language does not natively understand UTF-8.  So to use the UTF-8
> versions properly in ILE RPG, you have to call the iconv() API.  This
> adds a significant amount of extra complexity in coding to the RPG
> programmer.
> 
> UTF-16, however, *is* natively supported by RPG.  So instead of using
> iconv() to convert from Unicode to EBCDIC, you can use the %char() BIF,
> which greatly simplifies the RPG code.
> 
> WHY DOES CHANGING IT CAUSE A SIGNATURE VIOLATION?
> 
> If your program was coded to receive UTF-8 strings, and I changed the
> service program to use UTF-16, then your programs would have the dreaded
> "unpredictable results" that IBM warns us against.  Rather than risk
> causing damage to data in your production files, I thought it was safest
> to deliberately change the signature and break backward compatibility.
> 
> 
> IF I DON'T WANT TO CHANGE MY PROGRAMS, WHAT CAN I DO?
> 
> If you use Expat directly, put a copy of the UTF-8 Expat into a library
> of your own, and bind to that copy rather than the one in LIBHTTP or
> LIBEXPAT.
> 
> If you use HTTPAPI rather than calling Expat directly, you don't need to
> change your programs, as HTTPAPI takes care of the changes for you.
> 
> 
> 
> 
> 
> llandreth@xxxxxxxxx wrote:
>> I was preparing to upgrade to release 1.17 of HTTPAPI.
>>
>> 1.  First I installed release 2.0 of EXPAT.
>> 2.  Then I installed 1.17 of HTTPAPI.  Of course, the install blew on
>> EXPAT.
>> 3.  I created a duplicate object of EXPAT service program in HTTAPI, and
>> re-ran the HTTPAPI install command.
>>
>> 4. Now, my expat program will not run.  Execution error is " Program
>> signature violation".
>> 5. The program will not even recompile (copy of XPATH).
>>
>> Error is on this line:   p = XML_ParserCreate(*NULL);
>> Error:  *RNF7536 30      1 The type of the parameter specified for the
> call
>> does not match the prototype.
>> 6.  I am restoring my LIBEXPAT and LIBHTTP,  which should fix the problem
>> for now.   But I did not expect to have to recompile objects just to
>> upgrade to new releases.
>>
>> What have I done wrong?
>>
>> regards,
>>
>>
>> Linda Landreth
>> Park University Enterprises, Inc.
>> 9757 Metcalf Avenue
>> Overland Park, KS  66212
>> llandreth@xxxxxxxxx
>> (913) 967 - 8321 direct
>>
>>
>> -----------------------------------------------------------------------
>> This is the FTPAPI mailing list.  To unsubscribe, please go to:
>> http://www.scottklement.com/mailman/listinfo/ftpapi
>> -----------------------------------------------------------------------
> 
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------
> 
> 
> 
> 
> 
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------

-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------