Oracle® Cloud

Mobile Cloud Service Known Issues

Release 18.4.3

F11917-01

November 2018

General

MCS Instance Has Predefined Storage Limit

Each MCS instance has a set storage space that can’t be changed manually. Once the limit is reached, the ability to create new objects and artifacts is affected.

To avoid reaching the limit, purge analytics data on a regular basis.

Analytics

Purge Analytics Data Before Reaching Storage Limit

Analytics data must be purged on a regular basis, before stored data reaches the set database storage limit.

MCS stores analytics data for every API call. Exceeding the set storage limit can cause errors in analytics and other areas of MCS. Make sure to purge analytics data regularly to avoid exceeding the storage limit.

Workaround: Set up a regular schedule for purging analytics data to save database space and avoid reaching the storage limit.

Diagnostics Data Unavailable for Renamed Mobile Backend

If you have created a mobile backend, generated API requests against it, and then subsequently renamed the mobile backend, some performance data related to the original name will no longer be available.

Saved Events Report Returns Group-By Error After Analytics Purge

If you use a custom property to group data in an events report, then run an analytics purge operation that deletes all the events containing that custom property, the saved report will return an error.

Some Countries Don’t Render in Analytics Dashboard Map

The analytics dashboard map can’t reflect event data activity for countries in the Asia-Pacific region where the Oracle eLocation Service is not available.

DB Space Issues Due to Collection of Analytics Events

In order to prevent running out of DB space, you should disable by default the collection of analytics (request) events.

APIs

Custom APIs

401 Error Can't Return Response Body

Returning a response body on a 401 HTTP error from a custom API implementation is currently not supported.

Can't Open Mobile Backend Without API Implementation

If you try to navigate to the Mobile Backend tab in an environment without an API implementation, the page doesn’t load.

Workaround: Upload an API implementation. You can do this most quickly by merely downloading the scaffold and then uploading it again (without modification) as the implementation. A patch is available from Support for this issue. To request the patch be applied to your instance, open an SR.

Can't Select Mobile Backend Version from API Test Page

When you’re testing a custom API from the API Designer, in some cases the MBE version dropdown displays “No matches found” even though the backend exists.

Workaround: Go to the Default API Designer Test Credentials dialog and select a mobile backend that is valid for the current environment. Once the default credentials contains a valid mobile backend, the MBE version selection works.

Collection Access Required for All Resources Used As References

When setting up a resource in the Express API wizard, if you attempt to add a reference to another resource that doesn’t have the Include Resource Collection option enabled, the API can’t be saved. If the resource being used as a reference is set up for collection access, it saves without any issue.

Workaround: Enable Include Resource Collection for all resources used as references.

Deploying an Express API Implementation Stops UI Response

When you create an Express API, associate an Implementation to it, click Publish, and then click Deploy, the system might stop responding.

Workaround: Navigate to the API Home page and select your Express API. Click Deploy to deploy both the API and the associated Implementation.

Hyphen in Sample Data Changes Field to datetime

In the Express API wizard, if you include sample data with a hyphen, the field type is changed to datetime when you save the resource.

Workaround: Don’t use a hyphen in your sample data, or change the field type after you complete the wizard.

Inline Schemas Don’t Appear in API Designer Endpoints Page

If you add an inline schema using the API Designer in source mode, the schema doesn’t show up in the Endpoints page.

Workaround: Define the schema at the root level using the API Designer in design mode. In design mode, the schema editor provides syntax checking. If you want to use source mode, copy the root schema created in design mode and paste it into the source mode editor. Be very careful with formatting and be sure to use correct leading spaces and newlines.

Security Tab Isn’t Displayed for Express APIs

MAX applications don’t support alternative security methods, so the Security tab isn’t displayed by default.

Workaround: If you want to use the Express API with a different security method outside of MAX, complete the Express API, export the RAML, and use it as the input for a custom API.

Use options.Accept instead of options.accept

The options property accept is ignored if options.accept is used

Workaround: Use options.Accept instead.

Platform APIs

Oracle-Mobile-Name Header Doesn’t Accept HTML Special Characters

The Oracle-Mobile-Name header can’t contain HTML special characters, including <>!*’();:@&=+$,/?%#[].

During a Storage API call, if there are any HTML special characters in the Oracle-Mobile-Name header, the section of the string after the first special character will be removed. For example, if your Oracle-Mobile-Name is TEST<STORAGE>, the “<” character is interpreted as the start of an HTML section, so it trims off the string <STORAGE> and uses TEST for the header value.

Workaround: If you want to include HTML special characters, encode the header value. There are many HTML encoders available online.

Authentication

Social Login Requires HTTP Basic Authentication

If you enable social login for your mobile app, you must also enable HTTP basic authentication in the mobile backend's Settings page. Note that if you disable HTTP basic authentication, there is no warning message to alert you that social login won’t work.

Connectors

Connector Test Page Returns 500 Error

After upgrade, existing REST connectors created with a Swagger and all existing FA connectors in development must be opened and re-saved before you can navigate to the connector’s Test page.

Updating the Connector Version and Testing the Endpoint Returns 404 Error

When you test an endpoint successfully and then change the connector version and test the endpoint again, it returns a 404 error.

Workaround: Test the endpoint in Advanced Mode or open the connector and save it again to force a regeneration of the internal RAML.

REST Connector

REST Connector: Testing Imported Connector Returns 500 Error

When you import a package with a REST Connector and test an endpoint in the connector, it returns a 500 error.

REST Connector: Updates to Resources Page Aren't Saved

When you update the selected methods or resources on a REST Connector’s Resources page and click Save, the page refreshes and reverts to the original settings. The settings are correctly updated in MCS, but the old response is fetched from the browser cache.

Workaround: Reload the page and bypass the cache. For most browsers, Ctrl+F5 will discard the cache and reload the page with the latest values.

Fusion Applications Connector

Fusion Apps Connector: Can't Type Space in Attribute Description

When you enter a description in the property panel for a selected attribute in the Fusion Applications Connector wizard, pressing the keyboard 'Space bar' causes the panel to close.

Workaround: Avoid using spaces in attribute descriptions.

Fusion Apps Connector: Property Panel for Attributes Can't Be Hidden

When you click on an attribute in the Selected Attributes column on the Attributes page of the Fusion Applications Connector wizard, a property panel opens. The only way to close that panel is to click on another attribute in the list to open a different property panel.

Fusion Apps Connector: Test Page Returns 415 When Using POST or PUT

In the Fusion Applications Connector wizard, testing PUT and POST endpoints results in errors.

Workaround: Invoke PUT and POST endpoints directly from custom code.

SOAP Connector

SOAP Connector: RC4 Cipher Suites Not Supported

SOAP connectors use Java 7u85, which doesn’t support RC4 cipher suites.

If you are using a SOAP Connector with a SOAP endpoint that requires a SSL certificate, you may get an exception like the following that indicates an issue with the RC4 cipher: javax.net.ssl.SSLException: Server selected improper ciphersuite SSL_RSA_WITH_RC4_128_MD5

Workaround: Delete the RC4 ciphers from the SSL implementation. For example, if you are using Oracle HTTP Server, remove them from the configuration file.

SOAP Connector: WSDL URL Contains SOA Service ID

After migrating a SOAP Connector, you must remove the SOA service ID from the WSDL URL listed as the service location.

If you don’t update the service location, the response code will be 500. For example, if after migration the service location is listed as “http://den00rme.us.oracle.com/soa-infra/services/default/CustomerScoreService!1.0*soa_b9b086e0-1a5b-4988-b87d-3397ef81d98e/client” you must remove the following section: “!1.0*soa_b9b086e0-1a5b-4988-b87d-3397ef81d98e” to leave the following as the correct service location WSDL URL: “http://den00rme.us.oracle.com/soa-infra/services/default/CustomerScoreService/client”.

MAX (Mobile Application Accelerator)

Don't Delete APIs with MAX Dependencies

If a MAX app on a mobile backend is dependent on an API, deleting the API can corrupt the mobile backend. To avoid errors and unintended data loss, don’t delete an API if a MAX app is dependent on it.

Notifications

MCS Notifications API Call Can't Exceed 1000 Devices

