1. Gary Privette
  2. PowerServer Mobile (Obsolete)
  3. Friday, 6 October 2017 20:34 PM UTC

I'm trying to create a Mobile app using Oracle 12c database (and full Oracle client, not instant client).  When I create/test the Data Source, using Oracle Native Driver, in AEM, I get the error:

"Testing Data Source juvn_dev failed: Attempt to load Oracle client libraries threw BadImageFormatException. This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed."

When try to run the app on the Android phone, I get the message: "Alert - Connection to database failed."

The application runs fine in the PowerBuilder IDE, and the datasource tests successfully in the PowerServer Toolkit configuration / DB Type Profile.

Do I need to use a 64-bit Oracle client on the PowerServer?  I would rather not, if possible, since our regular client apps are 32-bit.  My PC is Windows 7 64-bit.

Miguel Leeuwe Accepted Answer Pending Moderation
  1. Friday, 10 August 2018 04:09 AM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 1

After 2 long nights and thanks to this older reply of Marco: https://www.appeon.com/standardsupport/search/view?id=911 I looked at win SDK and noticed I had like 3 or 4 of them installed on my windows 10.

I uninstalled all, then installed the latest one for windows 10 and now everything is working.

You don't know how happy I am :) Thanks for the help!

MiguelL

Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Wednesday, 8 August 2018 17:19 PM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 2

Thanks Armeen,

 

I'll give the installer "trick" a try, but for now, I'm first figuring out why my SetTransobject with latest pfc's fails, as where a simple non-pfc application does connect. If I have any more problems I'll ask my question on the bug-site.

 

Cheers,

MiguelL

Comment
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 8 August 2018 16:48 PM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 3

OK elaboration on my previous answer.  The answer I provided previously in this Q&A thread is correct for perpetual-licensed PowerServers.  Starting from PB 2017 R3 and newer full developer editions (web + mobile) is included with the PB Universal Edition subscription so some customers may be installing a subscription version of PowerServer Web rather than the traditional perpetual license.  While this subscription licensed version of PowerServer has the exact same features as the perpetual licensed version, the installation packaging and licensing activation is different.

Below is how to determine if you have 32-bit or 64-bit PowerServer (on the subscription licensed version included with PowerBuilder):

  • The PB Universal Edition installer package contains both 32-bit and 64-bit versions of PowerServer.
  • If your Windows OS is 32-bit the installer will detect this and automatically install 32-bit version.
  • If your Windows OS is 64-bit the installer will detect this and automatically install 64-bit version.
  • There is a secret trick to get 32-bit installed on a 64-bit OS, but if you don't do this the bitness of PowerServer will automatically be matched to your OS.
  • Just to clarify, the PowerServer Toolkit is 32-bit because the PB IDE itself is also 32-bit, and that doesn't affect the server (i.e. the 32-bit toolkit can deploy to both 32-bit and 64-bit PowerServers).

Feedback has been given to product management to add an "About" screen to the AEM (the server config and management tool) to provide detailed info, like whether 64-bit is installed.  

Secret Trick: if users want to install 32-bit PowerServer to a 64-bit OS, edit the product.ini file in the PowerBuilder Universal installer package and add the following setting under [Product] node: Platform=32

Comment
There are no comments made yet.
Tom Jiang @Appeon Accepted Answer Pending Moderation
  1. Tuesday, 7 August 2018 09:51 AM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 4

Hi Gary,

Based on your description, your must have installed 64 bit PowerServer. So you will need to install the 64 bit Oracle driver.

More information on the bitness of PowerServer:

If you installed the standard PowerServer, the install package is different for 32 bit vs 64 bit, for example:

  • APB-2017-OE-X32-WIN-AP-001.zip is for 32 bit (it can be installed on both 32 bit and 64 bit OSes)
  • APB-2017-OE-X64-WIN-AP-001.zip is for 64 bit (it can only be installed on 64 bit OS)

 

After the installation, you can see the bitness information on the AEM licensing page. See the following link for more information:

