Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

BlackBerry Web Services

Reply
Highlighted
New Contributor
Posts: 7
Registered: ‎04-13-2011
My Device: Developer
My Carrier: N.A.
Accepted Solution

findDeviceforUser() API with loadServiceAttributes = true not working for some BES models

In our application, we are using findDeviceforUser() API with loadServiceAttributes = true. This is required for querying certain Device feature related information from BES.

 

However, for certain Device models (specifically for BlackBerry 9000), we are getting the following exception:

 

"Invalid Character Exception" and a response of

<encryptionAlgorithms>3DES, AES-256, 0x?</encryptionAlgorithms>

 

The error character ? corresponds to a control character(BEL)

 

Can someone please help me how to resolve this issue. Is this a known bug. Are there any known patches for this?

 

Retired
Posts: 2,559
Registered: ‎10-16-2009
My Device: BlackBerry Z10
My Carrier: Bell

Re: findDeviceforUser() API with loadServiceAttributes = true not working for some BES models

Where is this exception being thrown? Is it thrown by the library or some line in your application?

 

From within the BAS console, what is the character that should be sent in the response?

Garett
@garettBeuk
--
Goodbye everybody!
New Contributor
Posts: 7
Registered: ‎04-13-2011
My Device: Developer
My Carrier: N.A.

Re: findDeviceforUser() API with loadServiceAttributes = true not working for some BES models

The exception is happening at the following web service call:

 

FindDeviceForUserResult deviceResult = coreWebService.findDeviceForUser(findDeviceForUser1).returnValue

 

I think call to coreWebService.findDeviceForUser(findDeviceForUser1) will try to create FindDeviceForUserResponse object by parsing the SOAP xml. However since the XML is an ill formed due to existence of BEL character, an exception is thrown.

 

In the console the exception character is trimmed and is shown as '3DES, AES-256, 0x'

Retired
Posts: 2,559
Registered: ‎10-16-2009
My Device: BlackBerry Z10
My Carrier: Bell

Re: findDeviceforUser() API with loadServiceAttributes = true not working for some BES models

It looks like there is an issue with your BES/BAS configuration. The only values that should be listed for the Encryption Algorithms are 3DES and/or AES-256. "0x" should not be listed. This value is unexpected which is why the BAA is throwing the exception, once this is resolved your application should function with these users.

 

I would suggest engaging the BES forum boards or to create a ticket with the server support teams to help get this resolved.

Garett
@garettBeuk
--
Goodbye everybody!