If you pass a notification to MCS with a list of device tokens or user names that contains more than 1000 items, it causes an internal exception.

Workaround: You can either create more targeted notifications or break up notifications into multiple calls with 1000 items or less.

SDKs

Linking App in Xcode Causes iOS SDK Warning

When linking an iOS app in Xcode, you may get warnings from the SDK's IDM library. These warnings can be ignored.

Here is an example of the warning:

while processing /Users/username/Documents/thirdParty/oamms_sdk_for_ios/libIDMMobileSDK.a(OMOAMOAuthMobileSecurityConfiguration.o): warning: /var/folders/xl/qqnv59k114l8s8lw4cxpgd8w0000gq/C/com.apple.DeveloperTools/7.2.1-7C1002/Xcode/SharedPrecompiledHeaders/IDMMobileSDK-Prefix-dwaqcvuthaofoebsgzuarhtitjzi/IDMMobileSDK-Prefix.pch.pch: No such file or directory

Workaround: No workaround is necessary, as these warnings shouldn't cause any problems in your app.

Storage SDK Doesn’t Cache New Objects

The Storage SDK doesn’t cache objects added after an HTTP POST or PUT. This is expected behavior.

Suppose you have a mobile app that displays a list of objects. If you upload another object, start a new intent, and then go offline, the new object does not appear. The existing list of objects is still shown. This is because the Storage SDK doesn’t cache the object after an HTTP POST or PUT, and cached metadata is evicted after every successful HTTP POST or PUT, so only the original list is shown.

Workaround: If you’re using the Storage SDK to upload an object, make sure the upload completes before starting a new process or going offline.

Windows SDK No Longer Supported

The Oracle Mobile Cloud Service Windows SDK is deprecated and is no longer available for download on OTN.

Xamarin SDK (Android): Events Aren't Logged In Analytics

When a user starts a session and logs events with the Xamarin SDK for Android, the events aren’t logged in Analytics.

Xamarin SDK (iOS): Getting Objects from an Isolated Collection Returns Null

If you use storage.GetCollection() to retrieve an isolated collection with the Xamarin SDK for iOS, it returns null. The same code works with a shared collection.

GettingStartedSwift Sample App May Fail With an Error

In the GettingStartedSwift sample app, you must replace the whole string "MyBackend/1.0" with the name of your mobile backend. If you just replace "MyBackend" the app will fail when you run it.

Storage

Object from an existing storage collection may appear in a new collection

When you create a new collection you may see an object that you have previously uploaded to an existing collection.

Refresh the browser and the old object will disappear.

Upgrade

Upgrade Invalidates Current Auth Tokens

Starting in MCS 16.4.5, a mobile app can exchange the auth token obtained from a remote identity provider for an MCS-issued token that can be used to authorize MCS API calls. If the MCS instance is upgraded, any current MCS-issued tokens will become invalid.

Workaround: If you are still holding the original external token and it’s still valid, you can exchange it for a new MCS-issued token. Otherwise, you need to obtain a new token from the remote identity provider and exchange it for a new MCS-issued token after upgrade is complete.

User Management

Can’t Filter Roles Or Users Using Encoded Value Pairs

Some languages, such as Chinese, Japanese, and Korean, require an encoding scheme that represent a single character using a pair of encoded values, also known as a surrogate pair. If a role or user description contains an encoded value pair, filtering by the role or user will fail with an error message.

Workaround: Make sure the role and user description do not contain any encoded value pairs. You might not realize you added encoded value pairs if you copied content from an XML file.

Realms and Roles Over 50 Aren’t Returned

If an environment has more than 50 realms or roles, and you make a call to retrieve realms or roles, only the first 50 are returned.

The code used to search realms and roles reuses the SearchCriteria and default pagination, which limits the maximum number of results to 50, and doesn’t fetch the second page of results. The call might fail with an erroneous HTTP status 400 message.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.


Oracle Cloud Mobile Cloud Service Known Issues, Release 18.4.3

F11917-01

Copyright © 2015, 2018, Oracle and/or its affiliates. All rights reserved.

Primary Author: Jennifer Shipman

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.