https://www.appeon.com/support/documents/appeon_online_help/2017/server_configuration_guide_for_net/Product_Activation.html#Licensing

 See attached 1.png

If you installed the PowerServer (PB edition), which comes with the PowerBuilder Universal package, then the bitness of PowerServer is determined automatically based on your OS. In other words, during the installation, the corresponding version of PowerBuilder will be installed based on if your OS is 32 bit or 64 bit. You can’t manually choose which one to install.

This is the case when you used packages like the following:

  • PWRBLDR-2017R3LTS-1858-UNV-EN.zip
  • PWRBLDR-2017R2-1769-UNV-EN.zip

In this case, the bitness information doesn’t show on the AEM licensing page. We will improve this later on. For now, you can find the information by checking the registry as shown below:

 See attached 2.png

Attachments (2)
Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Monday, 6 August 2018 07:45 AM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 5

Hi Armeen, 

Thanks for your answer:

 

I quote in italics:

  Just because your OS is 64-bit doesn't mean 64-bit PowerServer is installed.  

I don't, I assume it, as when choosing an odbc driver (just trying), I only see the 64 bit profiles.

So you need to look for the "X32" or "X64" in the filename.

I'm running the powerserver that comes with PB2017 R3, so this does not apply.

After PowerServer is installed, if you login to AEM and navigate to the Product Activation section it will display whether you have 32-bit or 64-bit PowerServer

 

It doesn't in the pb2017 R3 AEM:

See attachment capture.jpg for what I see and capture0.jpg for what you are expecting me to see.

 

So am I correct in saying we can only run 64 bit powerserver with pb2017 R3?

As far as I've got at this point: I can connect the app with IWA runner, but not (yet) from Internet Explorer so far.

 

kind regards,

MiguelL.

Attachments (2)
Comment
  1. Miguel Leeuwe
  2. Tuesday, 7 August 2018 04:41 AM UTC
NOTE: I can connect doing a simple application with my configuration, so it's no longer a 64 / 32 bit problem. I'm using 3 transaction objects, all pointing to the same database. I will let you know if I cannot solve my situation.
  1. Helpful
  1. Miguel Leeuwe
  2. Tuesday, 7 August 2018 08:23 AM UTC
Maybe important: though the initial post was for PowerServer MOBILE, I'm experiencing the problems on Powerserver WEB with PB2017 R3.
  1. Helpful
  1. Armeen Mazda @Appeon
  2. Wednesday, 8 August 2018 16:39 PM UTC
PowerServer Mobile and Web use the same server-side connection mechanism so it makes sense you experience the same issue on both. At this point, I would suggest to open a support ticket and work with our support folks. I doubt this is a product bug, but it may be too complicated to handle in Q&A.
  1. Helpful
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Monday, 6 August 2018 02:44 AM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 6

The version of the Oracle driver installed on the machine where PowerServer is installed needs to match 32-bit or 64-bit, depending on the version of PowerServer installed.  Just because your OS is 64-bit doesn't mean 64-bit PowerServer is installed.  

32-bit PowerServer will have filename APB-2017-OE-X32-WIN-AP-001.zip

64-bit PowerServer will have filename APB-2017-OE-X64-WIN-AP-001.zip

So you need to look for the "X32" or "X64" in the filename.

After PowerServer is installed, if you login to AEM and navigate to the Product Activation section it will display whether you have 32-bit or 64-bit PowerServer installed: https://www.appeon.com/support/documents/appeon_online_help/2017/server_configuration_guide_for_net/Product_Activation.html

If you are using .NET version of PowerServer then you can test the connection right from AEM.  

If you are using Java version of PowerServer then you need to test the connection in your Java app server (not AEM).

I would recommend reading the server configuration documentation:

.NET server: https://www.appeon.com/support/documents/appeon_online_help/2017/server_configuration_guide_for_net/index.html

Java server: https://www.appeon.com/support/documents/appeon_online_help/2017/server_configuration_guide_for_j2ee/index.html

Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Sunday, 5 August 2018 22:10 PM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 7

