{ "id": "84208", "key": "TIMOB-6848", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "7", "description": "", "name": "Invalid" }, "resolutiondate": "2012-01-13T15:51:52.000+0000", "created": "2011-12-22T12:03:10.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "regression" ], "versions": [ { "id": "12570", "name": "Release 1.7.5", "archived": true, "released": true, "releaseDate": "2011-11-02" }, { "id": "12580", "description": "Dual Runtime 1.8.0", "name": "Release 1.8.0.1", "archived": true, "released": true, "releaseDate": "2011-12-22" }, { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" } ], "issuelinks": [], "assignee": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2012-09-04T15:18:06.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "h3.Problem\r\nGlobal namespace getting lost while separated in a bunch of files stored in different folders.\r\nIn simulator the result differs from the one from device.\r\n\r\nh3.Reproducible Steps\r\n1. Run the example project (attached inside JIRA)\r\n2. Press \"Click button\"\r\n\r\nh3.Reproducible Code\r\nFile Structure\r\n{code}\r\nResources\r\n ¡-sub1\r\n ¡-test.js\r\n ¡-sub2\r\n ¡-testTwo.js\r\n ¡-app.js\r\n{code}\r\n\r\ntest.js\r\n{code}\r\n(function(){\r\n namespace.test = function(){\r\n var winTest = Titanium.UI.createWindow({\r\n title: 'Test',\r\n backgroundColor: '#fff',\r\n exitOnClose: true,\r\n fullscreen: false // making this a heavy weight window\r\n });\r\n \r\n var btnButton = Ti.UI.createButton({\r\n title: 'Click button',\r\n width: 150,\r\n height: 100,\r\n top: 100\r\n });\r\n \r\n btnButton.addEventListener('click', function(){\r\n Ti.include('sub2/testTwo.js');\r\n var winToOpen = namespace.testTwo();\r\n winToOpen.open();\r\n });\r\n winTest.add(btnButton);\r\n \r\n namespace.printout();\r\n \r\n return winTest;\r\n };\r\n})();\r\n\r\n\r\n{code}\r\n\r\ntestTwo.js\r\n\r\n{code}\r\n(function(){\r\n namespace.testTwo = function(){\r\n var winTestTwo = Titanium.UI.createWindow({\r\n title: 'Test2',\r\n backgroundColor: '#fff'\r\n });\r\n \r\n var btnBack = Ti.UI.createButton({\r\n title: 'back',\r\n height: 100,\r\n width: 100,\r\n top: 50\r\n });\r\n \r\n btnBack.addEventListener('click', function(){\r\n winTestTwo.close();\r\n });\r\n \r\n winTestTwo.add(btnBack);\r\n return winTestTwo;\r\n };\r\n})();\r\n{code}\r\n\r\napp.js\r\n\r\n{code}\r\n//app.js \r\nvar namespace = {};\r\nTi.include('sub1/test.js');\r\n\r\nnamespace.printout = function(){\r\n Ti.API.info('namespace.printout');\r\n};\r\n \r\n\r\nvar win = namespace.test();\r\n\r\nwin.open();\r\n\r\n\r\n{code}\r\n\r\nh3.Logs while testing on Simulator (Android 2.2 & 2.3.3) with SDK 1.7.5\r\n{code}\r\n12-22 13:33:03.388: D/KrollContext(307): (kroll$2: file:///android_asset/Resources/app.js) [17896,19589] Running evaluated script: file:///android_asset/Resources/sub2/testTwo.js\r\n12-22 13:33:03.606: E/KrollContext(307): (kroll$2: file:///android_asset/Resources/app.js) [173,19762] ECMA Error evaluating source: ReferenceError: \"namespace\" is not defined. (file:///android_asset/Resources/sub2/testTwo.js#2)\r\n12-22 13:33:03.606: E/KrollContext(307): org.mozilla.javascript.EcmaError: ReferenceError: \"namespace\" is not defined. (file:///android_asset/Resources/sub2/testTwo.js#2)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3784)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3762)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ScriptRuntime.notFoundError(ScriptRuntime.java:3847)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ScriptRuntime.nameOrFunction(ScriptRuntime.java:1846)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ScriptRuntime.name(ScriptRuntime.java:1785)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1780)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat script(file:///android_asset/Resources/sub2/testTwo.js:2)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat script(file:///android_asset/Resources/sub2/testTwo.js:1)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.Interpreter.interpret(Interpreter.java:854)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:178)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.Context.evaluateReader(Context.java:1142)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollContext$DefaultEvaluator.evaluateFile(KrollContext.java:106)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollContext.evaluateScript(KrollContext.java:353)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollContext.handleEvalFile(KrollContext.java:382)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollContext.evalFile(KrollContext.java:278)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollBridge.evalFile(KrollBridge.java:130)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.TiContext.evalFile(TiContext.java:189)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.TiContext.evalFile(TiContext.java:209)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat ti.modules.titanium.TitaniumModule.include(TitaniumModule.java:122)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat ti.modules.titanium.TitaniumModuleBindingGen$14.invoke(TitaniumModuleBindingGen.java:571)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.kroll.KrollMethod.call(KrollMethod.java:51)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1701)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat script(file:///android_asset/Resources/sub1/test.js:18)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.Interpreter.interpret(Interpreter.java:854)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:164)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:426)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3177)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:162)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollCallback.callSync(KrollCallback.java:139)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollCallback$1.run(KrollCallback.java:164)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat android.os.Handler.handleCallback(Handler.java:587)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat android.os.Handler.dispatchMessage(Handler.java:92)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat android.os.Looper.loop(Looper.java:123)\r\n12-22 13:33:03.606: E/KrollContext(307): \tat org.appcelerator.titanium.kroll.KrollHandlerThread.run(KrollHandlerThread.java:86)\r\n12-22 13:33:03.606: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [45,19807] ----- Titanium Javascript Runtime Error -----\r\n12-22 13:33:03.606: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [5,19812] - In file:///android_asset/Resources/sub2/testTwo.js:2,0\r\n12-22 13:33:03.606: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [2,19814] - Message: ReferenceError: \"namespace\" is not defined. (file:///android_asset/Resources/sub2/testTwo.js#2)\r\n12-22 13:33:03.617: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [4,19818] - Source: null\r\n12-22 13:33:03.717: E/KrollCallback(307): (kroll$2: file:///android_asset/Resources/app.js) [91,19909] ECMA Error evaluating source, invocation: [callMethod UI.Button.UI.Button:event:click null], message: TypeError: Cannot find function testTwo in object [object Object]. (file:///android_asset/Resources/sub1/test.js#19)\r\n12-22 13:33:03.717: E/KrollCallback(307): org.mozilla.javascript.EcmaError: TypeError: Cannot find function testTwo in object [object Object]. (file:///android_asset/Resources/sub1/test.js#19)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3784)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3762)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3790)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:3809)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:3880)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2359)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2326)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1514)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat script(file:///android_asset/Resources/sub1/test.js:19)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.Interpreter.interpret(Interpreter.java:854)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:164)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:426)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3177)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:162)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.appcelerator.titanium.kroll.KrollCallback.callSync(KrollCallback.java:139)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.appcelerator.titanium.kroll.KrollCallback$1.run(KrollCallback.java:164)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat android.os.Handler.handleCallback(Handler.java:587)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat android.os.Handler.dispatchMessage(Handler.java:92)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat android.os.Looper.loop(Looper.java:123)\r\n12-22 13:33:03.717: E/KrollCallback(307): \tat org.appcelerator.titanium.kroll.KrollHandlerThread.run(KrollHandlerThread.java:86)\r\n12-22 13:33:03.717: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [7,19916] ----- Titanium Javascript Runtime Error -----\r\n12-22 13:33:03.717: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [5,19921] - In file:///android_asset/Resources/sub1/test.js:19,0\r\n12-22 13:33:03.717: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [2,19923] - Message: TypeError: Cannot find function testTwo in object [object Object]. (file:///android_asset/Resources/sub1/test.js#19)\r\n12-22 13:33:03.727: E/TiJSError(307): (kroll$2: file:///android_asset/Resources/app.js) [4,19927] - Source: null\r\n12-22 13:33:03.937: I/ARMAssembler(61): generated scanline__00000077:03515104_00000000_00000000 [ 33 ipp] (47 ins) at [0x2f4548:0x2f4604] in 5194000 ns\r\n\r\n{code}\r\n\r\nh3.Logs while testing on Simulator with Android 2.3.3 - SDK 1.8.0.1.RC3 (V8 & Rhino) & SDK 1.9.0.v20111219173133 (V8 & Rhino)\r\n{code}\r\n12-22 13:47:37.056: D/TiAssetHelper(362): Fetching \"sub1/sub2/testTwo.js\" with Fastdev...\r\n12-22 13:47:37.205: E/TiJSError(362): (main) [406964,436222] ----- Titanium Javascript Runtime Error -----\r\n12-22 13:47:37.205: E/TiJSError(362): (main) [0,436222] - In sub1/sub2/testTwo.js:1,17\r\n12-22 13:47:37.205: E/TiJSError(362): (main) [0,436222] - Message: Uncaught ReferenceError: NOT_FOUND is not defined\r\n12-22 13:47:37.205: E/TiJSError(362): (main) [1,436223] - Source: with(sandbox) { NOT_FOUND\r\n12-22 13:47:37.676: E/V8Exception(362): Exception occurred at sub1/sub2/testTwo.js:1: Uncaught ReferenceError: NOT_FOUND is not defined\r\n{code}\r\n\r\nh3.Logs while testing on device: Samsung Galaxy Fit with Android 2.2.1 with SDK 1.8.0.1.RC3 (V8)\r\n{code}\r\n12-22 14:10:57.879: V/AudioFlinger(94): MixerThread 0xbb38 TID 151 waking up\r\n12-22 14:10:57.879: V/AudioPolicyManager(94): releaseOutput() 1\r\n12-22 14:10:57.879: V/AudioFlinger(94): remove track (4101) and delete from mixer\r\n12-22 14:10:57.879: V/AudioFlinger(94): PlaybackThread::Track destructor\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): Error while reading asset \"Resources/sub1/sub2/testTwo.js\":\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): java.io.FileNotFoundException: Resources/sub1/sub2/testTwo.js\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat android.content.res.AssetManager.openAsset(Native Method)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat android.content.res.AssetManager.open(AssetManager.java:313)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat android.content.res.AssetManager.open(AssetManager.java:287)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.kroll.util.KrollAssetHelper.readAsset(KrollAssetHelper.java:55)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.kroll.runtime.v8.V8Object.nativeFireEvent(Native Method)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.kroll.runtime.v8.V8Object.fireEvent(V8Object.java:47)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.kroll.KrollProxy.doFireEvent(KrollProxy.java:441)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.kroll.KrollProxy.handleMessage(KrollProxy.java:602)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.titanium.proxy.TiViewProxy.handleMessage(TiViewProxy.java:340)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat android.os.Handler.dispatchMessage(Handler.java:95)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat android.os.Looper.loop(Looper.java:123)\r\n12-22 14:10:57.899: E/TiAssetHelper(27831): \tat org.appcelerator.kroll.KrollRuntime$KrollRuntimeThread.run(KrollRuntime.java:102)\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): open driver\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): get config\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): set config\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): buffer_size: 4800\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): buffer_count: 2\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): channel_count: 2\r\n12-22 14:10:57.909: V/AudioHardwareMSM72XX(94): sample_rate: 44100\r\n12-22 14:10:57.979: E/TiJSError(27831): (main) [23362,23362] ----- Titanium Javascript Runtime Error -----\r\n12-22 14:10:57.979: E/TiJSError(27831): (main) [0,23362] - In sub1/test.js:19,39\r\n12-22 14:10:57.979: E/TiJSError(27831): (main) [0,23362] - Message: Uncaught TypeError: Object # has no method 'testTwo'\r\n12-22 14:10:57.979: E/TiJSError(27831): (main) [0,23362] - Source: var winToOpen = namespace.testTwo();\r\n12-22 14:10:58.009: I/PowerManagerService(175): Light Animator Finished curIntValue=140\r\n12-22 14:10:58.019: E/V8Exception(27831): Exception occurred at sub1/test.js:19: Uncaught TypeError: Object # has no method 'testTwo'\r\n12-22 14:10:58.079: W/AudioFlinger(94): write blocked for 167 msecs, 245 delayed writes, thread 0xbb38\r\n12-22 14:10:58.339: V/AudioFlinger(94): getNextBuffer() no more data for track 4100 on thread 0xbb38\r\n\r\n{code}", "attachment": [ { "id": "24836", "filename": "device.png", "author": { "name": "kpomaski", "key": "kpomaski", "displayName": "Karol Pomaski", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-12-22T12:16:59.000+0000", "size": 79157, "mimeType": "image/png" }, { "id": "24835", "filename": "namespace_sample.zip", "author": { "name": "kpomaski", "key": "kpomaski", "displayName": "Karol Pomaski", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-12-22T12:03:10.000+0000", "size": 2345938, "mimeType": "application/zip" } ], "flagged": false, "summary": "Android: lost global namespace ", "creator": { "name": "kpomaski", "key": "kpomaski", "displayName": "Karol Pomaski", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "kpomaski", "key": "kpomaski", "displayName": "Karol Pomaski", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Simulator with Android 2.2 & 2.2.3, Samsung Galaxy Fit with Android 2.2.1, SDK 1.7.5, SDK 1.8.0.1.RC3 (R8 & Rhino ), SDK 1.9.0.v20111219173133 (V8 & Rhino)", "comment": { "comments": [ { "id": "178464", "author": { "name": "floschnell", "key": "floschnell", "displayName": "Florian Schnell", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I am having exactly the same issue.\r\nOur app worked fine until the last release of Titanium Studio and SDK 1.8.0.1.\r\nTitanium Studio version: 1.0.7.201112281340", "updateAuthor": { "name": "floschnell", "key": "floschnell", "displayName": "Florian Schnell", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-08T05:43:05.000+0000", "updated": "2012-01-08T05:43:05.000+0000" }, { "id": "178781", "author": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "body": "In android, we can use either relative or absolute path for files. Therefore, in test.js, it should be \r\n{code}\r\nTi.include('../sub2/testTwo.js'); //use relative path\r\n{code}\r\nor\r\n{code}\r\nTi.include('/sub2/testTwo.js'); //use absolute path\r\n{code}\r\nThen the code will work fine.", "updateAuthor": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-10T15:48:27.000+0000", "updated": "2012-01-10T16:54:24.000+0000" }, { "id": "217173", "author": { "name": "itrjwyss", "key": "itrjwyss", "displayName": "Maria Mercedes wyss Alvarez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This bug not is closed, no way to persist data for android, Ti.include() allow use the vars define in the js but not persist, when you exit of the file use this js.\r\n\r\nIn iPhone only need define the global var in the app.js and you can access this in all application. \r\n\r\nWhy this function not working in android.", "updateAuthor": { "name": "itrjwyss", "key": "itrjwyss", "displayName": "Maria Mercedes wyss Alvarez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-31T09:52:52.000+0000", "updated": "2012-08-31T09:52:52.000+0000" }, { "id": "217520", "author": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Maria Mercedes wyss Alvarez, can you provide a test case to show the issue you described? Thanks.", "updateAuthor": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-04T15:18:06.000+0000", "updated": "2012-09-04T15:18:06.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }