Skip to main content

Posts

Showing posts from January, 2013

Salesforce System Error: 1148877694-2467 (681892207) (681892207) when using JSON generator class in apex

Today i encountered a very interesting error when i was using JSON generator .The error said FATAL_ERROR System.UnexpectedException: Salesforce System Error: 1148877694-2467 (681892207) (681892207).

Looking into the error my first thing was to run through my code again and again .I referred the following documents on JSON generator class 
http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_methods_system_jsongenerator.htm
http://wiki.developerforce.com/page/Getting_Started_with_Apex_JSON
The code in my eyes look pretty simple and here is the exact snippet that was throwing the exception
JSONGenerator gen = JSON.createGenerator(true); gen.writeStartObject(); gen.writeNumberField('abc', 1.21); gen.writeStringField('def', 'xyz'); String pretty = gen.getAsString();//This statement use at the end only .It ends the JSON System.debug('STRING JSON'+pretty); gen.writeStartObject(); gen.writeStringField('def', 'xyz'); gen.writeEndObje…

JSON.serialize in APEX after launch of API 27.0(Spring 13)

These days i spend lot of time on Stackexchange  for salesforce.This has been amazing site for salesforce queries related to admin or development .

Very interesting changes after API 27.0 was launched in JSON.serialize system method of salesforce .This method is used to convert the apex objects (primitive or User defined ) into the JSON string format.Quite helpful in integration if structure of JSON is pretty simple then forming apex class and using JSON.serialize helps to get the JSON body for making the POST call to the external system.

There are some changes on how this behaves after launch of the Spring 13 API.Here is the reference to the stackexchange links from where i gathered this information and thought of blogging so that it may help others.

http://salesforce.stackexchange.com/questions/6192/json-serialize-method-not-returning-null-fields

http://salesforce.stackexchange.com/questions/7493/json-serialize-is-not-working-in-winter-13

So i thought of experimenting on this with th…

TimeZone Methods of Spring 13(API 27.0 ) release of salesforce

The timezone handling in apex was not so elegant and as a developer we had difficult times converting the GMT time zone to the locale time zone in apex language
The below code snippet demonstrates the earlier technique i had to use to convert the GMT time into the local time of the user
String timeZone = [select timeZoneSidKey from User where id=:userinfo.getUserId()].timeZoneSidKey; System.debug('TIME ZONE '+timeZone); Datetime dateGMT=Datetime.newInstanceGmt(2013,01,12,01,12,0);//Form the GMT time and date in sfdc String formatteddate=dateGMT.format('yyyy-MM-dd HH:mm:ss',timeZone);//format the GMT into the Local according to his TimeZone Key System.debug('LOCAL TIME ....'+Datetime.valueOfGmt(formatteddate)); Debug Log
02:55:43.119 (119313000)|USER_DEBUG|[2]|DEBUG|TIME ZONE America/Los_Angeles 02:55:43.119 (119662000)|VARIABLE_ASSIGNMENT|[3]|dateGMT|"2013-01-12T01:12:00.000Z" 02:55:43.120 (120138000)|USER_DEBUG|[5]|DEBUG|LOCAL TIME ....2013-01-11…