saravanarajan / acra

Automatically exported from code.google.com/p/acra
0 stars 0 forks source link

404 NOT FOUND when trying to send a report #73

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Configure the ACRA as you normally do
2. Put any exception (int i=1/0;)
3. The ACRA will send a message:
Failed to send crash report for 1315315813000-approved.stacktrace
org.acra.sender.ReportSenderException: Error while sending report to Google 
Form.
Caused by: java.io.IOException: Host returned error code 404
at org.acra.util.HttpRequest.sendPost(HttpRequest.java:115)

What is the expected output? What do you see instead?
It should be a succes. But Goggle has changed the url way of accesing the forms
It should be:
https://spreadsheets.google.com/formResponse?key=0AmKvi8L_1kTZdGU1T1ltd0JWU2lXWW
lXbTFleW1kXXX&ifq
but it is sending:
https://spreadsheets.google.com/formResponse?formkey=0AmKvi8L_1kTZdGU1T1ltd0JWU2
lXWWlXbTFleW1kQVE&ifq

Please notice that they changed the formkey for the key param.

What version of the product are you using? On what operating system?
4.2.3

Please provide any additional information below.

Original issue reported on code.google.com by ierafael...@yahoo.com on 6 Sep 2011 at 1:38

GoogleCodeExporter commented 9 years ago
nvm i had a problem in my code, just found it out, please delete this XD

Original comment by ierafael...@yahoo.com on 6 Sep 2011 at 1:42

GoogleCodeExporter commented 9 years ago
Alright, I prefer that, I just emailed the discussion group for people to check 
their google docs forms as I did not see any change on mine.

Thanks for the update ;-)

Original comment by kevin.gaudin on 6 Sep 2011 at 1:52

GoogleCodeExporter commented 9 years ago
I got the same problem. What was root cause?

Original comment by s.borc...@gmail.com on 29 Sep 2011 at 3:44

GoogleCodeExporter commented 9 years ago
no in fact was a problem with the links, due to the fact that the documentation 
in ACRA is not up to date, i just copied/pasted the wrong link, you should 
check the link in the bottom when editing the Form, it should fix your problem.

Original comment by care.n...@gmail.com on 30 Sep 2011 at 4:12

GoogleCodeExporter commented 9 years ago
I'm seeing this problem too.  The URL is hardcoded in GoogleFormSender.class on 
line 47, which says

mFormUri = Uri.parse("https://spreadsheets.google.com/formResponse?formkey=" + 
formKey + "&ifq");

Notice the query parameter "formkey", it should just be "key".  You can verify 
this just by typing the URLs into your browser with a valid key for your google 
doc.

I'm not sure why others aren't experiencing this issue?!

Original comment by tylercol...@gmail.com on 4 Oct 2011 at 5:25

GoogleCodeExporter commented 9 years ago
tylercol, it works, but you got to put the correct url, check my comment above.

Original comment by ierafael...@yahoo.com on 4 Oct 2011 at 1:26

GoogleCodeExporter commented 9 years ago
Thank you ierafael...@yahoo.com.  I see now what you were talking about when 
you say "link in the bottom when editing the form".  It's different, it's like 
this:

https://docs.google.com/spreadsheet/viewform?formkey=XYZ

However, how do I use this?  I was thinking you meant for me to put is as the 
'formUri' parameter to the @ReportsCrasher directive.  But if I do that, it no 
longer uses the GoogleFormSender class but instead uses the HttpPostSender 
class, and throws an exception saying "HTTP error 405, method not allowed".

If you are recommending that I change the source code and set the mFormUri 
value myself in the GoogleFormSender class, that makes more sense.  But I'm 
trying to avoid creating my own source, and of course if it's truly broken, 
others will appreciate a fix from the developer, right?  I still don't 
understand why this isn't a problem for everyone?

Original comment by tylercol...@gmail.com on 4 Oct 2011 at 8:05

GoogleCodeExporter commented 9 years ago
I'm not pretty sure what your problem could be, because the URI is not the 
simplest way to make this, and there may be X step that gives you the problem, 
so i'm going to put the simplest case, so if the question is about the use of 
the formkey.

Anyway, (if you dont use customresport remove the second one) i was testing the 
most simple case that is sending the formkey, like this:

@ReportsCrashes(formKey = 
"dGVxLWM2RDVlRTZUcHhLWmc2ZUkwXXXXXX",customReportContent = {
        ANDROID_VERSION,
        APP_VERSION_CODE,
        APP_VERSION_NAME,
        AVAILABLE_MEM_SIZE,
        DEVICE_FEATURES,
        DISPLAY,
        PACKAGE_NAME,
        PHONE_MODEL,
        PRODUCT,
        REPORT_ID,
        STACK_TRACE,
        TOTAL_MEM_SIZE})

This goes into the Application file, and in the onCreate should be something 
like this:

    @Override
    public void onCreate() {
        // TODO Auto-generated method stub
        ACRA.init(this);
        super.onCreate();
    }

Let me know if this helps.

Original comment by ierafael...@yahoo.com on 4 Oct 2011 at 8:16

GoogleCodeExporter commented 9 years ago
Thank you again ierafael...@yahoo.com.  The only problem was that I was 
specifying the wrong form key.  I was using one that looked like 
"0AlWiekApBO5kdFlVVVdwaVNyb3lYYW..." but the one I should have been using looks 
like "dGVxLWM2RDVlRTZUcHhLWmc2ZUkwXXXXXX".  That was all that was needed.  So 
in fact the code line I mentioned before, line 47 of GoogleFormSender where it 
sets the mFormUri is correct.

Original comment by tylercol...@gmail.com on 4 Oct 2011 at 8:29

GoogleCodeExporter commented 9 years ago
Ok i'm glad that helped you out, happy coding :D

Original comment by ierafael...@yahoo.com on 4 Oct 2011 at 9:06

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
I got problem in Acra, how to resolve from this error?

Sending request to 
https://docs.google.com/spreadsheet/formResponse?formkey=1v-GqVh2CIPElF91ZvTO4fP
uWJn6aP1tTXXk1iIDUOqc&ifq

Failed to send crash report for 1359971473000-approved.stacktrace
org.acra.sender.ReportSenderException: Error while sending report to Google 
Form.
org.acra.sender.GoogleFormSender.send(GoogleFormSender.java:91)
org.acra.SendWorker.sendCrashReport(SendWorker.java:178)
org.acra.SendWorker.checkAndSendReports(SendWorker.java:141)
org.acra.SendWorker.run(SendWorker.java:77)
Caused by: java.io.IOException: Host returned error code 400
org.acra.util.HttpRequest.send(HttpRequest.java:139)
org.acra.sender.GoogleFormSender.send(GoogleFormSender.java:88)

Original comment by karthick...@gmail.com on 4 Feb 2013 at 1:29

GoogleCodeExporter commented 9 years ago
looks like a 404 to me

Original comment by ierafael...@yahoo.com on 4 Feb 2013 at 3:54

GoogleCodeExporter commented 9 years ago
Hi did anybody find a solution to this issue , i am using the acrareporter in 
app engine as backend and facing this problem for custom report.However when 
used with mail intent,the acra can send custom report.

Original comment by testwork...@gmail.com on 17 Apr 2013 at 12:56