I have some more information:

I tried to connect from AEM (only 64 bit it seems) with another oracle database and that worked fine.

The one that fails to connect from AEM, having a 12c client installed (32 and 64), now after rebooting is complaining about not finding the credentials, is a v 11 database:

SELECT * FROM v$version
WHERE banner LIKE 'Oracle%';

Oracle Database 11g Release 11.2.0.1.0 - Production

---------------------------------------------------------------------------

The one which works perfectly is a v 12c database:

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

 

I'm not in the office, so I cannot verify if the 11g database is maybe a 32 bit database... but I would expect AEM to be able to connect to an 11g 32bit / 64 bit database?

If I get information on the bitness of the 11g database, I'll post it here.

regards,

MiguelL.

Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Sunday, 5 August 2018 21:00 PM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 8

Hi Marco,

 

I'm back on trying to connect to powerserver with Oracle native driver and PB2017 R3.

First I got exactly the same error as described here in this post. Then I decided to also install the oracle 12c 64 bit client and now I'm getting the error described here:

https://www.appeon.com/support/documents/appeon_online_help/pb2017r2/appeon_troubleshooting_guide/ch05s02s18.html

 

I have not been able to solve this. Do we have an option to install 32 or 64 bit powerserver anyway? I don't think that's possible with R3 ?

Comment
  1. Armeen Mazda @Appeon
  2. Wednesday, 8 August 2018 16:37 PM UTC
Please see my comments below Gary's response regarding how to choose between 32-bit and 64-bit.
  1. Helpful
There are no comments made yet.
Miguel Leeuwee Accepted Answer Pending Moderation
  1. Saturday, 18 November 2017 04:06 AM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 9

I'm having exactly the same problem, when trying to setup up the connection in AEM I set the 64 bit (using odbc, native gives me problems) and then from the toolbar config option in powerbuilder I still can only select 64 bit driver. When using native it doesn't connect.

I'm going to uninstall everything and see if I can solve it by installing 32 bit only for powerserver (don't even know if that's possible since I've never had the option when installing).

 

Cheers,

MiguelL

Comment
There are no comments made yet.
Gary Privette Accepted Answer Pending Moderation
  1. Monday, 9 October 2017 17:21 PM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 10

How do I install 32-bit PowerServer?  I tried to uninstall and then re-install from the PowerServer_86 folder, and it tells me to use the Autorun, but Autorun does not give me the option to choose 64-bit or 32-bit.  I assumed that since it installed to Program Files(x86) it installed as 32-bit.  How do I even tell whether it installed as 32-bit or 64-bit?

If I must install as 64-bit, how do I tell it use the 64-bit Oracle client?  I need to have 32-bit client on my PC for the regular PowerBuilder client apps.

Thank you.

Comment
  1. Armeen Mazda @Appeon
  2. Wednesday, 8 August 2018 16:35 PM UTC
The 32-bit PowerServer will be automatically installed by the installer routine if your Windows OS is 32-bit. If your Windows OS is 64-bit, you can force it to install 32-bit PowerServer instead of 64-bit by editing the product.ini file in the installer package and add the following setting under [Product] node: Platform=32
  1. Helpful
  1. Miguel Leeuwe
  2. Friday, 10 August 2018 04:10 AM UTC
Thanks Armeen, that little trick worked like a charm :)
  1. Helpful
There are no comments made yet.
Marco Meoni Accepted Answer Pending Moderation
  1. Saturday, 7 October 2017 14:19 PM UTC
  2. PowerServer Mobile (Obsolete)
  3. # 11

This error indicates that you have a mismatch between 32 bits and 64 bits components in your application.

The PB IDE uses 32 bit drivers.

However, if you have installed a 64 bits version PowerServer, it must connect the DB using 64 bits drivers.

You can keep both clients and have the Appeon toolkit -> DB profile to use 32 bits driver and the Powerserver runtime (AEM) to use the 64 bits driver.

Best,

Marco

Comment
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.