[TIME-174] Timesheet Gadget does not find REST ressource

Issue #174 resolved
Andriy Zhdanov created an issue

Hi, after upgrading from 4.2.1 to 4.3.4 (including update the timesheet plugin to 2.1) I get the following error: The resource http://zzctsjiratest/rest/timesheet-gadget/1.0/timesheet.json, cannot be found.

Any hints or tricks where I could make changes to get rid of this error?

By htietgens/Henning Tietgens on Mon, 5 Sep 2011 09:40:37 -0700

Comments (6)

  1. Andriy Zhdanov reporter

    If I click on the link in the error message I get a valid text page with the content of the gadget.

    By htietgens on Mon, 5 Sep 2011 09:41:33 -0700

  2. Andriy Zhdanov reporter

    The complete answer from the server (found through firebug) is

    throw 1; < don't be evil' >{"http://zzctsjiratest/rest/timesheet-gadget/1.0/timesheet.json?targetUser=&numOfWeeks=1&reportingDay=2":{"headers":{},"body":"<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>404 Not Found<\/title>\n<\/head><body>\n<h1>Not Found<\/h1>\n<p>The requested URL /rest/timesheet-gadget/1.0/timesheet.json was not found on this server.<\/p>\n<hr>\n<address>Apache/2.2.16 (Ubuntu) Server at zzctsjiratest Port 80<\/address>\n<\/body><\/html>\n","rc":404}}

    Please help.

    By htietgens on Tue, 6 Sep 2011 07:08:59 -0700

  3. Andriy Zhdanov reporter

    I'm not evil...

    This is the request:

    http://zzctsjiratest/plugins/servlet/gadgets/makeRequest?refresh=3600&url=http%3A%2F%2Fzzctsjiratest%2Frest%2Ftimesheet-gadget%2F1.0%2Ftimesheet.json%3FtargetUser%3D%26numOfWeeks%3D1%26reportingDay%3D2&httpMethod=GET&headers=&postData=&authz=&st=&contentType=JSON&numEntries=3&getSummaries=false&signOwner=true&signViewer=true&gadget=http%3A%2F%2Fzzctsjiratest%2Frest%2Fgadgets%2F1.0%2Fg%2Fjira-timesheet-plugin%3Atimesheet-gadget%2Fgadget.xml&container=atlassian&bypassSpecCache=

    By htietgens on Tue, 6 Sep 2011 07:11:37 -0700

  4. Andriy Zhdanov reporter

    I get it working. The problem was a missing netfilter to route outgoing traffic from port 80 to 8080 (and 443 to 8443 for SSL). I add the netfilter and now it works perfectly:

    sudo iptables -t nat -A OUTPUT -p tcp -d 10.192.4.5 --dport 80 -j DNAT --to 10.192.4.5:8080 sudo iptables -t nat -A OUTPUT -p tcp -d 10.192.4.5 --dport 443 -j DNAT --to 10.192.4.5:8443

    10.192.4.5 is the IP of the JIRA server.

    By htietgens on Fri, 9 Sep 2011 05:31:18 -0700

  5. Andriy Zhdanov reporter

    I had a similar problem to Henning where I had to create an output rule for localhost (127.0.1.1), since the base URL was resolving to localhost on the box itself. I had already redirected 443 to 8443 using a PREROUTING rule for any external connections, but the timesheet gadget REST apparently is made from within the app to itself. See this blog post for more info:

    http://jeremyrnelson.tumblr.com/post/11571758506/using-iptables-to-redirect-port-443-to-8443

    By jeremyrnelson on Mon, 17 Oct 2011 08:07:49 -0700

  6. Log in to comment