IMPORTANT, please fill the questions
We assume you are using Bitnami to deploy your application.
Server version 3.1.3 Parse server
**Please choose how you got the application: AWS AMI
Have you installed any plugin or modified any configuration file?: No
Describe here your question/suggestion/issue (expected and actual results): I am completely at a loss. I am very new to Parse. I am able to work successfully with other Parse installations. I chose Bitnami because it was introduced in a basic intro course to Android by Rob Percival. His starter code can write successfully to my instance. However, when I attempt to do the same in my own code, I get the i/o failure. The same code works if I point it at a hosted parse service. I must be missing something but I have spent weeks on this! Please help. ERROR received: com.parse.ParseRequest$ParseRequestException: i/o failure
Steps to reproduce the issue (if relevant): 1. Install AWS bitnami server (T3 Small) 2. Can connect to dashboard 3. Can use instructor's code to write a new object. 3. Can use my own code to write to another hosted service. 4. When I try to do the same to the Bitnami instance that I installed I get the error.
-
Copy the apache log (if relevant):
PASTE HERE
Manifest has following permissions:
Code is attempting to write a basic object:
Parse.enableLocalDatastore(this);
Parse.initialize(new Parse.Configuration.Builder(this)
.applicationId("77da6261f8953dc22d8bc9723483645f9f0707f3")
.clientKey("55c2eedf871efe832cdfca5a616984ded3fd6a4d")
.server("http://35.183.134.148:22/parse/")
.build()
);
ParseUser.enableAutomaticUser();
ParseACL defaultACL = new ParseACL();
defaultACL.setPublicReadAccess(true);
defaultACL.setPublicWriteAccess(true);
ParseACL.setDefaultACL(defaultACL, true);
String myCustomKey1Value = "foo";
Integer myCustomKey2Value = 999;
ParseObject myNewObject = new ParseObject("MyCustomClassName");
myNewObject.put("myCustomKey1Name", myCustomKey1Value);
myNewObject.put("myCustomKey2Name", myCustomKey2Value);
// Saves the new object.
// Notice that the SaveCallback is totally optional!
myNewObject.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
if (e == null) {
Toast.makeText(MainActivity.this, "SUCCESS", Toast.LENGTH_SHORT).show();
Log.d("PARSE", "Success");
} else {
Toast.makeText(MainActivity.this, "ERROR: " + e.toString(), Toast.LENGTH_SHORT).show();
Log.d("PARSE", "Failed: " + e.toString());
}
// Here you can handle errors, if thrown. Otherwise, "e" should be null
}